Files
Jyotisha/docs/tasks/PROGRESS-birth-time-journey-page-path-20260918.md
T
jesse-ux 742ffbc6b6
Independent Staging Quality Gate / validate (push) Successful in 9m56s
Independent Staging Quality Gate / publish (push) Successful in 12m42s
docs(bugs): 回填 BUG-940 修复版本 0378d9e0
2026-09-18 10:39:43 +08:00

3.0 KiB
Raw Blame History

PROGRESS · 出生时间旅程合同跟着外壳搬家(2026-09-18)

工作树:.worktrees/birth-time-journey-page-path-20260918
分支:codex/birth-time-journey-page-path-20260918
基线:origin/staging @ 5a1dcbd2
合入提交:39a0d7a9BUG-939)、0378d9e0BUG-940

任务状态

任务 状态 说明
路径搬家 BUG-939 完成 _home_surface 必读 (app)/page.tsxhooks 仍可选。合入 39a0d7a9,门禁 run 2764 已过 Python
路径锁 完成 PAGE.parts[-2:] == ("(app)", "page.tsx");旧路径不得存在
五条前端合同 BUG-940 完成 run 2764 暴露:校正守卫后源码正则未搬家
记录 完成 BUG-939 / BUG-940(均复发自 BUG-933

未改 page.tsx、产品行为、Skill、workflow。

断言三栏

位置 原值 新值 原因
_home_surface 首页文件 frontend/src/app/page.tsx,缺失则 exists() 跳过 必读 frontend/src/app/(app)/page.tsx e4e73f56 已搬家;静默跳过把失败伪装成「找不到 <BirthTimeRectification
新增 test_home_surface_requires_the_app_route_group_page 锁定 (app)/page.tsx 存在、旧路径不存在 防复发:下一次再搬文件会 FileNotFound,而不是子串断言
chat-composer-queue inputDisabled sessionMessagesLoading || rectificationSurfaceOpen || (!profileComplete && …) 中间加 activeRectificationSession BUG-924/935 校正占位必须禁用普通输入框
chat-session-url 删/归档写 URL 函数体内 writeSessionUrl(fallbackId || null, "replace") activateFallbackSession,由它 writeSessionUrl(null|fallbackId, "replace") 回退优先非校正,落到校正走 selectSession
consultation-entrypoint rectificationSurfaceOpen activeRectificationSession && activeSession.id === … Boolean(activeRectificationSession && activeSession && activeSession.id === …) 无活跃会话时不能读 .id
consultation-entrypoint 校正类型 activeSession?.sessionType === "birth_time_rectification" composerLocksAsRectification + 守卫里的 session?.sessionType 类型判断收到守卫
consultation-recovery 清 pending if (!storedPending && sessionStorage.getItem(…)) { removeItem } dropRectificationStoredPendingif (!storedPending) removeItem 校正 pending 不得进普通咨询恢复

测试

结果
pytest tests/test_birth_time_journey_contract.py tests/test_session_management_entrypoints.py tests/test_supabase_user_data_contract.py tests/test_daily_and_rectification_entrypoints.py 25 passed
tsx --test 上述四份前端合同 58 passed / 0 failed(含门禁原先 5 红)
全量 npm test / tsc / lint / next build 本机 worktree 无独立 node_modules,以门禁为准
门禁 run 2764 Python 已过;npm test 5 红即本轮这五条

环境缺口

无登录态、无 Chrome、无 Docker。本单只修合同路径,不需要浏览器验收。