Userinterface for executive decisions modeled as a sign and return book.
Find a file
tegwick 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
deploy Record confirmed proof budget renewal and deployed review pins 2026-09-27 20:33:14 +02:00
docs Record confirmed proof budget renewal and deployed review pins 2026-09-27 20:33:14 +02:00
history/20260909-initial-exploration Establish INTENT, Stage 1 GOAL, and founding workplan 2026-09-09 10:47:36 +02:00
informed_decision Surface the requesting party on the decision overview 2026-09-27 20:38:14 +02:00
intakes Record live confirmation of both key-cape login fixes (INFD-IN-0005) 2026-09-27 20:25:05 +02:00
schemas Promote schema and canonicalizer out of history; add EvidenceModel (T06) 2026-09-09 14:16:28 +02:00
tests Surface the requesting party on the decision overview 2026-09-27 20:38:14 +02:00
tools Bind the budget memo and point sitting admission at compact-sitting v2 2026-09-21 21:34:55 +02:00
workplans Ask Flex Auth list, not read, for each overview row (INFD-WP-0004-T03) 2026-09-21 22:53:31 +02:00
.custodian-brief.md chore(consistency): sync task status from DB [auto] 2026-09-27 19:06:29 +02:00
.dockerignore Package protected review runtime and prepare deployment admission 2026-09-11 01:21:37 +02:00
.gitignore Package protected review runtime and prepare deployment admission 2026-09-11 01:21:37 +02:00
.repo-classification.yaml Use in-vocabulary capability tags 2026-09-09 12:40:50 +02:00
AGENTS.md Raise INFD-IN-0006: is §3's layer vocabulary closed, and what is surface? 2026-09-21 02:11:59 +02:00
Containerfile Package protected review runtime and prepare deployment admission 2026-09-11 01:21:37 +02:00
Containerfile.memo-input Require fresh KeyCape authentication for decision review sign-in 2026-09-16 01:35:02 +02:00
Containerfile.memo-input.dockerignore Require fresh KeyCape authentication for decision review sign-in 2026-09-16 01:35:02 +02:00
GOAL.md Declare the layer per GH-DEC-2026-012; close T02 2026-09-09 22:25:35 +02:00
INTENT.md Apply GH-DEC-2026-017: declare layer Staff, make layer.yaml derived, answer the section 4 question. 2026-09-21 06:33:31 +02:00
layer.yaml Apply GH-DEC-2026-017: declare layer Staff, make layer.yaml derived, answer the section 4 question. 2026-09-21 06:33:31 +02:00
Makefile Package protected review runtime and prepare deployment admission 2026-09-11 01:21:37 +02:00
pep-stance.yaml Declare the layer per GH-DEC-2026-012; close T02 2026-09-09 22:25:35 +02:00
pyproject.toml Package protected review runtime and prepare deployment admission 2026-09-11 01:21:37 +02:00
README.md Establish INTENT, Stage 1 GOAL, and founding workplan 2026-09-09 10:47:36 +02:00
requirements.lock Package protected review runtime and prepare deployment admission 2026-09-11 01:21:37 +02:00
SCOPE.md Document the decision overview and finish INFD-WP-0003 (T04) 2026-09-21 22:08:46 +02:00
uv.lock Deploy verified-group T03 review surface and packet preparation 2026-09-14 02:47:31 +02:00
WORK-RECORDS.md Sync INFD-WP-0004 status 2026-09-21 22:54:09 +02:00

informed-decision

User interface for executive decisions, modelled as a sign-and-return book — the German Umlaufmappe / Zeichnungsbuch, made cryptographic.

A Decision Memo carries a question, the context needed to answer it, the requested act, and a binding between identity, what was shown, and what was bound. The promise is not "the file was signed" but "this person, in this role, was shown this view, and bound this act."

One object model from a ten-second login (L0) to a multi-party instrument (L5).

Where to start

File What it is
INTENT.md Why this repository exists and what it must never become
GOAL.md The current stage, its invariants, and its definition of done
workplans/ Current work
history/20260909-initial-exploration/ Founding exploration — schema, state transitions, canonicalization, vectors

Stage 1

Own the browser-facing approver UI that approval-engine deliberately does not contain, and answer in writing who owns it. approval-engine is a bearer-token resource server with no browser client; key-cape (KEY-WP-0013-T02) is waiting on a client_id and callback URI that no component has claimed. This repository claims them.

See GOAL.md.

Boundaries

This repository renders questions and records answers. It does not decide (access-engine), does not own the approval object (approval-engine), does not author approval doctrine (gate-house), does not authenticate anyone (key-cape), and does not archive the trail (audit-core).