Skip to content

Make MCP write outcomes recoverable and expose typed edit contracts - #199

Merged
canvascoding merged 9 commits into
mainfrom
codex/mcp-operation-reliability
Nov 1, 2026
Merged

canvascoding merged 9 commits into
mainfrom
codex/mcp-operation-reliability

Conversation

@canvascoding

@canvascoding canvascoding commented Nov 1, 2026 •

Copy link
Copy Markdown
Owner

MCP ingestion could report failure after durable storage. This change separates durable outcomes from processing, adds an authorized status query over existing receipts, and returns correlation and retry metadata while preserving unknown outcomes. Native create/import/edit responses include identity-bound document links.

Read arguments remain flat and native edit patches are fully typed for adapter discovery. Large documents support bounded, version-bound edit-target reads for a selected block. Authorization, lifecycle locks and strict runtime validation remain in force.

Validation

  • Production build and source-verified managed Docker image passed.
  • 15 real browser/OAuth/HTTP E2E steps passed, including upload restart/checksum, replacement, cursors, native edits and editor links.
  • Installed Codex MCP client passed actual discovery and argument transport: text/4096 bytes, both patch variants, status and retries.
  • PostgreSQL/HTTP fault and contention suites, 200 selected-target reads, 9 edit, 15 create/import and 15 read regression groups passed.
  • Full npm run test:mcp:file-ingest and scoped lint passed.

Detailed implementation and evidence: docs/mcp-operation-reliability-plan.md.

No Knowledge sync or production document mutations. Hosted ChatGPT adapter acceptance and deployment are subsequent checks. Historical contention cannot be uniquely diagnosed without original logs. The local Team fixture was subsequently completed through regular non-billable seat activation; both users and the shared workspace are verified.

Additional pre-release acceptance

The full npm run test:all reached all 600 browser cases: 310 passed, 272 skipped, 17 failed and 1 dependent case did not run. Failures were isolated to missing local fixture configuration and transient UI/auth timing. After correcting the fixture workspace, secondary credentials and host-side DB URL, all 17 failed cases passed on targeted rerun without product-code changes. Logs: /tmp/canvas-mcp-pr199-test-all.log, /tmp/canvas-mcp-pr199-recheck.log. The general suite includes real PI model output and usage-ledger verification.
The previously unrun dependent Studio case also passed separately (1/1). All executed browser cases have now passed; 272 feature-gated cases remain skipped, not claimed as tested. No source changes were needed for the reruns.

@canvascoding
canvascoding merged commit 85fc787 into main Nov 1, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant