人生事件与时间轴
经历与档案 技术代码 timeline
用精确或模糊时间组织人生事件、地点、章节和历史空白。
模块职责
- 用精确或模糊时间组织人生事件、地点、章节和历史空白。
- 维护“人生事件与时间轴”内部对象的生命周期与隐私边界。
- 通过稳定公共接口与其他模块协作,禁止跨模块直接修改数据表。
明确不负责
- 不直接处理其他模块的领域规则。
- 不把用户原文静默替换为AI生成内容。
- 不在浏览器或移动端复制服务端权限判断。
结构化字段
| 字段 | 中文名 | 编辑类型 | 必填 | 敏感性 | 业务说明 |
|---|---|---|---|---|---|
eventType | 事件类型 | select | 是 | 普通 | 用于记录“事件类型”的业务值。 |
eventTitle | 事件标题 | text | 是 | 普通 | 用于记录“事件标题”的业务值。 |
eventDescription | 事件描述 | textarea | 是 | 敏感 | 用于记录“事件描述”的业务值。 |
startAt | 开始时间 | datetime | 否 | 普通 | 用于记录“开始时间”的业务值。 |
endAt | 结束时间 | datetime | 否 | 普通 | 用于记录“结束时间”的业务值。 |
timePrecision | 时间精度 | select | 是 | 普通 | 用于记录“时间精度”的业务值。 |
timeText | 时间原文 | text | 否 | 普通 | 用于记录“时间原文”的业务值。 |
location | 地点或区域 | text | 否 | 普通 | 用于记录“地点或区域”的业务值。 |
八项可执行功能
| 编号 | 功能 | 规划版本 | 完成状态 | 独立外部边界 | 执行策略 |
|---|---|---|---|---|---|
TIM-001 | 人生事件记录 | V1.0 | 部分实现:领域闭环尚未完成,功能入口失败关闭 | 无独立外部边界注记 | record |
TIM-002 | 模糊时间表达 | V1.0 | 部分实现:领域闭环尚未完成,功能入口失败关闭 | 无独立外部边界注记 | record |
TIM-003 | 事件先后关系 | V1.0 | 部分实现:领域闭环尚未完成,功能入口失败关闭 | 无独立外部边界注记 | record |
TIM-004 | 地点关联 | V1.0 | 部分实现:领域闭环尚未完成,功能入口失败关闭 | 无独立外部边界注记 | record |
TIM-005 | 人生时间轴视图 | V2.0 | 部分实现:领域闭环尚未完成,功能入口失败关闭 | 无独立外部边界注记 | record |
TIM-006 | 人生空白补全 | V2.0 | 部分实现:领域闭环尚未完成,功能入口失败关闭 | 无独立外部边界注记 | record |
TIM-007 | 争议事件处理 | V2.0 | 部分实现:领域闭环尚未完成,功能入口失败关闭 | 无独立外部边界注记 | record |
TIM-008 | 公开时间轴 | V3.0 | 部分实现:领域闭环尚未完成,功能入口失败关闭 | 无独立外部边界注记 | publish |
本模块状态:partial 8。状态由专用规则、聚合持久化、PC/移动行为和自动测试共同决定;外部 blocker 与历史 Provider 记录只作独立注记,不提升完成度。
HTTP 与数据生命周期
该模块使用 Record Kernel /api/v2/records/timeline 统一提供创建、列表、详情、修改、归档、恢复、修订历史、执行历史和功能入口;POST/GET /api/v2/records/:moduleCode、GET/PATCH /api/v2/records/:moduleCode/:recordId、POST /archive、POST /restore、GET /revisions、GET /executions、POST /features/:featureId;共 9 条获批路由,无 DELETE。Identity typed 快照的通用写入失败关闭,typed 读取也必须使用 v2 专用接口;非 typed legacy core 仅保留只读兼容。 v2 不提供永久销毁,旧 v1 兼容链不从新页面调用。创建和更新先经 SystemRecordPolicyPort,由内核外的 SystemRecordPolicyRegistry 依次执行专用规范化、跨字段规则和 Catalog 字段规则;带键 cache miss 先取得事务内幂等预占,再执行无副作用策略;策略失败会让预占与数据库、审计副作用共同回滚,成功 cache hit 则直接精确恢复首次 revision。功能地址会先校验目录归属;partial 功能统一返回 HTTP 501 FEATURE_NOT_IMPLEMENTED,且不新增修订、执行、审计或幂等记录。迁移维护 active 时普通写返回 HTTP 503 SYSTEM_MAINTENANCE,读接口继续可用。MEM-001 至 MEM-008 的通用功能地址均返回对应专用地址错误,必须改用各自的 /api/v2/memory/... 专用入口。
参数化代码入口
apps/api/src/kernel/recordsapps/api/src/record-policiesapps/api/src/feature-registryapps/web/app/pages/modules/[moduleCode]apps/web/app/composables/useRecordKernel.tsapps/mobile/src/pages/module/index.vueapps/mobile/src/pages/recorddocs-site/modules/timeline.htmlMobile 使用 /pages/module/index?module=... 与 /pages/record/* query 容器;MEM-001 使用 /pages/memory/text/create,MEM-002 至 MEM-008 使用 /pages/memory/text/detail 专用治理详情,TAX-001 至 TAX-008 共用 /pages/taxonomy/tags/index 的标签、分类、合并、编号、标题、AI 候选和审计专用交互。 旧 24×5 包装页和 descriptor 副本不属于当前架构。
设计原因
模块目录提供稳定业务语义和白名单;RecordAggregate 只负责公共记录生命周期,不解释 payload。SystemRecordPolicyRegistry 在内核外精确覆盖 Catalog 24 个模块,保留 Routine、Decision、Memory、Interview 的专用规范化,并拒绝未登记模块。Batch 003 固定规范大写 ULID、标题 200/摘要 1000 字符合同、payload 顶层覆盖与 payloadRemove 删除语义、受控 JSON 资源上限、递归敏感字段治理、幂等最小引用和精确 revision/execution 回放。0009 只追加 summary CHECK 与 owner/module[/status] + id DESC 匹配索引。 该等价层与公共加固仅保持普通记录合同,不代表领域功能完成;领域完成仍必须由专用规则、类型化持久化、PC/Mobile 行为和当前自动测试共同证明。