weichen and Cursor
a3fa7c137b
docs(test): record PI typed-result-v1 dual-track evidence
...
Archive Track P tasks and point FEATURE-MATRIX at the live MiniMax runner report.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 15:25:34 +00:00
weichen and Cursor
0a61cfbe90
feat(agent): add typed-result-v1 and fail-closed remote parser
...
Remote /v1/run now emits additive result_v1; Go validates run_id, digest, and paths before materializing, and only accepts missing typed payloads with an explicit legacy handshake.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 15:25:18 +00:00
weichen
4dbe6a431c
merge: feature/http-error-envelope
2026-09-15 14:41:09 +00:00
weichen and Cursor
f6813cc272
feat(api): add additive HTTP/SSE error envelopes
...
Public errors now emit code, safe message, and request_id while keeping the legacy error field. Raw SQL, paths, tokens, and XSS payloads are stripped; the frontend branches on code instead of substring matching.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 14:40:56 +00:00
weichen
39dc68d15c
merge: feature/event-shared-live-cutover
2026-09-15 14:24:17 +00:00
weichen and Cursor
7a9d0d850d
chore: ignore pycache and release the live-cutover integration slot
...
Shared live rebuild passed health/ready; keep Python bytecode out of test-report assets.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 14:24:17 +00:00
weichen and Cursor
ad9027fe8f
docs(test): record shared event live cutover and close the reliability pilot
...
Notify, workflow_advance, and projection completed shadow/live/rollback on agent-dev; authorized 6275 digest matches; project 143 stays non-leaking.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 14:23:07 +00:00
weichen and Cursor
9b1a94c5bc
feat(app): drop production outbox and approval hook registration
...
Durable notify/advance/projection are live on shared dev, so composition roots must not assign OnOutbox or AddOnApprovedHook. Bind helpers remain for tests and a rollback window.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 14:23:07 +00:00
weichen and Cursor
4a662ec2d3
feat(events): gate shared-dev consumer mode changes
...
Add ValidateOpsCutover, eventmode CLI, and a host script that pin agent_system_dev and refuse FAV plus test/main before any cluster mode write.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 14:11:44 +00:00
weichen
a20760953a
merge: feature/phase2-closeout-inventories
2026-09-15 13:26:50 +00:00
weichen and Cursor
8400427c24
docs: close Phase 2 isolation tracks and file H0/P0 inventories
...
Archive completed Track E/S short-terms, record HTTP/PI compatibility matrices, and defer shared live plus protocol implementation to long-term tasks.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 13:26:20 +00:00
weichen and Cursor
1c04f17c8c
test(events): reject replay apply without approval ref
...
ReplayPlan two-person apply already required digest match; this pins the missing ApprovalRef negative so dry-run tickets cannot skip the ticket field.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 13:26:20 +00:00
weichen
3a6d4f45dd
merge: fix/chatflow-orchestration-boundary
2026-09-15 13:15:57 +00:00
weichen and Cursor
9811ae3841
docs(test): record D7b chatflow orchestration boundary
...
S4b report and archive; chat production allowlist no longer includes bizdev.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 13:15:48 +00:00
weichen and Cursor
425c8ba776
feat(chat): drop production bizdev import from action executor
...
Pending-action task runs now use stageflow request aliases and Server ports, so chat no longer reaches through the orchestration root.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 13:15:48 +00:00
weichen
20fc82c485
merge: fix/bizdev-locator-removal
2026-09-15 13:11:10 +00:00
weichen and Cursor
6a9e3fb51a
docs(test): record D4 bizdev locator removal
...
S1 report, archive the short-term task, and mark the getter contract closed.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 13:10:47 +00:00
weichen and Cursor
2a75abb39e
refactor(bizdev): delete eight locator getters
...
Composition roots already hold Snapshot ports; the interface and archtest now forbid putting Pool/DocGov/DocRevision/ContextManager/CAS/ProjectWorkflow/FreeformDoc/KB back on Service.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 13:08:25 +00:00
weichen and Cursor
3f42149457
feat(bizdev): snapshot collaborators onto Runtime and Server ports
...
Composition roots copy Parts once so HTTP/CLI handlers stop calling locator getters on every request.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 13:00:33 +00:00
weichen
92a9c6783d
merge: fix/stageflow-type-ownership
2026-09-15 11:13:17 +00:00
weichen and Cursor
acb443e949
docs(test): record D5 stageflow type ownership and chatflow first batch
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 11:13:17 +00:00
weichen and Cursor
110c2e810c
feat(stageflow): own task/stage types so coordinator drops bizdev
...
Coordinator now takes a StageTaskRunner and injected context/KB ports.
Chatflow assembler reads maturity tokens instead of the orchestration root.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 11:13:17 +00:00
weichen
6f541feac0
merge: fix/intent-bizdev-boundary
2026-09-15 10:29:38 +00:00
weichen and Cursor
23d0cfb10f
docs(test): record D7a intent-bizdev boundary
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 10:29:38 +00:00
weichen and Cursor
525047b841
feat(intent): depend on maturity vocabulary instead of bizdev
...
Intent only needed the three official stage tokens. Moving them to a
leaf package lets the recognizer compile without the orchestration root.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 10:29:38 +00:00
weichen
0a2ea2477d
merge: fix/doccontent-canonical-boundary
2026-09-15 10:24:24 +00:00
weichen and Cursor
7728339d08
docs(test): record D6 doccontent canonical boundary
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 10:24:24 +00:00
weichen and Cursor
9ddc673eb8
feat(doccontent): extract shared markdown canonicalization and SHA
...
docgov saves content hashes through the new leaf module so it no longer
imports docrevision. Existing docrevision exports stay as thin wrappers.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 10:24:24 +00:00
weichen
2771a1ed04
merge: fix/event-e2-hook-guard
2026-09-15 10:17:47 +00:00
weichen and Cursor
71502c7ce0
docs(test): record E2 hook live-guard and Track E retrospective
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 10:17:26 +00:00
weichen and Cursor
a1316e39cb
test(events): prove WriterLive off/shadow/live hook matrix
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 10:17:26 +00:00
weichen and Cursor
97028c33b5
feat(events): skip in-process writers when a consumer is live
...
Keep OnOutbox and approval hooks registered while dispatcher mode is
off, but no-op them as soon as the matching durable consumer owns the
visible write so a later switch cannot dual-write.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 10:17:09 +00:00
weichen
51bf791ef0
merge: fix/event-projection-cutover
2026-09-15 10:00:38 +00:00
weichen and Cursor
dab3e1a355
docs(test): record E1C projection no-replace and worker restart evidence
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 10:00:11 +00:00
weichen and Cursor
d645eaa1f7
docs(test): record E1C projection no-replace and worker restart evidence
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 09:59:55 +00:00
weichen and Cursor
aa2f31dc0f
test(docproject): prove projection shadow, uniqueness, and no-replace
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 09:59:55 +00:00
weichen and Cursor
92f31ffa6a
feat(events): apply version-committed projections only forward
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 09:59:55 +00:00
weichen and Cursor
21d7692c94
feat(db): record unique projection outcomes per envelope version
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 09:59:54 +00:00
weichen
1b1d0a1cba
merge: fix/event-workflow-advance
2026-09-15 09:43:09 +00:00
weichen and Cursor
7d1b7e736b
docs(test): record E1B workflow-advance shadow/live/rollback evidence
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 09:43:09 +00:00
weichen and Cursor
0ebaaaed87
test(docadvance): prove workflow advance shadow, uniqueness, and rollback
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 09:43:09 +00:00
weichen and Cursor
965e288d36
feat(events): apply approved events onto workflow advance in one fenced transaction
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 09:43:09 +00:00
weichen and Cursor
28bb0b8356
feat(db): correlate stage-ready requests to envelope event_id
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 09:43:09 +00:00
weichen
ebf16aa094
merge: fix/event-notify-cutover
2026-09-15 09:26:45 +00:00
weichen and Cursor
ff713ff790
docs(test): record E1A notify shadow/live/rollback evidence
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 09:26:36 +00:00
weichen and Cursor
a5e46eeb5f
test(docnotify): prove notify shadow, live uniqueness, and rollback on isolated PG
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 09:26:36 +00:00
weichen and Cursor
16a31f8aa5
feat(events): run notify side effects and ack on one fenced transaction
...
Shadow dry-runs the same handler then rolls back, writing only the intended digest.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 09:26:36 +00:00
weichen and Cursor
6702b16249
feat(db): correlate notifications to envelope event_id for unique visible outcomes
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 09:26:36 +00:00
weichen
06b824ad7c
merge: feature/events-dispatcher-pg
2026-09-15 09:08:25 +00:00
weichen and Cursor
d926f64c2e
docs(test): record E0B dispatcher PG, race, and default-off evidence
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-15 09:08:15 +00:00