- Walked: 2026-05-29 by Claude against commit
bf12b0f7d8; that pass verified the then-current access gate and operator queue surface. - Reconciled: 2026-07-18 against the current journey, Studio fixture, decision component, release-stream BFF, audit store, and focused browser suites. This was a source reconciliation, not a fresh runtime walk.
- Verdict: partial — deep automation proves the current fixture-backed review workspace and real audited approve/request-changes release-stream seam. It does not prove author submission, live queue ingestion, automated pre-review, artifact-specific rejection, final publication, provenance emission, author delivery, or customer readback.
- Primary specs:
operator-studio-surface.spec.ts,editorial-release-streams.spec.ts, andoperator-editorial-review-approval.spec.ts.
Result at a glance#
| Evidence lane | Current result | Authority limit |
|---|---|---|
| Review queue and artifact | Seven-row fixture queue, fixed TR-047 detail, waveform, transcript, notes, citations, and gate |
No author submission, live ingestion, or selectable artifact data |
| Approve decision | Creates a real hotfix release stream and patches it from pending to in_progress |
Does not publish at 06:00 or create a customer edition |
| Request changes | Requires a 20-character rationale and records a blocked stream with the rationale | Does not notify the author or attach to an editable draft |
| Audit and validation | Scope, invalid-blocker, terminal-transition, BFF-failure, and audit-readback branches are covered | Artifact-level idempotency and concurrency remain open |
| Reject/retract | Adjacent /operator/admin decision panel records audited reject/retract decisions |
Not the TR-047 editorial lifecycle |
| Publish and provenance | Not implemented by this seam | No final gates, edition write, Isis bundle, or customer readback |
Evidence map#
The visible label contains the word “publish,” but the current write stops at an in-progress release stream. The diagram keeps the fixture, durable seam, and missing customer-release leg separate.
flowchart LR
A[Author submission] -. not connected .-> B[Seven-row fixture queue]
B --> C[Fixed TR-047 workspace]
C --> D{Operator decision}
D -->|approve| E[Create hotfix stream]
E --> F[Patch to in_progress]
D -->|request changes| G[Create hotfix stream]
G --> H[Patch to blocked with rationale]
F --> I[Audit receipt]
H --> I
J[Adjacent admin reject] -. different artifact seam .-> I
I -. no final gate .-> K[Published customer edition and Isis provenance]
Proven observations#
Current review workspace#
/operator/studiois protected by the operator gate and renders the Lilith Studio / Editorial context, seven fixture rows, one selected Tara artifact, transcript and deterministic waveform, four seeded notes, and three seeded citation rows.- Citation statuses are visible in text rather than color alone. The focused suite also pins 44 px row sizing, the decision entry point, mobile behavior, and anonymous redirect.
- Queue rows are currently non-interactive orientation rows. Selecting another row does not load a different artifact, note set, citation set, or decision target.
Real release-stream decisions#
- The approve branch creates a
hotfixstream forTR-047, then patches the stream frompendingtoin_progress. The UI shows the returned stream id and state and restores its visible receipt from localStorage after reload. - The request-changes branch reveals a rationale field, blocks fewer than 20
trimmed characters, then records a stream as
blockedwith blockerotherand the supplied rationale. - The BFF rejects missing editorial scope, blocked-without-blocker mutations, and post-terminal reopening without mutating canonical state or fabricating audit rows. UI network failures remain explicit and do not invent a receipt.
- Created and transition audit events are read back from the real audit route. These receipts prove release-stream state, not final content publication.
Adjacent decision evidence#
/operator/adminhas a separate decision panel with rationale validation, reject/retract writes, readback, and reopen behavior. That is useful shared operator infrastructure.- The adjacent panel does not reject
TR-047and cannot close the missing artifact-specific policy, appeal, and queue-state path.
Boundaries and gaps#
- Fixture review is not live editorial ingestion. The queue, selected artifact, automated note, citations, waveform, and transcript are seeded. There is no author-side submit endpoint feeding this workspace.
- Approve is not publish. “Approve · publish 06:00” creates an in-progress hotfix stream. It does not schedule or perform a 06:00 release, rerun policy gates, write a customer edition, or verify customer visibility.
- A local receipt is not server rehydration. The release stream is real, but the component restores its visible receipt from localStorage instead of fetching the stream on mount.
- Reopen is only a view reset. It does not cancel or reverse the already- created BFF stream.
- Request changes stops before collaboration. No author notification, editable-draft link, assignment, due date, or resubmission path is driven.
- Adjacent reject is not artifact reject. The admin-inbox panel uses a different decision substrate and must not be described as rejecting the Studio artifact.
- Publication proof is absent. There is no final rights/citation/policy check, customer-surface write, Isis provenance bundle, cross-surface readback, or linked end-to-end audit chain.
- Concurrency is undefined. Local reopen can permit multiple streams; artifact-level idempotency, stale reviewer state, and double approval are not closed.
Re-run evidence#
The current focused suite can be run serially with:
bash
PW_BROWSER_CHANNEL=chrome pnpm exec playwright test \
-c apps/oshun/web/playwright.config.ts \
apps/oshun/web/e2e/operator-studio-surface.spec.ts \
apps/oshun/web/e2e/editorial-release-streams.spec.ts \
apps/oshun/web/e2e/operator-editorial-review-approval.spec.ts \
--workers=1
It requires the real-development-infrastructure web/BFF harness. A green run proves the workspace presentation and audited release-stream decision seam; it must not be summarized as a complete submit-to-publish journey.
Source trail#
- Source-reconciled journey
- Operator Studio surface suite
- Release-stream browser and BFF suite
- Adjacent admin decision suite
- Studio review component
- Operator workspace component
- Fixture data
- Release-stream route
Cross-references#
- Operator Studio view
- Operator admin view
- Isis provenance view
- Citation-drift result
- Lilith Studio-to-Tara publish journey
- Journey coverage matrix
Open questions#
- What author-scoped submit contract creates the durable artifact identity and feeds a live, selectable operator queue?
- Should the current approve button be relabeled until scheduling/publication exists, and must approval collect an explicit reviewer rationale?
- Which automated Lilith/Sophia evidence, policy versions, reviewer roles, and second-opinion rules become part of the durable review record?
- How will artifact-specific reject, appeal, resubmission, and author delivery connect to the same lifecycle rather than the adjacent admin panel?
- What final gate atomically binds release authorization, customer edition, Isis bundle, audit chain, and cross-surface readback?
- Which idempotency and concurrency rules prevent duplicate streams or stale approvals when two reviewers act on the same artifact?