I read this as a read-only security audit of V14 one-use authority - I’ll trace preseal/preflight and source enforcement, inspect immutable artifacts and derivations, and return a strict evidence-backed PASS or FAIL without executing live paths.


The artifact set is internally labeled r2, but the live bootstrap source is not yet proven r2-bound; I’m tracing that call chain and the reservation/expiry ordering now, since either mismatch is dispositive.


I read this as a read-only V14 r2 authority audit - I traced the sealed artifacts and live call chain without modifying state or invoking live execution.

# FAIL

The artifacts themselves are intact, but V14 r2 is not bound to a single executable live target and its advertised live entrypoint is unusable.

## Passing evidence

- **Package digest:** canonical SHA-256 of `preflight-v14-live-representative-r2/package.json.payload` is exactly
  `66d7ef8b46700e703ceb4dd4c8aa0e832f60e48999974fa6b6f32d6cf73d2b24`.
- **Exact phrase:** package and sealed target both contain
  `AUTHORIZE NUTRICOACH V1.5 LIVE UPGRADE 66d7ef8b46700e703ceb4dd4c8aa0e832f60e48999974fa6b6f32d6cf73d2b24`.
- **Package file SHA-256:** observed `63faebb387b013be6da1d92def7cd06da0bda234296b43d116fd535ee1497f2c`, matching `sealed-target.json`.
- **Preseal inventory:** every entry in `package-manifest.json` matched its observed SHA-256.
- **Untouched roots:** all absent:
  - `live-authorization-v14`
  - `live-executions-v14`
  - `.strict-runtime/f4198225-v150`
- **Expiry ordering in intended controller:** `nutricoach_v150_sealed_controller.py:155-168` checks the authority window before constructing and reserving `GlobalLedger`.
- **Replay primitive:** `nutricoach_v150_sealed_authority.py:192-209` rejects consumed authority and uses `O_CREAT|O_EXCL` for reservation.
- **Prior non-reuse metadata:** V12 `4627...`, V13 `25ca...`, and rejected V14 `21e9...` all have `approval_phrase_reusable:false`; V12 is additionally marked consumed.

## Dispositive failures

1. **Caller-controlled live target path exists.**
   - `nutricoach_v150_detached_bootstrap.py:141-150` requires caller-supplied `--preseal`.
   - It derives the executed target from that argument at lines 152-164.
   - `nutricoach_v150_controller_worker.py:26-28` independently accepts caller-supplied `--sealed-target`.
   - `execute_verified_target(approval, sealed_target)` at `nutricoach_v150_sealed_controller.py:214-240` consumes paths, ledger root, execution root, and successor root from that supplied document.

   Therefore a phrase is not globally one-use: a self-described preseal/target can select a fresh ledger root.

2. **The advertised live launcher cannot invoke the bootstrap.**
   - `execute_nutricoach_v150_sealed_live.py:47-50` passes only `--approval`.
   - The bootstrap requires `--preseal` at `nutricoach_v150_detached_bootstrap.py:141`.
   - Result: argparse denial before any r2 binding or reservation.

3. **The compile-time live entrypoint remains bound to V13.**
   - `nutricoach_v150_sealed_controller.py:41-45` sets `SEALED_TARGET` under `live-transaction-preseal-v13-weekly-authority`.
   - `execute_authorized()` uses that target at lines 243-245.
   - `tests/test_nutricoach_v150_live_binding.py:28-30` explicitly asserts this V13 binding.

4. **Even manually selecting r2 reaches an incompatible legacy package validator.**
   - `execute_verified_target()` calls `inspect_package()` at lines 235-239.
   - `inspect_package()` requires sibling `awaiting-authorization.json` at `execute_nutricoach_v150_live_upgrade.py:57`.
   - That file is absent from `preflight-v14-live-representative-r2`.
   - It also expects payload fields `evidence`, `target`, and `snapshots`; the r2 payload contains none of them.

5. **Controller closure is incomplete.**
   `controller-source-manifest.json` omits directly imported authority-critical files, including:
   - `scripts/nutricoach_v150_sealed_authority.py`
   - `scripts/nutricoach_v150_phase_journal.py`
   - `scripts/nutricoach_v150_sealed_target.py`
   - `scripts/execute_nutricoach_v150_live_upgrade.py`
   - `scripts/execute_nutricoach_v150_sealed_live.py`

No files were modified and no live path was executed.