weichen
738bbe1579
feat(agent): add pi-native backend and drop cursor-cli
...
Keep the container pi-agent backend as the default while the in-process runtime is available beside it, and remove the unused cursor bridge.
2026-09-21 14:52:53 +00:00
weichen
022b914c66
feat(agentx): jail workspace tools and audit hooks
...
Keep read, write, edit, list, and grep inside the workspace root, including symlink targets, and let hooks block or rewrite a call.
2026-09-21 14:49:13 +00:00
weichen and Cursor
b49b95dc7a
feat(agentx): add OpenAI-compatible streaming LLM client
...
Parse MiniMax-style SSE deltas, including incremental tool calls, and encode transport failures on the event stream instead of panicking.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 14:43:32 +00:00
weichen and Cursor
6dc5f1cfa6
docs(ops): claim go-agentx runtime worktree
...
Register the pi-native coexistence task against the explicit dev baseline so later commits stay on the feature branch.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 14:40:13 +00:00
weichen
a5ea469ca4
merge: feature/force-material-chunk-index-2026-09-21 (confirm 535 and chunk index docs)
2026-09-21 13:57:10 +00:00
weichen and Cursor
06b9278996
docs(test): 记录候选 535 确认与全量切块验收
...
项目 6579 的正式正文已换成真实解析内容,冲击波 PDF 写入 90 条带向量的切块,小文档仍全文注入。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 13:56:57 +00:00
weichen
a16a661968
merge: feature/force-material-chunk-index-2026-09-21
2026-09-21 13:47:21 +00:00
weichen and Cursor
1fb59e12ef
feat(bizdev): 成功解析的材料一律写入 material_chunks
...
大小阈值只决定全文注入还是目录加检索片段,不再决定是否切块。上传后的异步解析同样跳过 60KB 门槛。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 13:40:39 +00:00
weichen and Cursor
a241e83815
docs(ops): 状态卡二轮任务收口记录(已合入 dev + cleanup_pending)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 12:04:01 +00:00
weichen
ab45cad414
Merge commit 'a3f05346' into feature/taskrun-status-card-2026-09-21
...
Co-authored-by: Cursor <cursoragent@cursor.com >
# Conflicts:
# .doc/ops/CURRENT.md
2026-09-21 11:56:09 +00:00
weichen and Cursor
82e912986e
docs(test): 状态卡 label 冻结二轮修复真实 PI 验收报告与证据
...
- test-report 追加 §8:根因取证、三层修复、dev 回填实测(4424/4508)、
真实 PI 前向路径验收(消息 4548 免回填直接落归一化 label)、
刷新窗口恢复断言、部署制品核验;一次性会话已撤销
- assets 归档 round2 证据:real-task / message-4548-snapshot /
window-round2 / bundle-markers-round2 / forward-verify
- CURRENT 集成槽位释放为 idle(taskrun-status-card label 修复已合入 dev)
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 11:48:33 +00:00
weichen and Cursor
a3f05346e8
merge: feature/mineru-doc-parsing-2026-09-21 (second-round docs)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 11:46:00 +00:00
weichen and Cursor
888f41090e
docs(test): second-round root causes for real PDF failure
...
Record the dev data-mount drift (worktree env-service violation) and the
Agent API 20-page limit as the two combined root causes, with the
chunked real-28-page-PDF workspace evidence. Retract the first-round
acceptance verdict.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 11:36:49 +00:00
weichen
4b30324754
merge: dev@362b68a0 (mineru page_range) into feature/taskrun-status-card-2026-09-21
2026-09-21 11:13:40 +00:00
weichen and Cursor
c026ad7160
test(mineru): dump parsed markdown for live content proof
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 11:10:42 +00:00
weichen and Cursor
362b68a0a7
merge: feature/mineru-doc-parsing-2026-09-21 (agent page_range chunking)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 11:09:52 +00:00
weichen and Cursor
930776438a
docs(ops): 占用集成槽位(taskrun-status-card label 修复合入 + dev 验收)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 11:02:12 +00:00
weichen and Cursor
b5b1e7798c
docs(ops): 记录状态卡 label 冻结二轮修复与回填证据
...
- short-term 任务文追加"收口后 label 冻结"根因、三层修复与验收项
- assets 归档 dev 回填前/后取样与执行输出(backfill-before/after/run.txt)
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 11:00:05 +00:00
weichen
b68e1f6412
merge: dev@5c3261c6 into feature/taskrun-status-card-2026-09-21
2026-09-21 10:33:21 +00:00
weichen and Cursor
837ac3e466
chore(ops): 历史 task_phase_snapshot 冻结 label 一次性回填脚本
...
扫描 chat_messages.metadata.task_phase_snapshot,对 completed 步骤复用
taskrun.NormalizeSettledStep 归一化 label(幂等,可重复执行)。
支持 -dry-run 与 -id 定位;仅面向当前环境 DB(默认 ContextDSN)。
dev 实测:4424/4508 两条修复,二次 dry-run 为 0。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 10:32:57 +00:00
weichen and Cursor
725cad3d25
fix(web): 任务状态卡收口与渲染层归一化冻结进度文案
...
与后端 fix(taskrun) 对称:
- phaseEventMapper.settleStep:applyPhaseEvent 收口分支(CLOSE_PHASES、
新 phase 结算前序、existing 条目刷新)把 completed 条目 label 归一化为
短标签 + "已完成",保留"(第 x/y 步)"结构后缀;failed 有意保留原文案。
导出 PHASE_META 供展示层复用。
- lib/taskRunCard.displayStepLabel:渲染层兜底清洗历史脏快照(如 #4424),
回填失败/漏跑时前端仍正确展示。
- 更新 phaseEventMapper.test.ts 中两处此前把 bug 钉死为预期的断言;
TaskRunCard.test.ts 新增复现 #4424 展示层兜底用例。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 10:32:57 +00:00
weichen and Cursor
561709178a
fix(taskrun): 收口 completed 步骤时归一化冻结的进度中 label
...
步骤从 running 收口为 completed 时,此前只翻转 Status,Label 永久冻结为
上游下发的"正在…(NN%)"进度中叙述,导致卡片即便步骤已完成仍读起来像还在跑
(缺陷见消息 #4424)。
新增导出函数 NormalizeSettledStep:completed 步骤改写为短标签 + "已完成",
保留"(第 x/y 步)"结构后缀以区分多步任务,原始叙述留在 Detail 供审计;
failed/pending/running 有意不改(失败细节由错误气泡承载)。
接入 applyPhasePayload 三处收口分支、existing-step 刷新分支,
以及 BuildPhaseSnapshot 终态收口 + 存量兜底全量归一化。
导出供回填脚本复用,避免逻辑漂移。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 10:32:38 +00:00
weichen
5c3261c6d8
docs(ops): summarize upload-parse-ux closeout in CURRENT focus
2026-09-21 10:22:51 +00:00
weichen
a0464eb560
merge: upload-parse-ux task closeout docs
2026-09-21 10:17:43 +00:00
weichen and Cursor
fe76a9d683
docs(ops): close out upload parse ux task
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 10:17:16 +00:00
weichen
74587ccff3
merge: docs e2e evidence for upload-parse-ux
2026-09-21 10:12:22 +00:00
weichen and Cursor
7d1f58b681
docs(test): record dev E2E for parse polling, dedup hint and CoW
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 10:11:15 +00:00
weichen and Cursor
db76a28689
feat(mineru): chunk Agent parse by page_range past 20-page cap
...
The free Agent lightweight API rejects files over 20 pages (-30003)
and the precision token is expired, so a real 28-page PDF could not
parse at all. On -30003, parse in 20-page windows and renumber chunk
anchors to global pages; report engine mode agent_chunked.
Also log skipped assets in ResolveMaterials and return a bool from
EnqueueAsync so parse_state is only set when a job is enqueued.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 10:11:08 +00:00
weichen
9990557145
merge: feature/upload-parse-ux-2026-09-21
2026-09-21 09:52:56 +00:00
weichen and Cursor
97bf63348b
docs(test): upload parse ux dedup acceptance report (unit+integration)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 09:50:24 +00:00
weichen and Cursor
e30db81b9d
docs(audit): document storage CoW status and dedup visibility
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 09:48:32 +00:00
weichen and Cursor
694f9b7ecf
feat(web): poll parse state, surface dedup hint and reparse action
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 09:47:06 +00:00
weichen and Cursor
b867f4f19c
test: cover dedup hint, reparse guard, store gate and CoW contract
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 09:47:06 +00:00
weichen and Cursor
5f9fbb9923
fix(server): gate parse enqueue to store-backed pipeline
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 09:47:06 +00:00
weichen
a57cdae697
merge: workflow-scope-weighting acceptance report
2026-09-21 09:45:13 +00:00
weichen and Cursor
3bde2634ba
docs(test): record workflow scope weighting acceptance
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 09:44:50 +00:00
weichen
7723a55159
merge: workflow-scope-weighting template read fix
2026-09-21 09:37:51 +00:00
weichen and Cursor
0272d13574
fix(server): treat a template-only ledger as a readable in-scope document
...
A missing ledger body was reported as not found, so an in-scope view of a template document never reached the template reply.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 09:37:39 +00:00
weichen
14b5aace47
merge: feature/workflow-scope-weighting-2026-09-21
2026-09-21 09:31:12 +00:00
weichen and Cursor
776e069e2f
docs(ops): mark the integration slot for workflow scope weighting
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 09:30:31 +00:00
weichen and Cursor
8b84ee4ecf
chore(config): declare WORKFLOW_SCOPE_MODE with a strict default
...
The flag reaches all three compose app services and the sysadmin catalog, and unknown values stay on the existing hard block.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 09:26:03 +00:00
weichen and Cursor
4af4a9de13
fix(intent): keep draft requests that end in 看看 on the write path
...
「出一版…看看」是写完给看,不是只读查看;查看和读取仍走只读作用域裁决。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 09:26:03 +00:00
weichen and Cursor
fd4b95030f
feat(web): score write-path matches by workflow relation
...
The document list now reports WORKFLOW_SCOPE_MODE, and weighted mode only blocks a cross-workflow write when that title outscores the active workflow.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 09:22:13 +00:00
weichen and Cursor
63f94ff23b
feat(server): expose dedup hint, parse error and reparse endpoint
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 09:18:20 +00:00
weichen and Cursor
0972900215
feat(intent): score slot filling against the active workflow
...
Weighted mode keeps an in-scope document when a cross-workflow name is only mentioned beside it, while exact cross-workflow writes stay blocked and exact reads record the owning workflow.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 09:15:51 +00:00
weichen and Cursor
976f8d30b8
feat(server): allow weighted cross-workflow reads after a view check
...
Exact out-of-workflow documents can be summarized when WORKFLOW_SCOPE_MODE=weighted and the caller can still view the active instance; writes stay blocked.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 09:11:47 +00:00
weichen and Cursor
31dde45b72
docs(ops): register upload parse ux dedup task
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 09:10:55 +00:00
weichen and Cursor
fac5704303
feat(workflowscope): score document hits by workflow relation weight
...
Keep WORKFLOW_SCOPE_MODE=strict as the default so cross-workflow mentions stay blocked until weighted mode is turned on.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 09:07:50 +00:00
weichen and Cursor
0bf4977d27
docs(ops): claim workflow scope weighting on a feature branch
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 09:07:50 +00:00
weichen and Cursor
10aee3feb4
merge: docs for intent-confirm real PI acceptance
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:48:28 +00:00
weichen and Cursor
e400909a3a
docs(test): record real PI acceptance for intent confirm stage-aware
...
Capture 陈威 project 6579 chat evidence: weak-verb confirm card, affirm
execution (~3m), option-2 no task, and strong-path direct TRIGGER_TASK.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:47:26 +00:00
weichen and Cursor
fc82abb1bc
docs(test): record soft-dev MinerU E2E acceptance evidence
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:42:53 +00:00
weichen and Cursor
b90259b9fc
docs(test): accept MinerU parsing on soft-dev with Agent fallback
...
Upload demo PDF reached parse_state=done; schema 61; release
integration slot. Precision token remains expired by design for this run.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:42:53 +00:00
weichen and Cursor
7f150831bb
merge: feature/mineru-doc-parsing-2026-09-21
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:37:12 +00:00
weichen and Cursor
2c6b41a5ac
feat(mineru): fall back to Agent lightweight API on token failure
...
When precision API key is missing or expired (A0202/A0211), parse
via the no-token Agent API so document understanding still works.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:36:24 +00:00
weichen and Cursor
67574df45b
docs(test): close out intent confirm stage-aware after deploy verify
...
Archive the short-term task, mark CURRENT done, and attach rebuild
evidence from the correct dev tree no-cache image.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:34:22 +00:00
weichen and Cursor
ca21d66b29
docs(ops): freeze mineru task head_sha
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:30:01 +00:00
weichen and Cursor
29dfae6b40
docs(test): record MinerU parsing implementation and live blocker
...
Claim CURRENT mutex, archive short-term task, and document unit PASS
plus live A0211 token-expired blocker.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:29:10 +00:00
weichen and Cursor
983b785cd6
feat(config): wire MinerU and material RAG settings
...
Add MINERU_* / MATERIAL_* to config loader, .env.example, and
compose env passthrough. Secrets stay in local .env only.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:29:10 +00:00
weichen and Cursor
79c4c7c496
feat(api): enqueue material parse on upload and expose parse_state
...
Async-trigger MinerU after CAS store and surface parse status in
assets API plus a lightweight preview badge.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:29:10 +00:00
weichen and Cursor
9ee890950a
feat(bizdev): hybrid material injection and real CAS embedder
...
Prefer MinerU markdown, inject fulltext or toc+rag for large docs,
and wire kb.Embedder into CAS instead of nil.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:29:10 +00:00
weichen and Cursor
18c727bb9f
feat(materialindex): parse pipeline with chunk embed and RAG search
...
EnsureParsed waits or lazily triggers MinerU, indexes oversized
markdown into material_chunks, and supports reranked retrieval.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:29:10 +00:00
weichen and Cursor
32cda4486c
feat(mineru): add MinerU precision parse client
...
Implement signed batch upload, poll, zip extract, and real page
anchor rebuild from content_list.json.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:29:10 +00:00
weichen and Cursor
1e482023b6
feat(db): add asset_parses and material_chunks tables
...
Cache MinerU parse results by blob hash and store project-scoped
chunk embeddings for large uploaded materials.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:29:10 +00:00
weichen
0c40190449
merge: fix/intent-confirm-stage-aware-2026-09-21
...
Stage-aware requirements routing with smart confirm gate and chat degrade.
2026-09-21 08:28:56 +00:00
weichen and Cursor
5a0e5e7001
docs(test): record intent confirm and stage-aware acceptance
...
Update short-term/CURRENT claim for the extension branch and archive
unit/web evidence pending live rebuild after merge.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:28:28 +00:00
weichen and Cursor
6bb2f72507
test(coordinator): cover weak-requirements confirm then affirm path
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:27:49 +00:00
weichen and Cursor
568408cced
feat(web): degrade stage-blocked task runs to chat confirmation
...
Keep weak write verbs off the task shortcut path, and once-only fall back
to chat when TASK_SCOPE_UNRESOLVED or DOC_TASK_NOT_IN_ACTIVE_STAGE.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:27:49 +00:00
weichen and Cursor
5ba9bbbe11
feat(coordinator): smart confirm gate before TRIGGER_TASK execution
...
Ask via PendingExpectation for weak-write verbs, mid confidence, or
stage-mismatched doc tasks instead of running blindly.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:27:49 +00:00
weichen and Cursor
f8abd1a5cc
feat(intent): stage-aware requirements routing with weak write verbs
...
Map early-stage "整理一下需求" style phrases to intake with needs_confirmation,
and stop RDev "用户需求" from hijacking main-flow "编写用户需求表".
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:27:49 +00:00
weichen and Cursor
49fb68fec1
docs(test): record TaskRunCard persistence acceptance on real PI
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:25:24 +00:00
weichen
82fb0fcaf0
merge: docs/intent-workflow-archive-short-term
2026-09-21 08:25:02 +00:00
weichen and Cursor
82ef1c28c2
docs(ops): archive completed intent workflow scoping short-term task
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:25:02 +00:00
weichen
22cd7be1f6
merge: docs/intent-workflow-slot-queue-cleanup
2026-09-21 08:24:48 +00:00
weichen and Cursor
835385f6cf
docs(ops): clear intent workflow docs closeout from integration queue
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:24:48 +00:00
weichen
11d2262596
merge: docs/intent-workflow-scoping-report-2026-09-21
2026-09-21 08:24:35 +00:00
weichen and Cursor
ffd00e70ed
docs(test): archive intent workflow scoping acceptance report
...
Record live chat/API evidence for active-workflow slot scoping and close the short-term claim.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:24:26 +00:00
weichen
9798b13005
merge: feature/taskrun-status-card-2026-09-21
2026-09-21 08:15:28 +00:00
weichen and Cursor
9c0f780954
docs(ops): hold the integration slot for taskrun status card
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:15:28 +00:00
weichen and Cursor
5f201254d8
fix(web): loosen TaskRunCard title helper input type for tests
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:15:10 +00:00
weichen and Cursor
ae1e2475f3
feat(web): restore TaskRunCard from phase snapshot on refresh
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:15:10 +00:00
weichen and Cursor
32209c5e1b
feat(taskrun): persist phase snapshot into assistant message metadata
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:15:10 +00:00
weichen and Cursor
194e410822
feat(web): wire TaskRunCard into message stream and capture duration
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:15:10 +00:00
weichen and Cursor
22314ff9b0
feat(web): add TaskRunCard vertical timeline for task runs
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:15:10 +00:00
weichen
b376fd8383
docs(ops): claim taskrun status card feature branch
2026-09-21 08:15:10 +00:00
weichen and Cursor
e0665ca446
merge: fix/intent-workflow-scoping-2026-09-21
...
Scope intent slot filling and document matching to the active workflow;
cross-workflow mentions are blocked with switch guidance.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:11:27 +00:00
weichen and Cursor
d0b9ac4247
docs(ops): hold the integration slot for intent workflow scoping
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:10:15 +00:00
weichen and Cursor
0b1040ca7e
feat(web): scope template matching to the active workflow
...
- Document list returns workflow_key per item and active_workflow_key
- DeliverableItem keeps workflowKey through server sync
- resolveTaskTemplateForMessage filters the match pool and blocks
cross-workflow mentions with switch guidance
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:09:36 +00:00
weichen
83e22a701f
merge: adopt agent worktree governance (adoption)
2026-09-21 08:09:13 +00:00
weichen
048bbe4a5e
docs(workflow): require isolated worktrees for all new agent changes
...
Adopt the approved workflow with explicit dev baselines, serialized candidate integration, scoped validation and safe cleanup. Keep automation work tracked separately from the active policy.
2026-09-21 08:08:14 +00:00
weichen and Cursor
0912efdbd9
feat(coordinator+server): narrow document match pool to active workflow
...
- ActiveWorkflowScope resolves live instance task keys for the project
- chat document reader matches inside the active pool; cross-flow hits
return ErrWrongWorkflow with switch guidance
- enrichSessionWorkflowStage injects ActiveWorkflowKey into UserCtx
- TRIGGER_TASK (coordinator + task-run API) blocks out-of-scope task keys
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 08:05:44 +00:00
weichen
6e28c57245
docs(workflow): plan isolated agent development and serialized integration
2026-09-21 07:59:40 +00:00
weichen and Cursor
5c6b4f7719
feat(intent): scope slot filling to the active workflow
...
- ContextSnapshot gains ActiveWorkflowKey; ToSnapshot passes it downstream
- manifest-backed doc-title -> workflow index (main/pm/tm/rdev/sw)
- TRIGGER_TASK and DOCGOV write actions blocked with switch guidance when
the named document belongs to another active workflow
- legacy projects without an active workflow key keep the old behavior
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 07:38:49 +00:00
weichen and Cursor
fc432d8726
docs(ops): claim intent workflow scoping on a fix branch
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 06:52:30 +00:00
weichen
15b8a4a87d
merge: docs for workflow document key unification
2026-09-21 06:48:58 +00:00
weichen and Cursor
954da76c0a
docs(test): record workflow document key unification on dev
...
项目 6579 已收成 7 条 bd_*,旧 intake 行进了归档表。管理员复测不再出现作用域 409。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 06:48:37 +00:00
weichen and Cursor
5f14931e7b
merge: fix/workflow-doc-key-unification-2026-09-21
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 06:38:25 +00:00
weichen and Cursor
2ec5856284
docs(ops): hold the dev integration slot for document key unification
...
合入 dev 和容器重建期间占住集成槽,避免并行改同一套 dev 容器。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 06:37:43 +00:00
weichen and Cursor
50c19aaee9
test(docgov): cover canonical task key collapse for project documents
...
锁定「7 份旧键本地克隆加 8 行服务端」收成 7 条 bd_*,以及列表与物化不再留下 intake 兄弟行。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 06:37:10 +00:00
weichen and Cursor
51d4390bd6
fix(docgov): collapse legacy and published task keys in the document list
...
列表只返回发布键那一行;物化时若旧键行已在,就不再插入兄弟行,避免撞上唯一索引。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-21 06:37:10 +00:00