Commit graph

2303 commits

Author SHA1 Message Date
codex
c0c836ac1e feat(workplan): record the duplicate-identity dispositions
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
KONT-WP-0013 renumbered, archived RAILIANCE-WP migrated, unqualified ADHOC
accepted per CUST-WP-0066, OPS-WP-* newly visible and undecided. Forge-side
collisions fell 45 to 16.

Central still reports 35 duplicates because archived workplans are never
registered — the registrar scans only top-level workplans, closed archives being
frozen under ADR-007. The renames re-derived projection UUIDs, so the old rows
are now unclaimed by any file, which is exactly the condition ADR-012 decision
7's reset retires. The duplicates clear when that reset runs, not before.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-26 08:08:25 +02:00
codex
0a1cf56414 docs(canon): amend ADR-012 decision 7 — reset retires, it does not delete
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 2s
Discovered before implementation: discard-and-rebuild cannot exist. Progress
events, tasks, decisions and review contracts reference workplans with ON DELETE
RESTRICT, and 1067 of 1075 workplans carry such a reference. Deleting a workplan
would delete the hub-native records attached to it, which ADR-010 decision 4
forbids and the schema refuses.

The database is enforcing this ADR's own boundary one layer down. A progress
event is a fact that happened; destroying it to tidy a derived projection loses
hub-native truth to fix a derived-state problem.

Reset now reconciles: create what is missing, update what differs, retire what no
longer derives — and retirement must be visible rather than silent.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 23:46:51 +02:00
custodian-sync
d5013ae48c chore(consistency): sync task status from DB [auto]
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Updated by fix-consistency on 2026-08-25:
  - update .custodian-brief.md for the-custodian
2026-08-25 23:27:49 +02:00
custodian-sync
104c8f98aa chore(consistency): renormalize lifecycle state [auto]
Updated by fix-consistency on 2026-08-25:
  - workplan status: ready → active
2026-08-25 23:27:44 +02:00
codex
4ef81c7ed0 feat(workplan): close CUST-WP-0068-T07 — binding gap repaired and orphans ruled
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
The fleet-wide re-sync took unbacked workplans from 265 to 29. ADR-010's orphan
rules applied to the remainder: all 29 are closed, none is an ADR-001 violation,
and all are retained as provenance under the "closed hub-first records" rule.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 23:23:55 +02:00
codex
9f60894df8 feat(workplan): CUST-WP-0068 — binding re-sync clears 236 apparent orphans
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Fleet-wide re-sync across 120 repositories: 1075 bindings sent, 1015 written,
workplans recording no backing file fell from 265 to 29. ADR-010 predicted this
as the "broken links" class and it was 89% of the apparent orphans.

The 29 remaining are all closed: 23 finished, 6 archived, none open.

Corrects T09's scope: the prefix migration left 4 orphaned rows, not 26. The
other 22 are still backed by the archived RAILIANCE-WP files that migration
deliberately did not rename. The overstatement came from counting rows by slug
prefix rather than by whether a file backs them.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 23:20:16 +02:00
codex
2edde0edf9 feat(workplan): widen CUST-WP-0068-T09 to every stale hub row
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
An attempt to purge stale task rows established that the hub has no hard-delete
for work records at all: DELETE /tasks/{id} is cancel_task, DELETE
/workstreams/{id} is 410 Gone, and no session.delete exists for either.
Re-derivation is not one removal option among several, it is the only one
permitted — a deliberate property, since a read model that cannot drop a record
except by re-deriving cannot be quietly edited into disagreeing with its source.

Scope is now 26 workplan rows plus 305 task rows across 44 workplans, of which
only 9 show open. All wait on ADR-012's per-repository reset.

No records were mutated: eight cancel calls hit STATE-WP-0080 tasks that were
already cancel.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 23:08:04 +02:00
codex
6629212985 feat(workplan): record the RAILIANCE-WP orphan debt as CUST-WP-0068-T09
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Migrating active workplans off the retired family prefix left 26 hub rows with
no backing file. Accepted deliberately: the alternative was one repository
carrying two prefixes indefinitely.

Blocked on ADR-012 decision 7's per-repository reset — C-07 is not fixable and
hand-deleting hub rows is the direct central edit ADR-010 decision 6 forbids.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 23:00:47 +02:00
custodian-sync
46c5d1682e chore(consistency): sync task status from DB [auto]
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Updated by fix-consistency on 2026-08-25:
  - update .custodian-brief.md for the-custodian
2026-08-25 21:55:52 +02:00
codex
c0cead2169 docs(canon): accept ADR-012 and retract the parts it supersedes
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
ADR-012 accepted 2026-08-25.

ADR-010 — partially superseded, notes added inline:
  decision 1: "a reading of the repositories" never said which copy, and the
    answer was neither the forge nor a working copy but whichever checkout last
    synced. The hub holds no repository files and never reads one.
  decision 5: "central derives, does not accept pushes" was policy while the
    workstation pushed everything.
  decision 6: "preliminary" was named but never built.

ADR-003 — partially superseded:
  decision 2: fingerprints composed from filesystem mtime are invalidated in
    part. mtime is a property of one workstation, differs across clones, and
    says nothing about content. Evidence: git_fingerprint for the-custodian
    held the initial commit while last_state_synced_at was minutes old.
  decision 5: the rebuild principle was correct but never exercised, and its
    "without data loss" claim holds only while nothing exists solely in the hub
    — which was false for 111 records on 2026-08-25.

ADR-001, ADR-005, ADR-007 and ADR-011 reviewed and unaffected; ADR-007 is
reinforced, since derived identifiers let an overlay and a forge-derived
projection compute the same identity.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 21:44:14 +02:00
codex
8c2825f4c3 docs(canon): ADR-012 — make the repository the unit of reconstruction
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Refines decision 7. Per-repository rebuild is not a convenience over a
fleet-wide operation: the repository is the unit, and the fleet-wide form is
defined as iteration over it.

It follows from the source — each forge repository has its own history and head,
so its projection is derivable and provable in isolation. It bounds blast radius,
which is what makes "routine" achievable: a rebuild that only runs fleet-wide is
one nobody runs casually and therefore nobody runs, which is how ADR-010's
never-executed reconstruction claim came to be believed.

It is also the only form that composes with the refusals. A repository holding
projection-only records can be held back while healthy ones rebuild; an
all-or-nothing reset is blocked permanently by a single bad repository. The
refusal is therefore evaluated per repository, and a fleet run skips and reports
rather than aborting.

The fleet-wide form must share the per-repository implementation, so the rare
dangerous path is exercised by the common safe one.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 21:38:25 +02:00
codex
9162f7e530 docs(canon): ADR-012 — require a routine reset of the projection from the forge
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Adds decision 7: the projection must be discardable and rebuildable from what
Forgejo holds, per repository and fleet-wide.

This is what makes the other decisions checkable. A read model that cannot be
rebuilt from its source is a database with a projection's reputation, and the
difference only surfaces when someone needs to rebuild it. ADR-010 already
asserts a cache may be reconstructed at any time; that claim has never been
executed.

Three properties keep it real: routine rather than emergency, scoped per
repository, and idempotent enough to verify against the forge — which derived
identifiers make possible.

Two refusals are explicit. Reset cannot restore the preliminary overlay, since
the forge does not hold it. And reset must refuse when records exist only in
the projection: on 2026-08-25 that was 111 work records, which a rebuild would
have erased while reporting success.

Also flags an unresolved boundary: hub-native records are not forge-derived and
must survive a rebuild of forge-derived state.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 21:36:21 +02:00
codex
b01f75d793 docs(canon): draft ADR-012 on what the hub actually projects
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
ADR-001 and ADR-010 both leave unanswered which repository files the hub reads.
Verified 2026-08-25: neither the forge nor a working copy — the projection
derives from whichever checkout most recently ran the sync, which is written
down nowhere.

Proposes the forge as projection source, unpushed local work as a labelled
preliminary overlay rather than a second store, and commit provenance on every
record. Implements ADR-010 decision 6's unbuilt notion of "preliminary" and
sharpens decision 1 rather than reversing it.

Status: proposed — needs review before anything is built on it.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 21:28:27 +02:00
codex
0dfdb9b63f feat(workplan): record CUST-WP-0068 recovery outcome — 964 of 1075 records
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Central 670 -> 1018 workplans; cache-only gap 426 -> 111.

T06 was scoped as an identifier-migration decision and that framing was wrong.
Two defects did most of the blocking: 50 repositories carried retired
gitea-remote URLs on central so fix-consistency could not match them, and the
registrar was blind to records that had an identifier but were absent from the
hub. Both were masked by a generic error whose real message sat in a child
process's stderr.

Also records the repo-wide re-key that severed eight working identifiers on
kaizen-agentic, and the rule now enforced in code to prevent it.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 20:28:17 +02:00
custodian-sync
380a4af0c6 chore(consistency): sync task status from DB [auto]
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Updated by fix-consistency on 2026-08-25:
  - update .custodian-brief.md for the-custodian
2026-08-25 20:26:31 +02:00
947f95e42a fix(workplans): adopt ADR-007 derived identifiers for unregistered records
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
These workplans exist only in the retired local hub. Their random pre-ADR-007
identifiers are refused by C-06 as stale references, so they cannot be
registered. Deriving from the canonical record id takes no identity from
anything: central does not hold them and the old ids die with the cache.

Records central already holds were deliberately left untouched.

Refs CUST-WP-0068-T06
2026-08-25 20:24:08 +02:00
custodian-sync
596bd72584 chore(consistency): sync task status from DB [auto]
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Updated by fix-consistency on 2026-08-25:
  - update .custodian-brief.md for the-custodian
2026-08-25 20:03:52 +02:00
custodian-sync
66827eedaf chore(consistency): sync task status from DB [auto]
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 0s
Updated by fix-consistency on 2026-08-25:
  - update .custodian-brief.md for the-custodian
2026-08-25 17:43:21 +02:00
d60af8cf55 fix(workplan): point workplan at its authoritative projection id
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
The file carried an identifier minted by the retired local hub while central
held a different record for the same file — ADR-010's same-filename,
different-UUID duplicate-registration class.

Central is authoritative (ADR-010 decision 1) and decision 6 says to mitigate
by changing the repository file rather than editing central, so the file adopts
central's id. The cache-side id dies with the cache.

Refs CUST-WP-0068
2026-08-25 17:37:53 +02:00
codex
b422a615b6 feat(workplan): CUST-WP-0068-T07 binding order fixed and 63/73 explained
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
The registrar now binds workplan files in the same pass as minting, verified
end to end. The unbound remainder is explained: those identifiers are the
cache-only records this workplan exists to recover, so the count is a progress
indicator rather than a fault.

Remaining under T07: re-sync fleet-wide, re-measure the 278, then disposition
whatever is genuinely orphaned.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 15:39:37 +02:00
repo-manager
6e678e2533 chore(registrar): assign State Hub identifiers
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
2026-08-25 15:36:39 +02:00
custodian-sync
620321bf8e chore(consistency): sync task status from DB [auto]
Some checks failed
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Has been cancelled
Updated by fix-consistency on 2026-08-25:
  - update .custodian-brief.md for the-custodian
2026-08-25 15:36:37 +02:00
codex
eb415fd6e3 chore(adhoc): verify one-pass workplan binding
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Refs CUST-WP-0068-T07

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 15:35:12 +02:00
codex
262ac4a6bb fix(workplan): rescope CUST-WP-0068-T07 — the orphan count rests on a broken field
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
backing_filename is written only by the bindings sync, which fix-consistency
runs before the registrar mints the UUID. Newly registered workplans therefore
record no backing file. Reproduced on CUST-WP-0068 itself.

278 of 800 workplans on central record no backing file, which is what ADR-010
predicted as the "broken links" class. The 23 cache-only orphans were counted
with the same field, so that number is an investigation starting point rather
than a work list.

T07 now repairs the ordering and re-measures before dispositioning anything.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 15:24:14 +02:00
repo-manager
b436c44653 chore(registrar): assign State Hub identifiers
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
2026-08-25 15:19:05 +02:00
custodian-sync
f97e585c67 chore(consistency): sync task status from DB [auto]
Some checks are pending
CI Smoke / host-smoke (push) Waiting to run
CI Smoke / container-smoke (push) Waiting to run
Updated by fix-consistency on 2026-08-25:
  - update .custodian-brief.md for the-custodian
2026-08-25 15:19:03 +02:00
codex
d18023c79f chore(consistency): refresh work-record index for CUST-WP-0068
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 15:17:25 +02:00
codex
bccf2a950f feat(workplan): open CUST-WP-0068 for cache-only work-record recovery
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Promotes the remainder of CUST-WP-0067-T10. 297 workplans and their tasks
still exist only in the retired local hub, which is why its database cannot be
discarded.

Eight tasks covering the registrar's self-defeating precondition, per-repo
unblocking, six non-conforming identifiers, clay-borg's 50 unparseable
workplans, the 176 with non-empty projections, the identifier ruling that
overlaps RMGR-WP-0005, 23 orphans, and final convergence.

Carries forward a correction: ten of sixteen records flagged as
non-conforming are ADHOC-YYYY-MM-DD, which is the documented convention. The
classifier's pattern was wrong, not the files.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 15:15:31 +02:00
codex
e205e37d31 feat(workplan): record CUST-WP-0067-T10 progress — 129 of 426 workplans recovered
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Central 670 -> 799. All 403 cache-only workplans with a backing path have that
file on disk, confirming ADR-010's finding that nothing was lost.

Only 57 carry deterministic identifiers, so C-06 refuses most as stale
references. --bootstrap-empty-projection recovers them with identifiers
preserved, verified on one repository before rollout.

Classifies the 297 remaining and lists per-repository blockers from actual
error messages. Corrects this task's own earlier reading of
bootstrap_source_invalid as a single cause: it covers at least two.

Recommends promotion to its own workplan — the mechanical share is done; the
rest needs content fixes, an identifier decision overlapping RMGR-WP-0005, and
owner judgement across ~40 repositories.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 14:36:19 +02:00
repo-manager
137c7796a6 chore(registrar): assign State Hub identifiers
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
2026-08-25 14:06:32 +02:00
custodian-sync
4f524fda2e chore(consistency): sync task status from DB [auto]
Some checks are pending
CI Smoke / host-smoke (push) Waiting to run
CI Smoke / container-smoke (push) Waiting to run
Updated by fix-consistency on 2026-08-25:
  - update .custodian-brief.md for the-custodian
2026-08-25 14:06:31 +02:00
codex
d0216adb44 feat(workplan): close CUST-WP-0067-T05 and open T10 for the workplan divergence
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
All 44 cache-only repository records resolved: 43 onboarded and classified,
agent-harness dropped by owner decision. Central holds 121 repositories.

Corrects an earlier claim in this workplan that the cache would hold nothing
unique once the repository records were resolved. That generalised a
repository-scoped result: the cache still holds ~400 workplans and ~1,950 tasks
that exist nowhere else, which is ADR-010's original divergence.

The cache database still must not be discarded.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 14:04:23 +02:00
codex
70ad0835b0 feat(workplan): close CUST-WP-0067-T03 — central declares primary, guard accepts
All checks were successful
CI Smoke / host-smoke (push) Successful in 1s
CI Smoke / container-smoke (push) Successful in 2s
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 13:51:24 +02:00
codex
b5205d66b9 docs(recovery): drop agent-harness by owner decision
All checks were successful
CI Smoke / host-smoke (push) Successful in 1s
CI Smoke / container-smoke (push) Successful in 1s
Superseded by glas-harness and the rein concept, so there is nothing to
restore. Not onboarded to central; its cache-only record is left to disappear
when the cache database is discarded, rather than preserved as a hub-only
record with no backing file.

Successors verified present and classified on central before dropping.
Ten records remain outstanding.

Refs CUST-WP-0067-T05

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 13:51:05 +02:00
codex
3d515b6c23 chore(workplan): record the env-var binding defect in CUST-WP-0067-T03
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 12:44:54 +02:00
codex
5851e11ff2 chore(workplan): record CUST-WP-0067-T03 instance identity guard
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 10:37:12 +02:00
codex
71ac0e20ed feat(workplan): close CUST-WP-0067-T09 — classification works on central
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Release 20 carries the canon vocabulary; classification writes succeed against
central for the first time from outside a workstation. All 33 onboarded
repositories re-run and projected: 33 updated, no warnings. Central holds 111
repositories, 100 classified.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 10:30:06 +02:00
codex
005d198bdd feat(workplan): CUST-WP-0067-T07 files repointed on both machines
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
178 AGENTS.md files moved off the 127.0.0.1:18000 reverse tunnel to the
in-cluster address; both machines report zero stale rows. 100 pushed from the
workstation, 74 picked up by pull on the node, 4 handled individually.

binky-control committed but not pushed — it carries 6 pre-existing unpushed
commits that are not this change's to publish. activity-core was already 39
behind with an unrelated dirty file; only AGENTS.md was taken from origin.

state-hub-railiance01 is now unblocked for removal.

Still open: the block has no single source, so this recurs on the next
topology change; and 68 non-AGENTS.md references need individual judgement
rather than substitution.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 00:25:07 +02:00
8c76b65a66 docs(agents): repoint remote State Hub URL to the in-cluster address
Some checks are pending
CI Smoke / host-smoke (push) Waiting to run
CI Smoke / container-smoke (push) Waiting to run
The remote row pointed at 127.0.0.1:18000, a reverse tunnel back to the
workstation. On railiance01 the State Hub runs in the cluster on that same
machine, so the request left the box and came back to reach a local service.

Refs CUST-WP-0067-T07
2026-08-25 00:22:12 +02:00
codex
cd2ddd9aa5 chore(workplan): CUST-WP-0067-T09 built and pushed, deploy pending operator
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-24 23:48:42 +02:00
codex
563e7811b9 docs(canon): correct ADR-010 on divergence shapes, mechanism, and outcome
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Three dated corrections, following the blockquote convention ADR-007 uses:

- Decision 2's merge/refresh dichotomy is not exhaustive. Repository records
  took a third shape — cache-only records whose source exists and is reachable
  but was never introduced to central. Refreshing would have destroyed them.
- The Context recorded the shared port but not why it was silent: an unbound
  ssh -L binds every loopback family, and ExitOnForwardFailure fires only when
  every bind fails.
- A new Outcome section states that the ADR's own remediation never landed and
  the condition was still live seven weeks later.

Refs CUST-WP-0067-T06

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-24 23:46:33 +02:00
codex
3c1e93186f chore(workplan): record CUST-WP-0067-T09 canon delivery build
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-24 23:42:23 +02:00
repo-manager
512ea1fb53 chore(registrar): assign State Hub identifiers
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
2026-08-24 23:38:00 +02:00
custodian-sync
e23053cb8f chore(consistency): sync task status from DB [auto]
Some checks failed
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Has been cancelled
Updated by fix-consistency on 2026-08-24:
  - update .custodian-brief.md for the-custodian
2026-08-24 23:37:59 +02:00
codex
7f19ad465b feat(workplan): close CUST-WP-0067 T04 and T05, open T09
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
rmgr repo-onboard is the missing managed_repos write path. 33 of 44 cache-only
repositories onboarded to central (78 -> 111); the other 11 carry written
dispositions rather than guessed classifications.

T04 uncovered why onboarding only worked from a workstation: the hub resolved
its classification allowed-values file from hardcoded developer checkouts, so
every classification write 500'd in the container. T09 delivers that file.

The local cache database must not be discarded yet — 11 records live only there.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-24 23:35:58 +02:00
codex
2755e8c91f feat(workplan): close CUST-WP-0067-T08 — central MCP deployed and verified
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
state-hub-mcp serves SSE on ClusterIP 10.43.110.80:8001, verified from the node
rather than through a tunnel, and reads central's data end-to-end (79 repos).
Remote port map and dev-hub registration repointed off the reverse tunnel.

state-hub-mcp-railiance01 is now safe to remove. state-hub-railiance01 is not:
~120 AGENTS.md files still depend on it until T07.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-24 23:20:11 +02:00
codex
def3b0e802 chore(workplan): record CUST-WP-0067-T08 release build and remaining operator steps
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-24 23:10:20 +02:00
codex
953d2f18b3 chore(workplan): record CUST-WP-0067-T08 chart support and release sequence
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-24 22:53:33 +02:00
repo-manager
12e1b8874d chore(registrar): assign State Hub identifiers
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
2026-08-24 22:42:21 +02:00
custodian-sync
028365bd71 chore(consistency): sync task status from DB [auto]
Some checks failed
CI Smoke / host-smoke (push) Has been cancelled
CI Smoke / container-smoke (push) Has been cancelled
Updated by fix-consistency on 2026-08-24:
  - update .custodian-brief.md for the-custodian
2026-08-24 22:42:18 +02:00