Add canonical canvas edits, identity migration and idempotent resource/AI operations #19
Reference in New Issue
Block a user
Delete Branch "codex/headless-canvas-v1"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem and behavior
The snapshot canvas writer cannot safely express cross-canvas ownership edits, recover an unknown write, or preserve operation identity across an explicit legacy migration. This change adds a normalized canonical model and incremental protocol 2 alongside the explicitly retained legacy path.
Changes
Validation
Existing ces-control CI #1186 and PR CI #1187 both completed all seven steps successfully for
506f778ac3. They run Go checks/build, isolated database migration/integration, the actual authenticated HTTP/PostgreSQL Node consumer and HTTP smoke checks. No local backend build or Docker was used.Direct cases include concurrent identical migration/edit requests with one version advance, competing owner/edge moves with one winner, late migration cancellation after writes begin with whole-transaction rollback, lost document/upload/admission/apply responses with original-key recovery, resource authorization, deep copy with a parent-owned incoming edge, and nested dissolve/lost ACK/undo-redo. Consumer report flags are all true; generation executes exactly three times, while the queued cancelled run never executes.
Final frontend checks: 822 Node tests, TypeScript, webpack/Turbopack actual pages (51 each), hooks (10), browser storage (57), actual proxy (6), both migration entries (5 each), and 270-file unpacked SDK/Worker/type/peer/doc checks pass. Per-requirement T01–T36 assertions and limitations are in Endoleap headless/FINAL_ACCEPTANCE.md; service evidence is in headless/SERVICE_ACCEPTANCE.md.
Limits and merge status
The worker fixture supplies deterministic generation output through the actual worker protocol; external paid generation, billing, real CLI authentication and production background-loop behavior are not claimed. Browser fault tests and the real HTTP/DB consumer are separate evidence layers; this is not every operation/crash/browser combination. Cross-client permanent asset GC and full CRDT collaboration remain out of scope.
Both branches were checked against current main; merge-tree reports no conflict and the head commit status is success. This PR is ready for review and waits for the user to merge manually. Nothing here is merged or deployed by the bot.
WIP: Implement headless canvas operations and identity migrationto WIP: Add canonical headless canvas state and incremental synchronizationWIP: Add canonical headless canvas state and incremental synchronizationto Add canonical canvas edits, identity migration and idempotent resource/AI operations