Land attended sitting create now that CCR-2026-0026/0027 is live.

Platform verified create-only exchange; this shell cannot POST.
create_sitting_approvals.py requires attended reader, skips c01, and
refuses a non-loopback approval origin. Dry-run lists the seven memos.

Assistant: grok
Assistant-Session: 01a09dc1-b21e-77e1-919e-fcad2f82b267
This commit is contained in:
tegwick 2026-09-15 22:19:25 +02:00
parent 8c03eb85c0
commit c3742e27d2
8 changed files with 318 additions and 16 deletions

View file

@ -61,9 +61,18 @@ Open in this order. One question each. No approve-all.
1. `uv run python tools/sitting_bind_preflight.py --origin https://decisions.coulomb.social`
`live_accept` must stay `open`.
2. Owning requester creates eight `human_control=true` objects, required_count 1,
no entries. Carry the native id and `binding.digest`; do not invent a digest.
Platform custody (unallocated CCR): `docs/sitting-requester-custody-request.md`.
2. Sitting requester is **live** (CCR-2026-0026/0027, exchange proof 2026-09-15).
Create seven objects from an **attended** reader session (skips `c01`):
```sh
kubectl -n approval-engine port-forward svc/approval-engine 18281:8080
warden access informed-decision-sitting-requester-login --exec -- \
env INFD_APPROVAL_ORIGIN=http://127.0.0.1:18281 \
uv run python tools/create_sitting_approvals.py
```
Dry-run (this shell): `uv run python tools/create_sitting_approvals.py --dry-run`.
Do not invent a digest. `c01` stays off this client until decided.
3. `uv run python tools/attach_compact_bindings.py --principal <exact-keycape-sub> --receipt <created.json>`
writes `bound/` copies. Unsigned drafts stay unsigned.
4. Flex Auth admits a **new** package pinning those eight `memo:` ids to the

View file

@ -8,6 +8,6 @@
"infd-batch-2026-09-14-decisions"
],
"memo_count": 8,
"bind_path": "INFD-WP-0001-T08 historically proven; live accept open 2026-09-14T22:16:07Z; sitting not admitted",
"note": "Unsigned drafts. Live accept reopened after audit-core rollout. Remaining: native approval receipts, live KeyCape subject, new Flex Auth package (not the T03 three-record mandate), then a human sitting. Operator packet: OPERATOR.md."
"bind_path": "live accept open; sitting-requester live; attended create not yet run",
"note": "Unsigned drafts. CCR-2026-0026/0027 applied and create-only exchange proof verified 2026-09-15. Next: attended tools/create_sitting_approvals.py (skips c01), then Flex Auth package, then human sitting."
}

View file

@ -16,6 +16,8 @@
"informed-decision-sitting-requester"
],
"tokenLifetime": "15m",
"status": "requested",
"applied": false
"status": "applied",
"applied": true,
"ccrs": ["CCR-2026-0026", "CCR-2026-0027"],
"exchange_proof": "railiance-platform/docs/evidence/2026-09-15-sitting-requester-exchange.json"
}

View file

@ -4,9 +4,10 @@
**For:** `key-cape` (same registration shape as `secrets-engine-requester`)
**Copied to:** `approval-engine` (`docs/keycape-service-registrations.md`
“no requester identity has been settled for `approval:create`”)
**Status:** requested 2026-09-14. **Not registered. Not in OpenBao. No secret
is in this repository.** Custody request (no CCR id):
`docs/sitting-requester-custody-request.md`.
**Status:** **applied 2026-09-15** (CCR-2026-0026/0027, KeyCape row live,
create-only exchange proof verified). No secret is in this repository.
Sittings are still INFD-WP-0002; platform did not POST. Attended create:
`tools/create_sitting_approvals.py`.
This is the missing presenter for compact Decision Memo sittings whose
protected side effect is a **work-record update** (`INFD-WP-0002-T04`), not a