Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,12 @@ explicit start signal.
| Chunk | Title | Risk | Gate | Status |
|---|---|---:|---|---|
| `WS-REV-001-PLAN` | Review And Revision Lifecycle Planning | L1 | None | Merged through PR #128 at trusted main `0302bcf854a565d429e232ad6b076a1931ea74e4` |
| `WS-REV-001-01` | Canonical Contract Adoption And Dependency Conformance | L1 | Plan approval; current-main refresh; merged WS-XINT-001 handoffs, AUTH PR #140 planning contracts, AUTH-09A/09B foundations, and CON-01 canonical contract adoption | Active on `codex/ws-rev-001-01` |
| `WS-REV-001-02` | Locked Review Policy And Task Lifecycle Alignment | L1 | AUTH canonical actor foundation; separately reviewed and merged AUTH-owned schema-only contributor-field foundation that breaks the current AUTH-13/14 <-> REV-09A cycle; ART submission commitment contract stable; canonical rejected/cancelled lifecycle amendment; D6 behavior approved | Proposed |
| `WS-REV-001-03` | Review Queue And Lease Persistence | L1 | 02 merged; WS-CON ContributionPolicyVersion persistence merged | Proposed |
| `WS-REV-001-01` | Canonical Contract Adoption And Dependency Conformance | L1 | Plan approval; current-main refresh; merged WS-XINT-001 handoffs, AUTH PR #140 planning contracts, AUTH-09A/09B foundations, and CON-01 canonical contract adoption | Merged through PR #145 at trusted main `b2b9016d5fee33ddca40882c97620a178d8e52f0` |
| `WS-REV-001-02` | Locked Review Policy And Task Lifecycle Alignment | L1 | Parent explicitly started; required L1 plan review | Split before runtime; non-executable parent |
| `WS-REV-001-02A` | Project Guide Activation Sequence And Publication Locking | L1 | AUTH-09D-A and the subsequent AUTH-owned contributor-field foundation merged; exact dependency SHA/head refresh; separate human start | Planning prepared; runtime blocked |
| `WS-REV-001-02B` | Locked Review Policy And Dormant Task Lifecycle Compatibility | L1 | 02A merged; approved preference/lease duration defaults; separate human start | Proposed |
| `WS-REV-001-02C` | Submission Attribution, Context, And Immutable Lineage | L1 | 02B merged; exact AUTH contributor/human-lineage constraints present; separate human start | Proposed |
| `WS-REV-001-03` | Review Queue And Lease Persistence | L1 | 02C merged; WS-CON ContributionPolicyVersion persistence merged | Proposed |
| `WS-REV-001-04` | Immutable Review, Final Acceptance, Findings, And Replay Persistence | L1 | 03 merged; shared transactional-outbox persistence and caller-transaction lifecycle-audit participant merged at exact refreshed SHAs | Proposed |
| `WS-REV-001-05` | Checker Admission, Preferred Routing, And Queue Views | L1 | 04; ART v2 submission/checker cutover; AUTH-10 reviewer grants and AUTH-11 project visibility; registered actions remain planned; hidden manifest later gates `WS-AUTH-001-REV-05` | Proposed |
| `WS-REV-001-06` | Atomic Claims, Release, Preference, And Timers | L1 | 05; merged `WS-AUTH-001-REV-CUSTODY` and `WS-AUTH-001-PREP`; merged AUTH-09A foundation and AUTH-09B provisioning capability plus exact expiry identity extensions/provisioning and AUTH-09E admission from the merged REV-01 manifest; WS-CON ReviewLease ContributionPolicyVersion freeze participant; hidden manifest later gates `WS-AUTH-001-REV-06` | Proposed |
Expand All @@ -30,7 +33,7 @@ explicit start signal.
## Dependency order

```text
PLAN -> 01 -> 02 -> 03 -> 04 -> 05 -> 06 -> 07 -> 08 -> 09A -> 09B -> 10 -> 11 -> 12 -> 12A -> 13
PLAN -> 01 -> 02(parent split) -> 02A -> 02B -> 02C -> 03 -> 04 -> 05 -> 06 -> 07 -> 08 -> 09A -> 09B -> 10 -> 11 -> 12 -> 12A -> 13
```

External initiative gates are inserted without changing same-initiative
Expand All @@ -43,15 +46,16 @@ WS-REV-001-01 active contract and immutable registration/service manifests
-> corresponding REV mutation/service chunks may consume registered actions
and exact identities while every action remains unavailable

AUTH canonical human plus an AUTH-owned schema-only contributor-field foundation
AUTH-09D-A plus AUTH canonical human and the subsequent AUTH-owned
schema-only contributor-field foundation
+ merged AUTH-08 transaction/error/timestamp invariants
+ ART v2 stable contracts
-> WS-REV-001-02
-> WS-REV-001-02A -> WS-REV-001-02B -> WS-REV-001-02C

WS-REV-001-02
WS-REV-001-02C
-> WS-CON exact attribution consumption and retired compensation-context field removal

WS-REV-001-02 + merged WS-CON ContributionPolicyVersion persistence
WS-REV-001-02C + merged WS-CON ContributionPolicyVersion persistence
-> WS-REV-001-03

WS-REV-001-03 + merged CON-owned shared transactional-outbox persistence
Expand Down Expand Up @@ -88,8 +92,9 @@ REV planning does not create or start it on ART's behalf.
## Chunk boundaries

- 01 changes contracts and active documentation, not runtime behavior.
- 02-04 land persistence and constraints, including immutable FinalAcceptance,
without public review mutations.
- 02 is a non-executable split record. 02A-02C and 03-04 land bounded
persistence and constraints, including immutable FinalAcceptance, without
public review mutations.
- 05-07 build routing, leases, and evidence consumption behind an unavailable
production composition boundary; registration remains availability-neutral.
- 08 freezes decision inputs, validation, task effects, and the
Expand All @@ -110,14 +115,15 @@ REV planning does not create or start it on ART's behalf.

Every chunk: senior engineering, QA/test, security/auth, and product/ops.

Add architecture and reuse/dedup to 01-13. Add docs to PLAN and every chunk that
changes schema, routes, runtime jobs, configuration, or active behavior: 01-13. Add
test-delta to every runtime chunk. Add CI integrity whenever a
Add architecture and reuse/dedup to 01-13, including split children 02A-02C.
Add docs to PLAN and every chunk that changes schema, routes, runtime jobs,
configuration, or active behavior. Add test-delta to every runtime chunk. Add
CI integrity whenever a
workflow, script, dependency, or coverage gate changes.

## Stop condition

Planning is approved and merged AUTH PR #140/AUTH-08/AUTH-09A plus
ART-02A2/ART-02A3 contracts are reconciled. Finish, review, and merge Chunk 01
with explicit human approval, then stop. Do not start Chunk 02 automatically;
its merge-intent gate remains separate.
Parent 02 planning may be reviewed and merged without runtime. Stop after its
automated memory names 02A. Do not start 02A until AUTH-09D-A and the subsequent
AUTH contributor foundation merge and the user provides a separate explicit
start. The duration defaults gate 02B, not 02A.
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ collected node IDs; a section is not complete based only on prose.
| 25.2 Queue routing | 03, 05-06, 09B, 11-12 | First-open, revision-preferred, immutable exact successful admitting-CheckerRun anchor, admission-versus-supersession both race orders, duplicate delivery, active preference conflict, expiry/decline/invalidation age preservation, admin time-limited assignment, preferred-before-open, current returns one/lease/none, arbitrary or stale ID denied | Existing `review_pending` activation scan, legacy remediation report, preferred return/takeover, admin assignment, operational counts/ages |
| 25.3 Leases | 03, 06, 11 | One lease per queue and canonical human `ActorProfile.id`; immutable ReviewPacketManifest; frozen reviewer ContributionPolicyVersion independent of guide context; release/expiry distinction, database time, exact reviewer-revocation effects with submitter/adjudicator grants unchanged, service/human isolation, races in both permutations, rollback injection | Claim/release/expiry/reclaim/revocation with AUTH-09E-admitted service jobs and lazy recovery enabled |
| 25.4 Reviews | 04, 08, 10 | Every decision appends one immutable Review; every submitted finding and later resolution is immutable; later rounds append rather than rewrite; canonical human reviewer identity; lease/queue/packet-manifest linkage; ReviewEvidenceArtifact slots; finding rules; reject reason; idempotency; CON reviewer operation runs before the decision branch; an `accept` Review additionally creates one immutable FinalAcceptance with unique task/Review/Submission and exact ReviewPolicy/actor lineage, then invokes the CON submitter operation; exact locked Review/Submission/lease/assignment/actor/ContributionPolicyVersion/stabilized artifact_hash lineage; reviewer contribution direct from Review, submitter contribution only from FinalAcceptance; REV-staged audit/outbox; no ART call or no-op participant; rollback | needs_revision without FinalAcceptance, accept with exactly one FinalAcceptance, reject without FinalAcceptance, exact contribution source shapes and task/assignment effects for all three decisions, explicit unpaid/payable awards, changed replay, revoked replay, crossed-lineage rejection, and atomic rollback across Review, the accept-path FinalAcceptance, contributions, and outbox |
| 25.5 Revisions | 02, 04, 09A-09B, 13 | Immutable same-task N-1 Submission chain; strict prepared cutover; immutable guide activation sequence; equal identity/sequence keeps and any different current active guide rebases; every preparation episode is bound to its Review/prior Submission/task/assignments/project and forms one non-branching chain; AUTH-13 replacement appends a target-assignment successor; preparation freezes guide/source/task-execution policy but no ContributionPolicyVersion; Submission N+1 and CheckerRun use the frozen context; TaskAssignment and ReviewLease contribution-policy freezes do not drift; Task Context uses the head; no reviewer rebase; all blocking findings answered/resolved | v1 guide context -> needs_revision -> same/forward/backward/unsafe classification -> optional authority-loss replacement -> prepared v2 context without contribution-policy drift -> contributor context -> checker readmission -> reviewer consumes v2 -> resolution -> accept |
| 25.5 Revisions | 02A-02C, 04, 09A-09B, 13 | Immutable same-task N-1 Submission chain; strict prepared cutover; immutable guide activation sequence; equal identity/sequence keeps and any different current active guide rebases; every preparation episode is bound to its Review/prior Submission/task/assignments/project and forms one non-branching chain; AUTH-13 replacement appends a target-assignment successor; preparation freezes guide/source/task-execution policy but no ContributionPolicyVersion; Submission N+1 and CheckerRun use the frozen context; TaskAssignment and ReviewLease contribution-policy freezes do not drift; Task Context uses the head; no reviewer rebase; all blocking findings answered/resolved | v1 guide context -> needs_revision -> same/forward/backward/unsafe classification -> optional authority-loss replacement -> prepared v2 context without contribution-policy drift -> contributor context -> checker readmission -> reviewer consumes v2 -> resolution -> accept |
| 25.6 Reject | 08, 10 | Queue close, lease consume, same-task assignment block, task `rejected` with bounded reason, grants unchanged, other tasks unaffected, later version denied, reviewer contribution only | Authorized reject plus API/database/audit/CON agreement; no `closed` status token or synthetic Review |
| 25.7 Recovery | 06, 09A, 11, 12A | Idempotent preference/lease sweeps and lazy repair; every actor/grant/self-review/policy invalidation; reason-bound covered Project Manager preparation-successor repair with stale-head/race proof; separate covered Project Manager D6 closure only after server-proven limit/deadline, with Operator/cross-project/not-reached denial; leased-without-active and consumed-without-Review detection; canonical reconciliation identity/generation with one unresolved partial uniqueness, duplicate/concurrent scan reload, one resolution, and post-resolution recurrence; Operator-only evidence-linked closure for legacy needs_revision without Review/root; no synthetic Review or silent immutable rewrite; persisted joint lifecycle phases, shared/exclusive advisory-lock mutation fencing, bounded drains, callbacks-through-drain, crash resume, and forward-only timeout recovery | Service-job loss/restart, revocation, preparation repair, D6 closure/replay/races, duplicate reconciliation, legacy unrecoverable closure, controlled recurrence, reconciliation alert, durable fence/drain/crash-resume/forward-reactivation procedure |
| 25.8 Artifact evidence | 05-09B, 11 | ART v2 only; active-lease read limited to immutable ReviewPacketManifest; chain history metadata-only; expired/consumed/prior/later/sibling/cross-task/project access denied; exact ReviewEvidenceArtifact finding/response slots; ART candidate intake outside locks then AUTH -> REV -> ART database finalization with one final AUTH evaluation; exact `artifact.review_evidence.binding.create` service action and binding identity; no raw store, v1 retention, generic retrieval/binding-read, provider locator, or human-token forwarding | Current packet bounded stream, prior history without bytes, finding/response finalize, orphan-only failed races, outage/integrity block with no adverse decision, ART-owned recovery, LocalStorage/MinIO/S3 conformance |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -129,13 +129,14 @@ They are replaced in chunk 09A with direct project/guide/policy/context
integrity constraints and a Submission-to-preparation binding. The original
WorkstreamTask locks and all earlier Submissions remain unchanged.

Guide ordering never compares version strings. Chunk 02 adds a per-project,
Guide ordering never compares version strings. Chunk 02A adds a per-project,
monotonic immutable `activation_sequence`. Existing active/superseded guides are
backfilled deterministically from effective time, creation time, and ID under
migration validation; drafts remain null until first activation. Active or
superseded state requires a non-null sequence, draft state requires null, and a
sequence is allocated exactly once while locking the project. Task, preparation,
and Submission contexts stamp guide ID, version, and activation sequence. Equal
sequence is allocated exactly once while locking the project. Task stamps guide
identity in 02A, Submission stamps it in 02C, and later preparation stamps it in
09A. Equal
identity/sequence keeps. Any different currently active guide identity/sequence
rebases, including an intentional backward rebase to an older activation
sequence. An internally inconsistent pair whose identity and activation sequence
Expand Down Expand Up @@ -481,3 +482,33 @@ are one registered planned submission action, 19 registered planned review
actions, and four approved but unregistered additions; none is active. The
separate ART review-evidence binding proposal is not one of the 24, so future
counts remain current-main-derived rather than a promised fixed total.

### D21 - Parent REV-02 Is Split And AUTH Contributor Ownership Remains Prior

The user explicitly started parent REV-02, but required L1 plan review found the
combined guide, policy/lifecycle, and Submission migration unreviewable as one
chunk. Parent 02 is therefore a non-executable split record:

```text
02A guide activation sequence/publication locking
-> 02B immutable review/revision policy and dormant task/assignment states
-> 02C Submission attribution/context/immediate-predecessor immutability
```

AUTH owns migration `0026` for AUTH-09D-A. After 09D-A merges, AUTH owns the
separately reviewed contributor-field foundation from the then-current head.
That foundation clean-cuts both retired task-subsystem contributor-identity
fields to `contributor_id`, preserves current behavior, and supplies database-backed
canonical-human ActorProfile lineage. REV records its exact merged PR/SHA and
constraint contract before generating any child migration; REV never supplies a
parallel rename, compatibility alias, or ActorProfile constraint.

02B keeps terminal Task/Assignment values dormant. It adds no transition into
`accepted`, `rejected`, `completed`, or `blocked`, and no reject Review FK.
The Review decision/task participant owns those effects after immutable Review
persistence exists. The later reason-bound administrative command owns the
`cancelled` edge. D6 continues to prohibit synthetic reject.

The review preference and lease durations are independent positive policy
values. Neither may be inferred from `ReviewPolicy.sla_hours`; their exact v0.1
migration defaults remain a human decision before 02B can start.
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,24 @@ AUTH-owned schema-only contributor-field foundation before REV-02. REV-09A
hidden behavior then precedes amended full AUTH-13/14 product cutovers. This is
an AUTH repair gate, not permission for REV to rename AUTH-owned fields.

The 2026-07-18 parent-02 start audit against exact main `b2b9016d5fee33ddca40882c97620a178d8e52f0`
confirmed that the foundation is not yet present. Alembic head is
`0025_artifact_store_v2`; TaskAssignment and Submission still store
unconstrained retired contributor-identity strings; no contributor-foundation merge intent,
PR/SHA, migration, or database-backed child human-lineage constraint exists.
AUTH now owns migration `0026` for AUTH-09D-A profile lifecycle. The user
directed AUTH to make the contributor foundation its next priority after 09D-A,
from the then-current head, and authorized REV only for non-runtime planning and
test design meanwhile.

The same required L1 plan review found parent REV-02 too broad. Guide activation
chronology/publication, review policy/dormant lifecycle, and Submission
attribution/lineage are three independent migration boundaries. The executable
work is therefore split into 02A, 02B, and 02C; parent 02 records no runtime.
Two policy inputs remain absent from every source reviewed: concrete v0.1 values
for the review preference window and review lease duration. They are explicit
human decisions and cannot be inferred from `ReviewPolicy.sla_hours`.

Merged AUTH reconciliation PR #140 is planning-only. Its `74` PermissionId /
`57` ActionId / `9` active / `48` planned snapshot is now historical because
AUTH-09A PR #132 added eight planned actions. PR #140 defines
Expand Down
Loading
Loading