# Release resumption — 2026-09-08

Baseline inspected: `05066fc` on `ops/argus-extraction-v1-red`, with the existing uncommitted
Documents/Uploads integration. The round-three reports reviewed `81ab4fc` and both returned
REVISE. Later commits `2d41c7b`, `ed7658b` and `05066fc` carry fixes and a new fingerprint;
they are not themselves independent acceptance of those fixes. No later ACCEPT was found.

The owner accepted a fresh sealed end-to-end set for persistence; see
`persistence-acceptance-decision-260908.md`. This does not alter extraction-v1 D-EX-7.

Fresh integration check: Browser suite with Playwright enabled, 145 total, 140 passed and
5 failed. Failures are in `HarnessLifecycleTests`: global capacity (Starting vs Created),
lease renewal (null lease), streaming completion (timeout), timeout outcome (timeout), and
first-prompt conversation (Assistant vs System message). The Uploads/tab/Playwright checks
passed. Do not carry yesterday's all-green result forward as this candidate's result.

An isolated rerun of capacity, lease renewal and first-prompt provenance passed 3/3. This
suggests suite/host interference, not a confirmed deterministic regression; it does not clear
the full-suite failure. The suite creates multiple independent hosts against shared Preview
tables, and each host starts a global stale-execution sweeper. Investigate test-host isolation
and execution lease timing before changing runtime behavior or relaxing assertions. This was an
initial hypothesis, not a proven cause; the confirmed test race and fresh results follow below.

Additional release-preparation mismatch found by inspection: `Prepare-Deploy.ps1` prints
`CANDIDATE=$Commit`, but guide §7.2 describes that output as the value for both `-WorktreeRoot`
and `-ExpectedCandidateCommit`. The former needs a directory; the latter needs the SHA. The
script's final launcher line distinguishes them. Resolve the guide/output naming before
an operator follows the summary literally. The script also removes an existing candidate
worktree with `--force`; use a fresh, explicitly checked candidate path, not a concurrent
session's worktree. The preparation script was inspected, not executed.

Next gate: diagnose the regression failures, settle independent closure-review ownership,
then bind acceptance and release preparation to the actual integrated candidate. No merge,
push, migration, release activation, service restart or production-document mutation was
performed during this resumption.

## Fixes and independent closure

The owner authorized fixing the findings, rerunning regression and returning to the reviewers.
The integrated working tree contains these follow-up fixes:

- Publisher facts output supplies the sixth formatting argument, `ClaudeCliPath`.
- Preparation refuses existing gate/candidate paths and overlapping destinations before work;
  no forced worktree removal remains. Native command failures stop preparation, archive creation
  and extraction are checked separately, and candidate directory/SHA outputs are distinct.
- Register duplicate rulings append independent declarations. A filename, even one containing
  the intake suffix, cannot establish predecessor identity. No historic declaration is changed.
- The capacity test waits through the valid asynchronous `Created` state for `Starting`, while
  still rejecting `Running`. It releases and drains owned executions before deleting fixture rows.
  The immediate state assertion was the confirmed race; no production harness change was needed.
- Current reserve help, tests, flags narrative and decision text explicitly state that extraction
  v1 has no held-out validation result. The eight-of-ten deny-rule result, adjusted-cell denominator
  and removed-cell limitation are corrected. No expected extraction values or scoring rules changed.

Both independent reviewers returned **ACCEPT for code/documentation fix closure** after rechecking
the working tree. This is not production deployment approval. The earlier committed fingerprint
on `05066fc` does not bind these changes, including the explanatory text in the flags file.
Previous score artifacts remain historical; no live extraction sitting or rescore was run here.

## Fresh verification, 2026-09-08

Executed `powershell -NoProfile -File local/test.ps1` without a test filter, with:

```powershell
$env:SIBYLA_PLAYWRIGHT_MODULE = 'C:/Users/Administrator/AppData/Local/npm-cache/_npx/e41f203b7505f1fb/node_modules/playwright/index.mjs'
$env:SIBYLA_PLAYWRIGHT_BROWSER = 'C:/Users/Administrator/AppData/Local/ms-playwright/chromium-1228/chrome-win64/chrome.exe'
```

| Suite | Passed | Failed | Skipped |
| --- | ---: | ---: | ---: |
| Platform | 494 | 0 | 0 |
| Argus | 236 | 0 | 0 |
| Browser, including Playwright | 145 | 0 | 0 |
| API | 56 | 0 | 0 |
| TenantIsolation | 57 | 1 | 0 |
| Total | 988 | 1 | 0 |

The command exited nonzero, correctly: `PreviewHasExactlyTheSameMigrations` reports that Preview
has `20260908014913_ExtractionV2RegisterEntryCodeWidth` and Main does not. This is an outstanding
owner migration prerequisite, not a waived test. Main was not migrated in this task.

Additional checks: filtered `IngestionServiceHoldTests` passed 25/25; the offline
`local/deploy/tests/Test-PreparationSafety.ps1` passed the publisher-format regression and four
non-mutating preflight refusal cases. `git diff --check` passed.

Next: the owner applies the pending Main migration under the established runbook, then rerun the
unfiltered suite. Bind the integrated, committed candidate and fresh fingerprint before clean
publication. Host configuration checks, reviewer/release acceptance and the elevated interactive
maintenance-window launch remain required. No push, merge, production activation, service restart
or production-document mutation was performed during these fixes.

## Authorized migration follow-up, 2026-09-08

The owner then authorized the next step: apply the pending Main migration, rerun validation,
and prepare the release. A fresh parity check reproduced exactly the missing width migration.
`powershell -NoProfile -ExecutionPolicy Bypass -File local/migrate.ps1 -Target All` completed
successfully: Main applied `20260908014913_ExtractionV2RegisterEntryCodeWidth`; Main's other
context and both Preview contexts were already current. The forward change widens
`docint.register_entry_code` to nullable text; no data deletion or downgrade was performed.
The preceding missing-migration result is historical, not the state after this command.

The fresh unfiltered `local/test.ps1` run with the same Playwright environment completed with
exit code 0: **989 passed, 0 failed, 0 skipped** (Platform 494, Argus 236, Browser 145,
API 56, TenantIsolation 58). Migration parity is now green. The offline preparation-safety
checks also passed again. This integrated tree is ready to commit and publish as a clean
candidate; production activation remains a separate elevated interactive step outside the
09:00–15:00 UTC win-acme window. No deployment dry run or activation was attempted inside
that window.
