Commit graph

122 commits

Author SHA1 Message Date
902668a050 Advance dependency roots with guarded source implementations
Assistant: codex
Assistant-Model: gpt-6.1-sol
Assistant-Session: 01a10391-6355-7b41-b0fa-3e14e874f091
2026-10-04 11:15:06 +02:00
9d10fba4cb Advance dependency roots with guarded source implementations
Assistant: codex
Assistant-Model: gpt-6.1-sol
Assistant-Session: 01a10391-6355-7b41-b0fa-3e14e874f091
2026-10-04 11:01:47 +02:00
custodian-sync
20eef043ed chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-10-03:
  - update .custodian-brief.md for ops-mason

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 3775@bnt-lap001
Assistant-Session: cfacb6a5-ad5b-4f79-ac67-053e3b0d34a3
2026-10-03 08:38:45 +02:00
1c9238042f MASON-WP-0007: T05 and T01 done on attended receipts (already_identical); T06 waits only on T04
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:38:21 +02:00
custodian-sync
755a2927d3 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-10-03:
  - update .custodian-brief.md for ops-mason

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 3775@bnt-lap001
Assistant-Session: cfacb6a5-ad5b-4f79-ac67-053e3b0d34a3
2026-10-03 08:35:48 +02:00
1c06d8fc92 MASON-WP-0007-T05: founder approval recorded; attended run remains
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:35:25 +02:00
custodian-sync
96f8bffb3b chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-10-03:
  - update .custodian-brief.md for ops-mason

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 3775@bnt-lap001
Assistant-Session: cfacb6a5-ad5b-4f79-ac67-053e3b0d34a3
2026-10-03 08:30:30 +02:00
21f8b3754f MASON-WP-0007: point T05 at the reviewed seed helper; T01 file-only survey (CUST-WP-0075)
T05 now names railiance-platform scripts/tenant_engine_audit_core_sender_seed.py
(e7eb9db) and the exact three-step attended sequence. T01 records the
file-only answers; T06 carries the read-only ESO token-create can-i check.

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:29:32 +02:00
902515f52b chore(consistency): refresh WORK-RECORDS index
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 03:58:58 +02:00
custodian-sync
ec10336255 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-10-03:
  - update .custodian-brief.md for ops-mason

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 3775@bnt-lap001
Assistant-Session: cfacb6a5-ad5b-4f79-ac67-053e3b0d34a3
2026-10-03 03:50:18 +02:00
f25f5a83bd MASON-WP-0007-T05: drop satisfied depends_on and non-standard blocked_on: founder (gate is needs_human + decision 62aa95e4)
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 03:45:30 +02:00
c6453c2e19 MASON-WP-0007: railiance-platform 8c44256 is on origin/main
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 03:30:21 +02:00
custodian-sync
5fd4ae7ec6 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-10-03:
  - update .custodian-brief.md for ops-mason

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 3775@bnt-lap001
Assistant-Session: cfacb6a5-ad5b-4f79-ac67-053e3b0d34a3
2026-10-03 03:29:44 +02:00
4503d1e979 CUST-WP-0075 inbox sweep: act on railiance-platform and tenant-engine replies
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 03:28:33 +02:00
2076d5c0dd CUST-WP-0075-T03: route human gates to hub decisions
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

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

Assistant: claude-code
Assistant-Model: sonnet
Assistant-Process: 292700@bnt-lap001
Assistant-Session: 42de6b79-9019-4cfd-b49a-6db3bbfe9341
2026-10-03 00:16:51 +02:00
32590a4754 chore: hub id writeback and index for MASON-WP-0007
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: sonnet
Assistant-Process: 292700@bnt-lap001
Assistant-Session: 42de6b79-9019-4cfd-b49a-6db3bbfe9341
2026-10-01 21:38:58 +02:00
custodian-sync
030d4aa5c1 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-10-01:
  - update .custodian-brief.md for ops-mason

Assistant: claude-code
Assistant-Model: sonnet
Assistant-Process: 292700@bnt-lap001
Assistant-Session: 42de6b79-9019-4cfd-b49a-6db3bbfe9341
2026-10-01 21:38:47 +02:00
2149ee2718 MASON-WP-0007: plan tenant-engine audit-core sender token projection (draft, not applied)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: sonnet
Assistant-Process: 292700@bnt-lap001
Assistant-Session: 42de6b79-9019-4cfd-b49a-6db3bbfe9341
2026-10-01 21:38:01 +02:00
custodian-sync
98a3e2ded8 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-09-29:
  - update .custodian-brief.md for ops-mason

Assistant: claude-code
Assistant-Model: sonnet
Assistant-Process: 237582@bnt-lap001
Assistant-Session: f2b3d9f1-8fb9-4b9c-bc2b-837ec5dfc826
2026-09-29 00:27:49 +02:00
custodian-sync
988172c773 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-09-28:
  - update .custodian-brief.md for ops-mason

Assistant: claude-code
Assistant-Model: sonnet
Assistant-Process: 237582@bnt-lap001
Assistant-Session: f2b3d9f1-8fb9-4b9c-bc2b-837ec5dfc826
2026-09-28 23:34:16 +02:00
0d2fe45cfb Qualify wait tasks per Task Wait Qualifiers v0.1 (CUST-WP-0074-T05, gate root R2 credential provisioning)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: sonnet
Assistant-Process: 237582@bnt-lap001
Assistant-Session: f2b3d9f1-8fb9-4b9c-bc2b-837ec5dfc826
2026-09-28 23:31:23 +02:00
13a6337607 Refresh index for completed layer declaration intake
Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0e75a-fc5c-7913-9dba-9846210c766d
2026-09-28 11:57:27 +02:00
custodian-sync
f03a3bc382 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-09-28:
  - update .custodian-brief.md for ops-mason

Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0e75a-fc5c-7913-9dba-9846210c766d
2026-09-28 11:56:31 +02:00
2b83324c01 Bind OpenBao builds to approved inputs and secure credential delivery
Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0e75a-fc5c-7913-9dba-9846210c766d
2026-09-28 11:55:39 +02:00
ee1dc2b651 Refresh work record index after loose-end sync
Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0e75a-fc5c-7913-9dba-9846210c766d
2026-09-28 11:42:30 +02:00
custodian-sync
16f32a1a51 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-09-28:
  - update .custodian-brief.md for ops-mason

Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0e75a-fc5c-7913-9dba-9846210c766d
2026-09-28 11:41:57 +02:00
36445ae679 Enforce readiness tiers and reconcile blocked workplans
Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a0e75a-fc5c-7913-9dba-9846210c766d
2026-09-28 11:40:57 +02:00
custodian-sync
370e1f84c7 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-09-24:
  - update .custodian-brief.md for ops-mason

Assistant: grok
Assistant-Session: 01a0d25d-d358-7e13-b84a-d007fbb7e34f
2026-09-24 10:07:03 +02:00
0a6175e5e2 Name access-engine as the only authorization decision point.
Assistant: grok
Assistant-Session: 01a0d25d-d358-7e13-b84a-d007fbb7e34f
2026-09-24 09:56:47 +02:00
custodian-sync
3b8f248a8f chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-09-22:
  - update .custodian-brief.md for ops-mason

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 7184@bnt-lap001
Assistant-Session: 4b436ae2-b17c-4b40-8754-200b161b26e4
2026-09-22 08:31:33 +02:00
856ba8d19d AGENTS.md: fill unresolved {CREDENTIAL_ROUTING} placeholder with the credential-routing section
statehub register left the literal token (fixed in state-hub 19450d7).

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

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 7184@bnt-lap001
Assistant-Session: 4b436ae2-b17c-4b40-8754-200b161b26e4
2026-09-22 08:30:54 +02:00
c3424f730e chore(consistency): write back MASON-WP-0006 hub IDs and refresh WORK-RECORDS.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 63291@bnt-lap001
Assistant-Session: 8bd77868-ca68-4f49-bb1e-d539ecc0d703
2026-09-21 14:37:25 +02:00
aeb88faf7e Record the founder's plan-approval and Kubernetes change-gate decisions.
INTENT.md: the pep_stance gap and the three phase-4 write contacts are marked
accepted under the founder's plan-approval exception (GOVERN @ estate,
2026-09-21, review 2026-12-21). They stay declared; no stance map is published.
kubernetes-plane-apply records the readiness-tiered change gate and states
that phase 4 does not enforce it yet.

MASON-WP-0006 plans the readiness-tier check. It waits on a founder answer for
the whitehat plane, which has no readiness_state and so defaults to production.

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

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 63291@bnt-lap001
Assistant-Session: 8bd77868-ca68-4f49-bb1e-d539ecc0d703
2026-09-21 14:35:29 +02:00
custodian-sync
8fd572f766 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-09-21:
  - update .custodian-brief.md for ops-mason

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 63291@bnt-lap001
Assistant-Session: 8bd77868-ca68-4f49-bb1e-d539ecc0d703
2026-09-21 12:38:34 +02:00
0ff263a0b2 Declare ops-mason's NetKingdom layer in INTENT.md frontmatter.
Staff, role pep-shaped, stated in ops-mason's own voice (security-layer-model
§11, GH-DEC-2026-017). Direct OpenBao and Kubernetes contacts in the shipped
executors are declared as §5.3 gaps; the §6.4 stance map is recorded as a
dated declared gap (review 2026-12-21). No sidecar, no standard version.

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

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 63291@bnt-lap001
Assistant-Session: 8bd77868-ca68-4f49-bb1e-d539ecc0d703
2026-09-21 12:36:37 +02:00
1189d12dc3 Classify open workplans with flavor (CUST-WP-0072).
Set flavor on open workplans from origin/prose/status. Copy existing
depends_on aliases only. Do not promote residuals.

Assistant: grok
Assistant-Session: 01a09dc1-b21e-77e1-919e-fcad2f82b267
2026-09-14 15:50:43 +02:00
f47c7dbfe8 Refresh WORK-RECORDS.md after MASON-WP-0003 close.
Assistant: grok
Assistant-Session: 01a09dc1-b21e-77e1-919e-fcad2f82b267
2026-09-14 11:40:31 +02:00
custodian-sync
c05ffac259 chore(consistency): sync task status from DB [auto]
Updated by fix-consistency on 2026-09-14:
  - update .custodian-brief.md for ops-mason

Assistant: grok
Assistant-Session: 01a09dc1-b21e-77e1-919e-fcad2f82b267
2026-09-14 04:59:05 +02:00
ffc4b0aa61 Finish MASON-WP-0003: routing lane is registered.
T03 landed the pointer-only state-hub-forge-derivation-read catalog
entry on ops-warden. STATE-WP-0084 already consumes the credential.

Assistant: grok
Assistant-Session: 01a09dc1-b21e-77e1-919e-fcad2f82b267
2026-09-14 04:58:35 +02:00
f920bcad1a Refresh work-record index
Regenerated by fix-consistency; adds the inbound layer-declaration intake.

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

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 2564823@bnt-lap001
Assistant-Session: 2a7ed827-4928-4b9f-8613-9135c9cadfe9
2026-08-29 02:45:20 +02:00
repo-manager
77a2eadd28 repo.work.create_intake MASON-IN-0002
correlation_id: 8a9408fd-c863-4b65-ad0a-d514f7d10c13
reason: Request own-voice layer declaration under §11
source: repo-manager

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 2564823@bnt-lap001
Assistant-Session: 2a7ed827-4928-4b9f-8613-9135c9cadfe9
2026-08-28 23:03:29 +02:00
718df758dc Point layering note at the published standard
The layer model is now published as
net-kingdom/canon/standards/security-layer-model_v0.1.md (proposed) and
ratified by gate-house GH-DEC-2026-001. The note previously said the
standard was not yet written.

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

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 2564823@bnt-lap001
Assistant-Session: 2a7ed827-4928-4b9f-8613-9135c9cadfe9
2026-08-28 21:21:08 +02:00
f157a9169f Note NetKingdom layering review in INTENT
Records this repository's layer in the NetKingdom IT-security layer model
(Taxonomy / Tooling / Engines / Staff) and what should change in this INTENT
as a result. Links to the review that established the model:
gate-house/history/2026-08-28-security-layer-model-and-gate-house-recut.md

The note flags pending adaptation only; the body is unchanged.

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

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 2564823@bnt-lap001
Assistant-Session: 2a7ed827-4928-4b9f-8613-9135c9cadfe9
2026-08-28 20:33:43 +02:00
repo-manager
8808e13027 chore(registrar): assign State Hub identifiers
Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 3377672@bnt-lap001
Assistant-Session: 15463ccf-238f-4e13-b163-93aa25c6d166
2026-08-28 11:52:56 +02:00
e26956d2a5 chore(work-records): regenerate
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 3377672@bnt-lap001
Assistant-Session: 15463ccf-238f-4e13-b163-93aa25c6d166
2026-08-28 11:52:37 +02:00
958a667dd6 feat(workplan): open MASON-WP-0004 for credential descriptions
custody-inventory.py reports 21 paths, 17 undescribed. An undescribed
credential is one nobody can identify without reading it, so orientation
needs the access the store exists to control — and both of the week's
failure modes stay available: no used_by list, so a rotation misses a
consumer; no on_loss line, so recovery is improvised under pressure.

Sequenced so ops-mason does not guess. T01 establishes owners, because a
confidently wrong used_by is worse than an empty one — a rotation will
trust it.

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

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 3377672@bnt-lap001
Assistant-Session: 15463ccf-238f-4e13-b163-93aa25c6d166
2026-08-28 11:50:50 +02:00
d020413d7a feat(mason): describe stored credentials, and stop the grant rewriting itself
custody-inventory.py walks operators/ and platform/workloads/, prints
each path's description, owner, consumers and recovery path, and marks
any missing them. Metadata only, never a value, so it runs under
ops-mason-build and can be handed to anyone orienting themselves. First
run: 21 paths, 17 undescribed.

Described the four this session touched, including on_loss — the field
whose absence meant the LLDAP predecessor's recovery path had to be
worked out from first principles while locked out.

ops-mason-build gains create/update on */metadata/*, since a description
is documentation rather than a value. delete stays absent: deleting a
metadata entry destroys every version of the secret beneath it.

It also now denies itself sys/policies/acl/ops-mason-build. Without that
the policy was advisory — a token that can write policies can delete its
own denials, so the claim that OpenBao enforces "never read a value" was
not true as written. An exact path outranks the glob, so changing what
ops-mason may do is now an operator act, visible as one in the audit log.

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

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 3377672@bnt-lap001
Assistant-Session: 15463ccf-238f-4e13-b163-93aa25c6d166
2026-08-28 11:43:08 +02:00
7bd230c06a feat(mason): operators/ custody mount and its access policy
operators/ enabled as KV v2; operator-custody grants read/write on it.

Kept separate from platform-admin rather than folded in, though that
would have been one stanza. platform-admin lists the mounts an
administrator operates *on*; operators/ is the one mount an
administrator keeps things *in*. Separating them lets custody move
independently of administration, which is what the S6 trust stage
(two-of-three independent recovery control) requires and which cannot be
retrofitted once the grant is buried inside platform-admin.

Delete is deliberately absent from the policy. A credential is retired
by writing its successor, and KV v2 keeps the prior version — the
history that did not exist when the LLDAP predecessor was overwritten in
a browser password manager on 2026-08-27 and lost for good.

ops-mason-build verified behaviourally, not just by capability strings:
metadata reads succeed, `kv get` on the forge token returns permission
denied, and enabling a mount returns permission denied.

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

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 3377672@bnt-lap001
Assistant-Session: 15463ccf-238f-4e13-b163-93aa25c6d166
2026-08-28 11:18:06 +02:00
680fe471c5 fix(bao-session): drop the TTY guard on login
The OIDC flow reads nothing from stdin — it starts a local callback
listener, prints a URL, and waits for the browser. The guard was copied
from scripts that prompt for secrets, where it belongs, and here it only
blocked the non-interactive invocation the flow supports.

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

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 3377672@bnt-lap001
Assistant-Session: 15463ccf-238f-4e13-b163-93aa25c6d166
2026-08-28 11:06:53 +02:00