diff options
| author | soryu <soryu@soryu.co> | 2026-05-08 11:29:20 +0100 |
|---|---|---|
| committer | soryu <soryu@soryu.co> | 2026-05-08 11:29:20 +0100 |
| commit | b5811ad26a94f48ddab45251e44861f5595a7b95 (patch) | |
| tree | aab8268536bd63d1751d923562dfb214946652e7 /install.sh | |
| parent | 928598b1b8399a95918dc1b315274a9d175eb8d9 (diff) | |
| download | soryu-unified-contracts-backbone.tar.gz soryu-unified-contracts-backbone.zip | |
feat(directives): unified contracts surface — backboneunified-contracts-backbone
This is the backbone PR for the unified directive workflow. A directive
holds a sequence of contracts; each contract is a spec body whose
execution drives tasks in the directive's shared worktree. Lifecycle
(Lock & Start, queue scheduler, drag-reorder) lands in follow-ups.
What's in this PR:
- Migration adds `position` (queue order) and `merge_mode`
(shared|own_pr) columns to directive_documents. The actual table
rename is deferred — the legacy `contracts` table from the old
contracts system still exists, and the rename collision waits for
Phase 5 to drop legacy contracts.
- Repository: list orders by position; create assigns next-position;
update accepts merge_mode; new reorder_directive_document_position
shifts siblings inside a transaction.
- HTTP: endpoints aliased under /api/v1/directives/{id}/contracts and
/api/v1/contracts/{id}/... with a new /contracts/{id}/reorder.
- Frontend: api types renamed `DirectiveContract*` (avoiding the
legacy `Contract` type collision); document-directives.tsx imports
via aliases so the rest of the file is untouched.
Internal struct + table names stay `DirectiveDocument` /
`directive_documents` until the legacy contracts cleanup.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'install.sh')
0 files changed, 0 insertions, 0 deletions
