<!-- task=m-iop-owned-single-request-agent-execution/25+23,24_claude_smoke_qualification plan=33 tag=REVIEW_API milestone-task=workspace-binding,claude-smoke -->

# Own Work structured output and make the smoke bytes explicit

## For the Implementing Agent

Resolve R32 and R33 together. Preserve all prior guards and the live-15 partial result as recoverable evidence, then remove only the active workspace result before preflight. Do not strip Markdown or relax completion decoding. Add a server-owned strict Work response format while retaining tool calls, and make the harness prompt explicitly require the terminating newline. Run all gates before exactly one `sole-live-16` with no retry.

## Archive Evidence Snapshot

- Prior pair: `plan_cloud_G10_32.log` / `code_review_cloud_G10_32.log`; verdict `FAIL`, R32/R33, `review_rework_count=31`, `evidence_integrity_failure=false`.
- `sole-live-15.rc-69`: one ingress, Plan success, two Work tool successes, Work validation error, cleanup, one validation terminal, no manifest, no retry.
- Canonical Work final correlation returned a Markdown-fenced JSON object. Partial result SHA-256 is `1e7f1d005ef7680d6a1c1055477c508133ea449a54c2134b1902c88543b82acb` and lacks the required terminating LF.

## Scope

- Modify `apps/edge/internal/openai/single_request_work_stage.go`, its test, `scripts/e2e-single-request-claude.sh`, and review evidence only.
- Keep strict completion decoding, tool/message allowlists, workspace authority, canonical dev, providers, configs, routes, and credentials unchanged.
- Work owns `response_format`; stage options may neither override it nor introduce case aliases.

## Implementation Checklist

- [x] Add the exact closed Work completion JSON schema and serialize it as server-owned `response_format` alongside tools.
- [x] Reserve `response_format`, reject aliases, ignore canonical override input, and test the exact emitted schema/tool coexistence.
- [x] Require a terminating newline in the live smoke prompt and prove the fake Claude receives that exact prompt.
- [x] Run fresh local and isolated remote formatting, focused/package/race/Edge/build plus harness self-test gates.
- [x] Preserve the live-15 partial result recoverably, clear only the active result, sync exactly three files, rebuild/restart disposable Edge, refresh identities, and pass provider-free gates.
- [x] Execute/finalize exactly one `sole-live-16` and validate complete S12 evidence or closed failure, with no retry.
- [x] Fill every implementation-owned review section.

## Final Verification

1. `gofmt -w` the two Go files.
2. Run the focused Work tests, OpenAI package, focused race, all Edge tests, and Edge build.
3. Run `./scripts/e2e-single-request-claude.sh --self-test`.
4. Repeat relevant Go/harness gates on the isolated dev source, build Darwin arm64 Edge, refresh exact worktree/binary/runtime evidence, and restart only disposable Edge.
5. Require fifteen finalized guards, zero started guards, no active result/manifest, healthy identities/catalog/count-token/preflight, and zero provider activity.
6. Run one `sole-live-16`; PASS requires ingress 1, Gemini → ornith-fast → Gemini, exact newline-terminated file, verifier success, cleanup, one successful terminal, and schema-valid redacted manifest.
