Commit Graph
747 Commits
Author SHA1 Message Date
weichenandCursor 15af018734 docs(ops): close architecture-docs mutex after Phase 2 plans land
The next claim is Track E E0A; dispatcher stays off until that gate.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 08:12:21 +00:00
weichenandCursor 7647215513 docs(ops): land Phase 2 Track E/S/P plans onto a legal feature branch
Move the reviewed durable-event, HTTP envelope, and PI typed-result
designs off the docs/ prefix so Track E can start from latest dev.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 08:11:29 +00:00
weichen 5cef85670a docs(remediation): add module decoupling phase-2 remediation plan and index gap-matrix rows 2026-09-15 07:03:39 +00:00
weichen a3392e3e06 docs(research): add module decoupling and IPC/RPC interaction assessment 2026-09-15 06:57:08 +00:00
weichen 9edd6c8190 merge: chore/leftover-branch-cleanup 2026-09-15 06:44:46 +00:00
weichenandCursor edb7411474 docs(ops): record leftover branch cleanup and short smoke evidence
Local merged side branches and their worktrees are gone; FAV/herdr/diagnosis/old-linear stay unmerged on purpose.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 06:44:39 +00:00
weichen 347c5f54a6 merge: docs/conversation-intent-dual-tab 2026-09-15 06:22:58 +00:00
weichenandCursor 8a8f64a931 docs(test): close intent dual-tab busy gate and release the mutex
Record project 6275 PI 409 DOC_BUSY plus Docker screenshots, mark CHAT-INTENT-STATE PASS, and archive the short-term so CURRENT has no in_progress rows.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 06:22:58 +00:00
weichen f5d32cddd1 merge: docs/u11-u12-slot-close 2026-09-15 05:55:34 +00:00
weichenandCursor 111ab6786e docs(test): close U11–U12 after dev rebuild and archive the app mutex
Record schema 38 health/ready plus the new agent-dev-app digest, then mark the composition-root slice done so intent dual-tab can take the idle slot.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 05:55:25 +00:00
weichen bf59cceef2 merge: feature/app-composition-u11-u12 2026-09-15 05:51:32 +00:00
weichenandCursor 934c0596ea docs(ops): occupy the integration slot for U11–U12 merge
Serial slot is required before --no-ff into local dev and agent-dev rebuild.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 05:51:32 +00:00
weichenandCursor 717162e701 docs(test): record U11–U12 composition root and transport gate evidence
Contract tests, target-package race, and arch-check --mode block passed; merge to dev still needs the integration slot rebuild.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 05:40:15 +00:00
weichenandCursor 84c0841acb feat(app): add composition root, stageflow, ContextUpdate, and SSE transport
Move construction and document OnOutbox out of server, give HTTP/CLI a shared task use case, and block already-cleared import/event arch rules.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 05:40:15 +00:00
weichenandCursor 652cea1605 docs(ops): claim M5/M6 U11–U12 composition and transport gate
User authorized continuing past U10 stop-ship; register app mutex on feature/app-composition-u11-u12.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 05:40:00 +00:00
weichen ef9a162314 merge: feature/chatlog-contextasm-u10
M4 U10 ChatLog/ContextAssembler 原地端口化。停止扩面,禁止 U11–U12。
2026-09-15 05:05:27 +00:00
weichenandCursor 6601583cbe docs(test): record U10 occupy-slot rebuild into agent-dev
health/ready schema 38;镜像已含 ChatLog 端口。停走结论仍是停止扩面。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 05:05:27 +00:00
weichenandCursor 3c9e6d214d docs(ops): occupy the integration slot for M4 U10 merge
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 05:04:15 +00:00
weichenandCursor 6e744d3717 docs(test): record U10 ChatLog ports and live chat refresh evidence
Archive the finished chat mutex tasks, attach PI idle-chat refresh same-set evidence for project 6252, and stop expansion after in-place ports without a package split.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 04:11:40 +00:00
weichenandCursor 65bdda8aae feat(api): route chat history reads through ChatLog
Ignore request user_id as identity, authorize from the session Principal, and hydrate restore/memory from the same visible set so HTTP, SSE, and prompt assembly cannot amplify hidden messages.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 04:11:27 +00:00
weichenandCursor 18d40fa8a9 feat(chatflow): add ChatLog and ContextAssembler ports
Keep ctxmgr as table owner and filter the authorized visible set in-process so window, stats, restore, digest, and prompt assembly share one Principal-scoped collection without a package move.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 04:11:16 +00:00
weichen 3944856b0a merge: feature/dataset-lifecycle-u9
M3 U9 存量回填、migration corpus 与数据生命周期。
2026-09-15 03:01:49 +00:00
weichenandCursor af51e74076 docs(test): M3 U9 dataset lifecycle 验收报告
隔离库 SKIP LOCKED、八轨、arch-check、web 与 rebuild 证据齐全;真实 PI 未测。最后一句:继续 U10。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 03:01:49 +00:00
weichenandCursor 42f356ccd7 docs(ops): occupy the integration slot for M3 U9 rebuild
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 02:41:06 +00:00
weichenandCursor be0c1e843f feat(dataset): registry, pause/resume backfill, destroy gates, eight tracks
批准 dataset 分类入库;SKIP LOCKED 分批;销毁默认 fail closed。restore 演练拒绝共享 env DSN。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 02:40:12 +00:00
weichenandCursor b5337d5c77 feat(artifactvault): checkpoint backfill without scanning workspace
只枚举 snapshot、agent_commit、approved 与 completed chat turn;hazard 进 quarantine,禁止工作区路径。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 02:40:12 +00:00
weichenandCursor 5ac14d649b feat(db): add goose 00038 dataset lifecycle tables
Registry、checkpoint queue 与 destroy 请求表属主 dataset;必须可 Down,不改历史 Goose。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 02:31:34 +00:00
weichenandCursor e81e7a1bcc docs(ops): claim M3 U9 dataset lifecycle mutex
U8 已签继续 U9。本轮 mutex=dataset,禁止 U10–U12 与共享库销毁。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 02:30:45 +00:00
weichen 367473730b merge: feature/taskrun-runmanifest
M3 U8 TaskRun 终态与 RunManifest。
2026-09-15 02:17:37 +00:00
weichenandCursor f4dfada9ae docs(test): M3 U8 TaskRun RunManifest 验收报告
隔离库双 pool、目标包 race、arch-check、web 与 rebuild 证据齐全;真实 PI 未测。最后一句:继续 U9。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 02:17:37 +00:00
weichenandCursor ac302fb78f docs(ops): occupy the integration slot for M3 U8 merge
Serialize merge and container rebuild so other agents wait while RunManifest lands on dev.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 02:07:42 +00:00
weichenandCursor 3997a04bdb test(taskrun): cover duplicate finalize, cancel race, and SSE
Use an isolated dual-pool database so idempotent finalize, cancel CAS, commit-fail SSE, and receipt-gated cleanup are proven without a process mutex.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 02:06:21 +00:00
weichenandCursor 2ddaf769ca feat(workspace): gate cleanup on verified receipts
Hash deliverables through Capability.ReadArtifact, resolve backends on the server, and refuse workspace removal until frozen members match FAV receipts.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 02:06:10 +00:00
weichenandCursor 7be873073c feat(taskrun): finalize RunManifest in one unit of work
CAS the unique terminal status with the assistant turn, frozen manifest, envelope and FAV staging, and join ctxmgr writes through the same UoW instead of a process mutex.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 02:05:58 +00:00
weichenandCursor eb75f855a5 feat(db): add goose 00037 task_run_manifests
Persist typed RunManifest bytes and SHA per run, and allow a finalizing status so U8 can freeze a unique terminal without sharing env databases.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 02:05:33 +00:00
weichenandCursor 2234af476a docs(ops): claim M3 U8 TaskRun RunManifest mutex
Register feature/taskrun-runmanifest on the taskrun mutex so U8 can start without occupying chat/intent or writing U9–U12.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 01:04:32 +00:00
weichen b8f33b5c55 merge: refactor/document-reliability-pilot
M2 test report and integration-slot release.
2026-09-14 16:07:37 +00:00
weichenandCursor da21911e30 docs(ops): restore the original M1 stop-the-line report link
CURRENT SSOT must keep the unmodified 停止扩面 report alongside the live and M2 reports.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 16:07:37 +00:00
weichenandCursor b1ce9b5c41 docs(test): record document reliability M2 go-no-go
U5–U7 passed isolation-db, race, goose Down, and schema-36 rebuild. The report last sentence is 继续 M3; the integration slot is idle.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 16:07:05 +00:00
weichen 0872d8fbb3 merge: refactor/document-reliability-pilot
M2 WorkspaceRef, durable events, and audited FAV (goose 00034–00036).
2026-09-14 16:00:57 +00:00
weichenandCursor 425338be9e docs(ops): occupy the integration slot for M2 merge
U5–U7 need a main-repo rebuild so schema 00034–00036 is not validated from a worktree docker.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 16:00:42 +00:00
weichenandCursor c7e3e99303 feat(artifactvault): extract audited FAV with union-deny reads
Goose 00036 is a renumbered copy of the vault tables. Degraded read stays off by default and only runs after authorization; tombstones and unpublished artifacts fail closed.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 15:59:36 +00:00
weichenandCursor f27059b453 feat(events): add durable envelope delivery and drop commit OnOutbox
Agent commits append a validated envelope inside the command unit of work. SKIP LOCKED is only used to claim, and stale fencing plus integrity failures go to quarantine or dead-letter.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 15:59:24 +00:00
weichenandCursor 18ddd0f862 feat(workspace): add WorkspaceRef fencing and hide physical paths
Cross-module callers get an opaque ref plus rotating lease tokens so stale writers fail closed, and file I/O is refused inside a unit of work.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 15:59:14 +00:00
weichenandCursor b0d9153e52 docs(test): record document reliability M1 live sign-off
Rebuild, real PI, browser reload, and two-pool sessions all passed, so
the live report's last sentence is 继续 M2 and the integration slot is idle.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 14:46:53 +00:00
weichenandCursor 88b37b60da test(e2e): refresh admin directory before new-project member pick
Create-project candidates come from the in-session user directory, so a
fresh admin page never saw B/C unless the console refresh ran first.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 14:38:50 +00:00
weichenandCursor 3e4abc51cd test(e2e): cover 143 reload, fail-closed GET, and new-project compile
Live M1 sign-off needs browser proof that missing projection is not 404,
outsiders share DOCUMENT_NOT_FOUND, and a real PI compile survives reload.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 14:34:37 +00:00
weichenandCursor f34bec40f5 test(docgov): replay same-digest across two pools and four sessions
Cross-pool idempotency is same key plus same digest; a stale in-memory
head from the seeder hid the one-winner four-session lock.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 14:34:30 +00:00
weichen cb8eacac61 merge: refactor/document-reliability-pilot
Occupy the integration slot to rebuild dev for M1 live sign-off of document reliability U1–U4.
2026-09-14 14:24:56 +00:00
weichenandCursor 7f8ad76d12 test(docgov): add two-pool races and ledger-first live spec
Occupy the integration slot for M1 live sign-off, cover two pgx pools plus four sessions, and add a Playwright spec that treats projection consistency as 200 rather than 404.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 14:24:46 +00:00