Commit graph

124 commits

Author SHA1 Message Date
24ca1996eb chore(consistency): write back INFD-WP-0005 hub ids and WORK-RECORDS
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 3775@bnt-lap001
Assistant-Session: cfacb6a5-ad5b-4f79-ac67-053e3b0d34a3
2026-10-03 09:21:37 +02:00
a973d3656a INFD: frictionless decision intake design and workplan (CUST-WP-0075)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 3775@bnt-lap001
Assistant-Session: cfacb6a5-ad5b-4f79-ac67-053e3b0d34a3
2026-10-03 09:21:05 +02:00
a7ec5a5f87 chore(consistency): write back INFD-WP-ADHOC-2026-10-03 hub ids and WORK-RECORDS
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 3775@bnt-lap001
Assistant-Session: cfacb6a5-ad5b-4f79-ac67-053e3b0d34a3
2026-10-03 08:12:33 +02:00
custodian-sync
eaafa1d788 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-10-03:
  - update .custodian-brief.md for informed-decision

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 3775@bnt-lap001
Assistant-Session: cfacb6a5-ad5b-4f79-ac67-053e3b0d34a3
2026-10-03 08:12:28 +02:00
55fb078578 Draft provisioning-window sitting for hub decision D1 (CUST-WP-0075)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 3775@bnt-lap001
Assistant-Session: cfacb6a5-ad5b-4f79-ac67-053e3b0d34a3
2026-10-03 08:11:55 +02:00
5f14bc0e4c Minor update 2026-10-03 00:38:58 +02:00
8429e41fcb Refresh SCOPE.md: deployed, not a plan
Last full rewrite was 2026-09-11, when the file correctly said "nothing
is deployed." Sixteen days of production reality since then went
unrecorded here: the decision overview and its list action
(INFD-WP-0003/0004), the layer correction to Staff (GH-DEC-2026-017),
audit-core going live (AUDIT-WP-0009 finished), the walking-skeleton
proof landing (INFD-WP-0001-T08), and today's login fixes, requesting-
party field, and two approved declaration-form amendments.

Rewrote Status, Layer, and Open against directly-observed live state
(kubectl exec inspect, fresh pytest runs: 382/66 local, 440/8 with the
real Approval Engine) rather than carrying old numbers forward.
Corrected one line in Out of Scope that read as false now that the
overview exists (clarified it lists this repo's own memos, not an
approval-engine list capability). Tightened the decision_attributable
claim now that flex-auth can sign but this repository still doesn't
verify.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: sonnet
Assistant-Process: 169987@bnt-lap001
Assistant-Session: 322ef1ef-9048-4021-8570-b6d6f6347999
2026-09-27 22:57:32 +02:00
custodian-sync
8c0d16b163 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-09-27:
  - update .custodian-brief.md for informed-decision

Assistant: claude-code
Assistant-Model: sonnet
Assistant-Process: 169987@bnt-lap001
Assistant-Session: 322ef1ef-9048-4021-8570-b6d6f6347999
2026-09-27 21:56:11 +02:00
f155b24771 Archive the three workplans closed this session
INFD-WP-0001, INFD-WP-0002 and INFD-WP-0004 are finished; moved to
workplans/archived/ per this repo's own convention. Frontmatter ids
unchanged.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: sonnet
Assistant-Process: 169987@bnt-lap001
Assistant-Session: 322ef1ef-9048-4021-8570-b6d6f6347999
2026-09-27 21:54:40 +02:00
148988cfef chore(consistency): sync work records [auto]
Assistant: claude-code
Assistant-Model: sonnet
Assistant-Process: 169987@bnt-lap001
Assistant-Session: 322ef1ef-9048-4021-8570-b6d6f6347999
2026-09-27 21:42:59 +02:00
custodian-sync
31d5872f9b chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-09-27:
  - update .custodian-brief.md for informed-decision

Assistant: claude-code
Assistant-Model: sonnet
Assistant-Process: 169987@bnt-lap001
Assistant-Session: 322ef1ef-9048-4021-8570-b6d6f6347999
2026-09-27 21:42:49 +02:00
0f97b1e1b2 Close three workplans whose file status never caught up to reality
INFD-WP-0001-T08 (walking skeleton), INFD-WP-0002-T03/T04 (compact
sitting human binds and their file-level feedback), and
INFD-WP-0004-T02/T04 (list action request/admit-and-rollout) were all
still marked wait/progress despite being satisfied days ago -- some as
far back as 2026-09-14/21. Discovered while reviewing this repo's open
work at session close. All three workplans are now finished.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: sonnet
Assistant-Process: 169987@bnt-lap001
Assistant-Session: 322ef1ef-9048-4021-8570-b6d6f6347999
2026-09-27 21:41:40 +02:00
4c2325ac76 Deploy scanned exact-record ordinary human review image
Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0e387-534d-70e3-ad53-4ea05676db8c
2026-09-27 21:04:51 +02:00
815fbecbf0 Verify exact ordinary review against native Approval Engine contract
Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0e387-534d-70e3-ad53-4ea05676db8c
2026-09-27 21:03:57 +02:00
21a4d28a0f Deploy the requesting-party overview change
Built, container-smoke-tested (11/11) and pushed
forgejo.coulomb.social/coulomb/informed-decision@sha256:56aee6b1...
from 13ca3a5. Pre-rollout backup/inspect and post-rollout inspect
confirm the durable evidence store (outbox delivered=75,
submissions confirmed=9) is unchanged across the Recreate rollout.
healthz/readyz green post-rollout.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: sonnet
Assistant-Process: 169987@bnt-lap001
Assistant-Session: 322ef1ef-9048-4021-8570-b6d6f6347999
2026-09-27 20:49:26 +02:00
34eda52755 Support exact-ID human review of ordinary approvals and prepare metered memos
Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0e387-534d-70e3-ad53-4ea05676db8c
2026-09-27 20:45:28 +02:00
13ca3a5372 Surface the requesting party on the decision overview
The single-memo review page already fetched and labeled
approval-engine's binding.principal "Requesting party" -- the party
the approval was issued on behalf of, distinct from memo.binding.principal
(the reviewer being bound). The overview/list page fetched the same
live approval record for status but never surfaced this field.

OverviewRow gains requesting_party, populated only when the fetched
binding's digest matches the memo's pinned digest (same trust
condition status already uses); ui.py renders it as "Requested by: ...".
No new approval-engine call or flex-auth scope needed -- the record was
already being read.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: sonnet
Assistant-Process: 169987@bnt-lap001
Assistant-Session: 322ef1ef-9048-4021-8570-b6d6f6347999
2026-09-27 20:38:14 +02:00
656301b659 Record confirmed proof budget renewal and deployed review pins
Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0e387-534d-70e3-ad53-4ea05676db8c
2026-09-27 20:33:14 +02:00
895de67a2d Record live confirmation of both key-cape login fixes (INFD-IN-0005)
Platform-root confirmed a live approval of infd-20260927-b01 succeeded
after the discovery-header fix (key-cape@8be8065) was deployed
alongside the freshness fix (911e9de). Both defects this intake
predicted/tracked are resolved and verified.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: sonnet
Assistant-Process: 169987@bnt-lap001
Assistant-Session: 322ef1ef-9048-4021-8570-b6d6f6347999
2026-09-27 20:25:05 +02:00
custodian-sync
237132bb15 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-09-27:
  - update .custodian-brief.md for informed-decision

Assistant: claude-code
Assistant-Model: sonnet
Assistant-Process: 169987@bnt-lap001
Assistant-Session: 322ef1ef-9048-4021-8570-b6d6f6347999
2026-09-27 19:06:29 +02:00
37cc80561c Record INFD-IN-0005 root cause and key-cape fix
platform-root's refused approval of infd-20260927-b01 reproduced this
intake's predicted failure exactly: key-cape was backdating a
just-completed MFA to a stale kc_login cookie, understating freshness
for flex-auth's 900s review window. Fixed upstream in key-cape
(ADHOC-2026-09-27, commit 911e9de). Left open pending live
confirmation and the remaining prompt=login/max_age work.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: sonnet
Assistant-Process: 169987@bnt-lap001
Assistant-Session: 322ef1ef-9048-4021-8570-b6d6f6347999
2026-09-27 19:03:36 +02:00
e415ec44c6 Prepare and deploy exact EUR 10 tool-proof human review memo
Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0e387-534d-70e3-ad53-4ea05676db8c
2026-09-27 18:51:23 +02:00
3d221295d5 Admit compact-sitting v3 and the list-overview image (INFD-WP-0004-T04)
Rolled out on railiance01 after diff, server dry-run, inspect (7 confirmed,
none unresolved) and in-volume backup. Only the ConfigMap policy pin
(v2 -> v3) and the image changed.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-22 02:32:06 +02:00
47a0720e2e Sync INFD-WP-0004 status
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:54:09 +02:00
custodian-sync
67e5ff0859 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-09-21:
  - update .custodian-brief.md for informed-decision

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:54:07 +02:00
98c8de078e Ask Flex Auth list, not read, for each overview row (INFD-WP-0004-T03)
The overview now requests the new list action and its rows carry only the
memo id, version, question, live approval status and the person's own
responses without notes. Opening a memo still asks read; every act asks
its own action. The fixture Flex Auth package admits list under a
re-derived pin. Not deployable until flex-auth answers INFD-IN-0008.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:53:31 +02:00
180370ed44 Sync INFD-WP-0004 status
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:49:08 +02:00
custodian-sync
b12f6c7007 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-09-21:
  - update .custodian-brief.md for informed-decision

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:49:06 +02:00
b105f93b80 Record why the live overview is refused: MFA age 1744 s against 900 (INFD-WP-0004-T01)
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:48:25 +02:00
f47805bece Record hub ids for INFD-WP-0004 and INFD-IN-0008
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:45:49 +02:00
custodian-sync
bd12af0f3d chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-09-21:
  - update .custodian-brief.md for informed-decision

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:45:47 +02:00
c9c05e595b Open INFD-WP-0004 and draft the flex-auth list-action request (INFD-IN-0008)
The live overview is refused on every row: compact-sitting v2 gates read
with a 900 s MFA window and does not name the T03 memos. Propose a
limited-disclosure list action with a comfortable bar; read and every act
stay strict.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:45:07 +02:00
77792fa4f5 Record the decision-overview rollout and pin its image in admission inputs
Operator rolled out sha256:971e88e3 after a pre-rollout inspect (7 confirmed,
no unresolved submissions) and an in-volume backup. README backup path now
matches the deployment, which mounts no /backup volume.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:32:19 +02:00
ac0a4e2fb0 Record the published decision-overview image (not yet rolled out)
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:16:02 +02:00
3e0d3d5ebf Keep the home memo form when the decision overview fails
The overview is orientation only; a store, policy or engine failure while
listing now shows a notice instead of an error page, so the memo form and
sign-out stay reachable.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:12:27 +02:00
002a486ecf Record INFD-WP-0003 finish sync
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:09:20 +02:00
custodian-sync
4c653cb73a chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-09-21:
  - update .custodian-brief.md for informed-decision

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:09:19 +02:00
6509ff1460 Document the decision overview and finish INFD-WP-0003 (T04)
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:08:46 +02:00
0632215b5d Record INFD-WP-0003 sync
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:07:45 +02:00
custodian-sync
3fb5d42808 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-09-21:
  - update .custodian-brief.md for informed-decision

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:07:44 +02:00
bd6c004f1a Render the my-decisions overview on the signed-in home page (INFD-WP-0003 T03)
Groups the reviewer's memos (needs attention, open, accepted, declined,
returned, closed, not available) above the manual memo-id form. Server
rendered and escaped; refused rows show only the memo id. The Chromium
harness gains a home-overview check (13 checks pass).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:07:08 +02:00
39e5366abc Regenerate WORK-RECORDS.md after INFD-WP-0003 sync
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:03:09 +02:00
custodian-sync
62e4d44096 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-09-21:
  - update .custodian-brief.md for informed-decision

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:03:02 +02:00
f0a9bb1d4c Add the my-decisions overview store queries and controller (INFD-WP-0003 T01, T02)
Store.memos_for / dispositions_by list the signed-in person's memos and
their own dispositions. ReviewController.overview classifies each row
after its own fresh PDP read and a live get-by-id engine status; refused
rows keep only the memo id, and no presentation is created.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 22:02:21 +02:00
1e94835c07 Record hub ids for INFD-WP-0003
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 21:58:57 +02:00
2d6d338154 Propose INFD-WP-0003: my-decisions overview on the review home page
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 359683@bnt-lap001
Assistant-Session: eebdc939-7a9b-4e50-9d39-c8437e8a14ec
2026-09-21 21:58:20 +02:00
40654505c4 Record the accepted 2026-09-21 budget memo
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 272244@bnt-lap001
Assistant-Session: c8962fa7-b290-47df-865f-403ddb6c77e9
2026-09-21 21:53:02 +02:00
6d0a81f728 Bind the budget memo and point sitting admission at compact-sitting v2
attach_compact_bindings takes --sitting/--batches (defaults unchanged).
b01 is bound to the existing named recipient and native approval
ba5ce2d8. sitting-admission.json moves to package v2
(sha256:24a52478...) and the currently served image ef6fdd61, so the
cutover does not roll back the 2026-09-16 login fixes. Not yet applied.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 272244@bnt-lap001
Assistant-Session: c8962fa7-b290-47df-865f-403ddb6c77e9
2026-09-21 21:34:55 +02:00
e99fb5892a Record the 2026-09-21 budget approval create receipt
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 272244@bnt-lap001
Assistant-Session: c8962fa7-b290-47df-865f-403ddb6c77e9
2026-09-21 19:09:17 +02:00
d38b9acea6 Tolerate workstation clock skew in the sitting-requester token check
A 3 s WSL2 clock lag made a freshly issued KeyCape token fail PyJWT's iat
check (ImmatureSignatureError), surfacing only as contained_operation_failed.
Allow 30 s leeway and record the exception class, never its message.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 272244@bnt-lap001
Assistant-Session: c8962fa7-b290-47df-865f-403ddb6c77e9
2026-09-21 19:06:42 +02:00