Finish CUST-WP-0072: coverage evidence, templates, intake join.
Some checks are pending
CI Smoke / host-smoke (push) Waiting to run
CI Smoke / container-smoke (push) Waiting to run

Record the flavor backfill cohort, residual-intake join, and agent
convention that default views omit residuals.
This commit is contained in:
codex 2026-09-14 15:51:06 +02:00
parent 1bba535d1f
commit f820ced5c9
9 changed files with 3003 additions and 7 deletions

View file

@ -0,0 +1,67 @@
# CUST-WP-0072 flavor and depends_on backfill
Date: 2026-09-14. Gate: STATE-WP-0092 is `finished` in files and on the hub
(`2a2d8bcd`). Live primary schema is still `b5e6f7a8c9d0` (flavor column not
applied), so default views do not yet drop residuals. Founder instructed
file backfill to proceed. Hub views follow after alembic `c6f7a8b9d0e1` is
deployed.
## Classification rules (no auto-promote)
| Flavor | When |
| --- | --- |
| `residual` | `origin: residual\|handoff`, or title/body already names a residual handoff |
| `planning` | already set, or `status: proposed` without implement/deploy verbs, or planning keywords |
| `refactoring` | title keyword refactor/rename/terminology/cleanup/strangler |
| `extension` | title keyword adapt/extension/follow-on (and not implement) |
| `implementation` | default for ready/active/blocked functional work |
Unset was treated as relevant, then filled. Existing valid `flavor:` was kept
(`CUST-WP-0072`, `INFD-WP-0002`, `COORDINATION-WP-0005`, `RAIL-FAB-WP-0030`).
`depends_on` was copied from existing `depends_on` / `depends_on_workplans` /
`blocked_on` workplan ids only — no edges invented from `related:`.
WHITEHAT-WP-0008 was corrected from `implementation` to `residual` (title
“live ASM residuals after WHITEHAT-WP-0007”).
## Open-workplan cohort (116)
| Flavor | Count |
| --- | ---: |
| implementation | 81 |
| planning | 21 |
| residual | 11 |
| extension | 2 |
| refactoring | 1 |
Residual open workplans:
| Repo | Id | origin_ref |
| --- | --- | --- |
| railiance-fabric | RAIL-FAB-WP-0028 | STATE-WP-0079 |
| railiance-infra | RAIL-HO-WP-0013 | RCLK-WP-0005 |
| ops-warden | WARDEN-WP-0039 | HFACT-WP-0001 |
| approval-engine | APPROVAL-WP-0002 | APPROVAL-WP-0001 |
| tenant-engine | TEN-WP-0012 | TEN-WP-0011 |
| reuse-surface | REUSE-WP-0021 | IDENTITY-WP-0004 |
| hub-core | HUB-WP-0011 | HUB-WP-0010 |
| hub-core | HUB-WP-0009 | OPS-WP-0003 |
| whitehat-security | WHITEHAT-WP-0006 | WHITEHAT-WP-0001 |
| whitehat-security | WHITEHAT-WP-0008 | WHITEHAT-WP-0007 |
| fin-hub | FIN-WP-0006 | RESOURCE-WP-0005 |
Machine table: `coverage.csv` / `coverage.json`.
## T04 — residual intakes vs workplans
42 intakes with `origin: residual`. Join by `origin_ref`:
- 38 → finished/archived parent workplan (intake is the live leftover; not a
second implementation backlog)
- 4 → non-workplan refs (task/decision/legacy id); not open workplans
Zero open workplans were both `flavor: implementation` and the target of a
residual intake. Provenance stays on the intake; flavor is the live
classification on the workplan.
See `intake-join.json`.

View file

@ -0,0 +1,348 @@
#!/usr/bin/env python3
"""One-shot CUST-WP-0072-T02 helper: classify open workplans and patch files.
Does not invent depends_on edges. Does not promote residuals.
"""
from __future__ import annotations
import json
import re
import urllib.request
from collections import Counter, defaultdict
from pathlib import Path
import yaml
API = "http://127.0.0.1:8000"
OPEN = {"proposed", "ready", "active", "blocked", "backlog"}
FLAVORS = {"planning", "implementation", "refactoring", "extension", "residual"}
WP_ID = re.compile(
r"\b([A-Z][A-Z0-9]*(?:-[A-Z][A-Z0-9]*)*-WP-(?:ADHOC-)?[0-9]{4}(?:[a-z])?)\b"
)
ORIGIN_LINE = re.compile(
r"Origin:\s*residual\s+from\s+`?([A-Z][A-Z0-9]*(?:-[A-Z][A-Z0-9]*)*-WP-(?:ADHOC-)?[0-9]{4})",
re.I,
)
PLAN_KW = re.compile(
r"\b(spec|design|canon|policy|review|declare|founding|charter|"
r"convention|assessment|plan-derived|establish intent)\b",
re.I,
)
IMPL_KW = re.compile(
r"\b(implement|deploy|admit|migrate|build|provision|activate|"
r"cut over|restore|bind)\b",
re.I,
)
REF_KW = re.compile(r"\b(refactor|rename|terminology|cleanup|strangler)\b", re.I)
EXT_KW = re.compile(r"\b(adapt(?:ation)?|extension|follow-on)\b", re.I)
TITLE_RESIDUAL = re.compile(
r"(authorized live residuals|residual from|residual of|residual handoff|"
r"^residual\b)",
re.I,
)
def get(path: str):
with urllib.request.urlopen(API + path, timeout=30) as response:
return json.load(response)
def parse_fm(text: str) -> tuple[dict, str, str]:
if not text.startswith("---"):
return {}, text, ""
rest = text[3:]
end = rest.find("\n---")
if end < 0:
return {}, text, ""
raw = rest[:end].lstrip("\n")
body = rest[end + 4 :]
loaded = yaml.safe_load(raw) or {}
if not isinstance(loaded, dict):
loaded = {}
return loaded, body, raw
def classify(meta: dict, title: str, body: str, status: str) -> tuple[str, str]:
existing = str(meta.get("flavor") or "").strip().lower()
if existing in FLAVORS:
return existing, "already-set"
origin = str(meta.get("origin") or "").strip().lower()
if origin in {"residual", "handoff"}:
return "residual", "origin"
if TITLE_RESIDUAL.search(title or "") or ORIGIN_LINE.search(body[:1500] or ""):
return "residual", "prose"
if REF_KW.search(title or ""):
return "refactoring", "keyword"
if EXT_KW.search(title or "") and not IMPL_KW.search(title or ""):
return "extension", "keyword"
if status == "proposed":
if IMPL_KW.search(title or ""):
return "implementation", "proposed-implement"
return "planning", "proposed"
if PLAN_KW.search(title or "") and not IMPL_KW.search(title or ""):
return "planning", "keyword"
return "implementation", "default"
def existing_depends(meta: dict, self_id: str) -> list[str]:
ids: list[str] = []
for key in ("depends_on", "depends_on_workplans"):
val = meta.get(key)
if isinstance(val, str):
ids.extend(WP_ID.findall(val))
elif isinstance(val, list):
for item in val:
ids.extend(WP_ID.findall(str(item)))
ids.extend(WP_ID.findall(str(meta.get("blocked_on") or "")))
out: list[str] = []
seen: set[str] = set()
for item in ids:
if item == self_id or item in seen:
continue
seen.add(item)
out.append(item)
return out
def index_workplan_files(repo_path: Path) -> dict[str, Path]:
found: dict[str, Path] = {}
for directory in (repo_path / "workplans", repo_path / "workplans" / "archived"):
if not directory.is_dir():
continue
for path in directory.glob("*.md"):
try:
text = path.read_text(encoding="utf-8")
except OSError:
continue
meta, _, _ = parse_fm(text)
wid = str(meta.get("id") or "").strip()
if wid:
found.setdefault(wid, path)
return found
def insert_after_status(raw: str, flavor: str) -> str:
if re.search(r"^flavor:\s*", raw, re.M):
return raw
lines = raw.splitlines()
out = []
inserted = False
for line in lines:
out.append(line)
if not inserted and re.match(r"^status:\s*", line):
out.append(f"flavor: {flavor}")
inserted = True
if not inserted:
out.append(f"flavor: {flavor}")
return "\n".join(out)
def insert_depends_on(raw: str, deps: list[str]) -> str:
if re.search(r"^depends_on:\s*", raw, re.M):
return raw
block = "depends_on:\n" + "\n".join(f" - {item}" for item in deps)
lines = raw.splitlines()
out = []
inserted = False
for line in lines:
out.append(line)
if not inserted and re.match(r"^flavor:\s*", line):
out.extend(block.splitlines())
inserted = True
if not inserted:
out.extend(block.splitlines())
return "\n".join(out)
def insert_origin(raw: str, origin: str, origin_ref: str | None) -> str:
lines = raw.splitlines()
have_origin = any(re.match(r"^origin:\s*", line) for line in lines)
have_ref = any(re.match(r"^origin_ref:\s*", line) for line in lines)
extra = []
if not have_origin:
extra.append(f"origin: {origin}")
if origin_ref and not have_ref:
extra.append(f"origin_ref: {origin_ref}")
if not extra:
return raw
out = []
inserted = False
for line in lines:
out.append(line)
if not inserted and re.match(r"^flavor:\s*", line):
out.extend(extra)
inserted = True
if not inserted:
out.extend(extra)
return "\n".join(out)
def patch_residual_tasks(body: str) -> tuple[str, int]:
count = 0
def repl(match: re.Match[str]) -> str:
nonlocal count
block = match.group(0)
inner = match.group(1)
if re.search(r"^flavor:\s*", inner, re.M):
return block
inner_lines = inner.splitlines()
new_inner = []
inserted = False
for line in inner_lines:
new_inner.append(line)
if not inserted and re.match(r"^status:\s*", line):
new_inner.append("flavor: residual")
inserted = True
count += 1
if not inserted:
new_inner.append("flavor: residual")
count += 1
return "```task\n" + "\n".join(new_inner) + "\n```"
patched = re.sub(r"```task\n(.*?)```", repl, body, flags=re.S)
return patched, count
def rebuild(raw: str, body: str) -> str:
if not raw.endswith("\n"):
raw += "\n"
if body.startswith("\n"):
return f"---\n{raw}---{body}"
return f"---\n{raw}---\n{body}"
def main() -> None:
repos = {row["id"]: row for row in get("/repos/")}
open_wps = [
row
for row in get("/workplans/")
if (row.get("status") or "").lower() in OPEN
and "@retired" not in (row.get("slug") or "")
]
coverage = []
changed_by_repo: dict[str, list[str]] = defaultdict(list)
stats = Counter()
for wp in open_wps:
repo = repos.get(wp.get("repo_id") or "") or {}
repo_slug = repo.get("slug") or ""
local = repo.get("local_path")
record = {
"repo": repo_slug,
"hub_slug": wp.get("slug"),
"hub_status": wp.get("status"),
"title": wp.get("title"),
"file": "",
"id": "",
"flavor": "",
"flavor_reason": "",
"depends_on": "",
"origin": "",
"origin_ref": "",
"changed": "no",
"note": "",
}
if not local or not Path(local).is_dir():
record["note"] = "no-local-path"
stats["skip_no_path"] += 1
coverage.append(record)
continue
files = index_workplan_files(Path(local))
# Prefer backing path when it exists
file_path = None
rel = wp.get("backing_relative_path")
fname = wp.get("backing_filename")
if rel and (Path(local) / rel).is_file():
file_path = Path(local) / rel
elif fname and (Path(local) / "workplans" / fname).is_file():
file_path = Path(local) / "workplans" / fname
text = ""
meta: dict = {}
if file_path:
text = file_path.read_text(encoding="utf-8")
meta, _, _ = parse_fm(text)
wid = str(meta.get("id") or "").strip()
if not wid:
# match by scanning index using hub slug upper
guess = (wp.get("slug") or "").upper().replace("_", "-")
file_path = files.get(guess)
if file_path:
text = file_path.read_text(encoding="utf-8")
meta, _, _ = parse_fm(text)
wid = str(meta.get("id") or "").strip()
if not file_path or not wid:
record["note"] = "no-file"
stats["skip_no_file"] += 1
coverage.append(record)
continue
body_holder = parse_fm(text)
meta, body, raw = body_holder
title = str(meta.get("title") or wp.get("title") or "")
status = str(meta.get("status") or wp.get("status") or "").lower()
flavor, reason = classify(meta, title, body, status)
deps = existing_depends(meta, wid)
origin = str(meta.get("origin") or "").strip()
origin_ref = str(meta.get("origin_ref") or "").strip()
origin_match = ORIGIN_LINE.search(body[:2000])
new_raw = raw
new_body = body
changed = False
task_patches = 0
if str(meta.get("flavor") or "").strip().lower() not in FLAVORS:
new_raw = insert_after_status(new_raw, flavor)
changed = True
if deps and not meta.get("depends_on"):
new_raw = insert_depends_on(new_raw, deps)
changed = True
if flavor == "residual":
if not origin and origin_match:
origin = "residual"
if not origin_ref and origin_match:
origin_ref = origin_match.group(1)
if origin == "residual" or origin_ref:
before = new_raw
new_raw = insert_origin(new_raw, origin or "residual", origin_ref or None)
if new_raw != before:
changed = True
new_body, task_patches = patch_residual_tasks(new_body)
if task_patches:
changed = True
record.update(
{
"file": str(file_path),
"id": wid,
"flavor": flavor,
"flavor_reason": reason,
"depends_on": ",".join(deps) if deps else "none",
"origin": origin,
"origin_ref": origin_ref,
}
)
if changed:
file_path.write_text(rebuild(new_raw, new_body), encoding="utf-8")
record["changed"] = "yes"
if task_patches:
record["note"] = f"task_flavor={task_patches}"
changed_by_repo[repo_slug].append(str(file_path))
stats["changed"] += 1
else:
stats["unchanged"] += 1
coverage.append(record)
out_dir = Path(__file__).resolve().parent
(out_dir / "coverage.json").write_text(
json.dumps({"stats": dict(stats), "rows": coverage}, indent=2) + "\n",
encoding="utf-8",
)
(out_dir / "changed-by-repo.json").write_text(
json.dumps(changed_by_repo, indent=2) + "\n", encoding="utf-8"
)
print(json.dumps({"stats": dict(stats), "repos_changed": len(changed_by_repo)}, indent=2))
if __name__ == "__main__":
main()

View file

@ -0,0 +1,226 @@
{
"net-kingdom": [
"/home/worsch/net-kingdom/workplans/NK-WP-0033-keycape-secret-exposure-rotation.md",
"/home/worsch/net-kingdom/workplans/NK-WP-0035-emission-cadence-security-profile.md",
"/home/worsch/net-kingdom/workplans/NK-WP-0027-reef-placement-reconciliation.md",
"/home/worsch/net-kingdom/workplans/NK-WP-0031-deterministic-posture-feedback.md",
"/home/worsch/net-kingdom/workplans/NK-WP-0009-netkingdom-security-pattern-tutorials.md",
"/home/worsch/net-kingdom/workplans/NK-WP-0032-openbao-operator-loopback-callback.md",
"/home/worsch/net-kingdom/workplans/NK-WP-0037-vergabe-company-welcome.md",
"/home/worsch/net-kingdom/workplans/NK-WP-0022-railiance01-identity-cutover-and-coulombcore-retirement.md",
"/home/worsch/net-kingdom/workplans/NK-WP-0011-enterprise-federation-saml.md",
"/home/worsch/net-kingdom/workplans/NK-WP-0034-verification-that-verifies.md",
"/home/worsch/net-kingdom/workplans/NK-WP-0036-restore-user-portal-client-registration.md"
],
"flex-auth": [
"/home/worsch/flex-auth/workplans/FLEX-WP-0022-tenant-scope-coverage.md",
"/home/worsch/flex-auth/workplans/FLEX-WP-0027-t03-human-review.md",
"/home/worsch/flex-auth/workplans/FLEX-WP-0020-repository-identity-migration.md"
],
"ops-warden": [
"/home/worsch/ops-warden/workplans/WARDEN-WP-0040-unknown-zone-fail-closed-adoption.md",
"/home/worsch/ops-warden/workplans/WARDEN-WP-0034-layer-model-v07-conformance.md",
"/home/worsch/ops-warden/workplans/WARDEN-WP-0027-credential-governance-lockdown.md",
"/home/worsch/ops-warden/workplans/WARDEN-WP-0037-whynot-design-forgejo-npm-lane.md",
"/home/worsch/ops-warden/workplans/WARDEN-WP-0039-explicit-policy-refusal.md"
],
"fluid-telegram": [
"/home/worsch/fluid-telegram/workplans/FT-WP-0001-telegram-identity-and-hall-channel.md",
"/home/worsch/fluid-telegram/workplans/FT-WP-0002-declared-presence-provisioning.md"
],
"fluid-core": [
"/home/worsch/fluid-core/workplans/FLUID-WP-0008-fluid-telegram-handover.md",
"/home/worsch/fluid-core/workplans/FLUID-WP-0009-campaign-repos-and-example-separation.md"
],
"intelligence-radar": [
"/home/worsch/intelligence-radar/workplans/IR-WP-0004-evidence-coverage-and-field-calibration.md"
],
"state-hub": [
"/home/worsch/state-hub/workplans/STATE-WP-0079-retirement-strangler.md",
"/home/worsch/state-hub/workplans/CUST-WP-0038-state-hub-threephoenix-ha.md"
],
"the-custodian": [
"/home/worsch/the-custodian/workplans/CUST-WP-0071-measured-workload-sizing-and-weekly-review.md"
],
"railiance-clock": [
"/home/worsch/railiance-clock/workplans/RCLK-WP-0003-reference-implementation.md",
"/home/worsch/railiance-clock/workplans/RCLK-WP-0002-contract-review.md",
"/home/worsch/railiance-clock/workplans/RCLK-WP-0005-infrastructure-as-code.md",
"/home/worsch/railiance-clock/workplans/RCLK-WP-0004-deployment-adoption.md"
],
"informed-decision": [
"/home/worsch/informed-decision/workplans/INFD-WP-0001-founding-specs-and-approver-ui-ownership.md"
],
"coordination-engine": [
"/home/worsch/coordination-engine/workplans/COORDINATION-WP-0004-orwell-canon-review.md"
],
"railiance-fabric": [
"/home/worsch/railiance-fabric/workplans/RAIL-FAB-WP-0028-hosted-financial-fabric-authority.md",
"/home/worsch/railiance-fabric/workplans/RAIL-FAB-WP-0029-coordination-graph-perspective.md"
],
"railiance-infra": [
"/home/worsch/railiance-infra/workplans/RAIL-HO-WP-0013-host-utc-timesyncd.md",
"/home/worsch/railiance-infra/workplans/RAIL-HO-WP-0011-reproducible-s1-declaration-and-handoff.md",
"/home/worsch/railiance-infra/workplans/RAIL-HO-WP-0012-s1-backup-recovery-loop.md"
],
"hall-of-helix": [
"/home/worsch/hall-of-helix/workplans/HOH-WP-0002-published-hall-and-renderers.md"
],
"ops-mason": [
"/home/worsch/ops-mason/workplans/MASON-WP-0004-credential-inventory-descriptions.md",
"/home/worsch/ops-mason/workplans/MASON-WP-0005-fluid-telegram-operator-credential-lane.md"
],
"railiance-platform": [
"/home/worsch/railiance-platform/workplans/RPF-WP-0035-credential-lane-implementation.md",
"/home/worsch/railiance-platform/workplans/RPF-WP-0025-openbao-operator-only-access.md",
"/home/worsch/railiance-platform/workplans/RPF-WP-0027-keycape-live-secret-exposure-recovery.md",
"/home/worsch/railiance-platform/workplans/RPF-WP-0036-platform-service-assurance.md",
"/home/worsch/railiance-platform/workplans/RPF-WP-0015-audit-core-custody-and-recovery-coordination.md",
"/home/worsch/railiance-platform/workplans/RPF-WP-0038-forgejo-scaleway-primary-coverage.md",
"/home/worsch/railiance-platform/workplans/RPF-WP-0029-backup-credential-default-removal.md"
],
"railiance-cluster": [
"/home/worsch/railiance-cluster/workplans/RCLUSTER-WP-0007-threephoenix-ha-cluster.md"
],
"rein-aharness": [
"/home/worsch/rein-aharness/workplans/REINAH-WP-0003-governed-runtime-integrity.md"
],
"secrets-engine": [
"/home/worsch/secrets-engine/workplans/SECRETS-WP-0010-openrouter-native-access.md",
"/home/worsch/secrets-engine/workplans/SECRETS-WP-0006-catalog-lane-adoption.md",
"/home/worsch/secrets-engine/workplans/SECRETS-WP-0008-layer-model-lifecycle-conformance.md",
"/home/worsch/secrets-engine/workplans/SECRETS-WP-0007-production-lifecycle-hardening.md",
"/home/worsch/secrets-engine/workplans/SECRETS-WP-0009-glas-claude-native-delivery.md"
],
"approval-engine": [
"/home/worsch/approval-engine/workplans/APPROVAL-WP-0002-production-readiness-and-consumer-adoption.md"
],
"freedom-intelligence": [
"/home/worsch/freedom-intelligence/workplans/FI-WP-0004-operational-loop-and-scaleway-reserve.md"
],
"activity-core": [
"/home/worsch/activity-core/workplans/ACTIVITY-WP-0035-intent-boundary-guardrails.md",
"/home/worsch/activity-core/workplans/ACTIVITY-WP-0036-queue-identity-and-lease-integrity.md",
"/home/worsch/activity-core/workplans/ACTIVITY-WP-0032-glas-profile-execution-contract.md"
],
"user-engine": [
"/home/worsch/user-engine/workplans/USER-WP-0026-account-recovery.md",
"/home/worsch/user-engine/workplans/USER-WP-0025-operator-navigation-and-logout.md",
"/home/worsch/user-engine/workplans/USER-WP-0027-account-journey-clarity.md",
"/home/worsch/user-engine/workplans/USER-WP-0028-user-journey-acceptance.md"
],
"key-cape": [
"/home/worsch/key-cape/workplans/KEY-WP-0013-approval-engine-resource-audience.md",
"/home/worsch/key-cape/workplans/KEY-WP-0033-vergabe-fresh-login.md",
"/home/worsch/key-cape/workplans/KEY-WP-0034-account-recovery.md"
],
"rapp-user-engine": [
"/home/worsch/rapp-user-engine/workplans/RAPP-USER-ENGINE-WP-0002-canonical-users-hostname.md"
],
"vergabe-teilnahme": [
"/home/worsch/vergabe-teilnahme/workplans/VERGABE-WP-0018-customer-factory-delivery.md",
"/home/worsch/vergabe-teilnahme/workplans/VERGABE-WP-0019-invited-company-pilot.md"
],
"railiance-apps": [
"/home/worsch/railiance-apps/workplans/RAPPS-WP-0014-vergabe-invited-pilot.md"
],
"prj-helixforge-factory": [
"/home/worsch/prj-helixforge-factory/workplans/HFACT-WP-0001-establish-internal-factory.md"
],
"audit-core": [
"/home/worsch/audit-core/workplans/AUDIT-WP-0010-tenant-engine-sender-admission.md",
"/home/worsch/audit-core/workplans/AUDIT-WP-0008-tenancy-posture-alignment.md",
"/home/worsch/audit-core/workplans/AUDIT-WP-0009-evidence-role-conformance.md"
],
"tenant-engine": [
"/home/worsch/tenant-engine/workplans/TEN-WP-0012-external-conformance-waits.md"
],
"sand-boxer": [
"/home/worsch/sand-boxer/workplans/SAND-WP-0015-bwrap-runtime-and-private-state.md",
"/home/worsch/sand-boxer/workplans/SAND-WP-0014-owner-mediated-execution.md"
],
"info-tech-canon": [
"/home/worsch/info-tech-canon/workplans/INFO-WP-0019-conformance-and-maintenance.md"
],
"llm-connect": [
"/home/worsch/llm-connect/workplans/LLM-WP-0009-owner-metered-messages-transport.md"
],
"glas-harness": [
"/home/worsch/glas-harness/workplans/GLAS-WP-0012-first-local-profile-production-proof.md",
"/home/worsch/glas-harness/workplans/GLAS-WP-0015-production-dependency-coordination.md"
],
"rapp-postgres": [
"/home/worsch/rapp-postgres/workplans/RAPP-POSTGRES-WP-0006-canned-prompts-admission.md"
],
"rapp-telemetry": [
"/home/worsch/rapp-telemetry/workplans/RAPP-TELEMETRY-WP-0001-foundation.md"
],
"railiance-telemetry": [
"/home/worsch/railiance-telemetry/workplans/RTEL-WP-0002-signal-contract.md"
],
"reuse-surface": [
"/home/worsch/reuse-surface/workplans/REUSE-WP-0021-commerce-canon-source-rename.md"
],
"pqrst-practice": [
"/home/worsch/pqrst-practice/workplans/PQRST-WP-0002-validate-v01-against-real-sessions.md"
],
"rapp-core-hub": [
"/home/worsch/rapp-core-hub/workplans/RAPPCOREHUB-WP-0003-forgejo-repository-publisher.md",
"/home/worsch/rapp-core-hub/workplans/RAPPCOREHUB-WP-0002-hub-core-candidate-and-cutover.md"
],
"hub-core": [
"/home/worsch/hub-core/workplans/HUB-WP-0011-statehub-inbox-freshness-and-cutover.md",
"/home/worsch/hub-core/workplans/HUB-WP-0009-extension-conformance-gaps.md",
"/home/worsch/hub-core/workplans/HUB-WP-0006-repository-classification-navigation.md"
],
"rapp-qonto": [
"/home/worsch/rapp-qonto/workplans/RAPP-QONTO-WP-0002-resource-usage-and-cost-evidence.md"
],
"whitehat-security": [
"/home/worsch/whitehat-security/workplans/WHITEHAT-WP-0006-authorized-live-residuals.md",
"/home/worsch/whitehat-security/workplans/WHITEHAT-WP-0008-live-asm-residuals.md"
],
"fin-hub": [
"/home/worsch/fin-hub/workplans/FIN-WP-0005-datev-accounting-adapter-operations.md",
"/home/worsch/fin-hub/workplans/FIN-WP-0006-internal-transfer-settlement.md",
"/home/worsch/fin-hub/workplans/FIN-WP-0004-resource-cost-evidence-contract.md"
],
"soul-frame": [
"/home/worsch/soul-frame/workplans/SOUL-WP-0008-phase-vii-paper.md"
],
"railiance-master": [
"/home/worsch/railiance-master/workplans/RMASTER-WP-0020-openbao-migration-to-reef-railiance.md"
],
"prj-unattended-progress-company": [
"/home/worsch/prj-unattended-progress-company/workplans/UPC-WP-0004-first-offer-and-revenue.md",
"/home/worsch/prj-unattended-progress-company/workplans/UPC-WP-0003-unattended-and-load.md",
"/home/worsch/prj-unattended-progress-company/workplans/UPC-WP-0002-company-vessel-closeout.md"
],
"prj-forgejo-org-refactor": [
"/home/worsch/prj-forgejo-org-refactor/workplans/ORGREF-WP-0001-foundation-and-entry-gate.md"
],
"reef-railiance": [
"/home/worsch/reef-railiance/workplans/REEF-RAILIANCE-WP-0003-rapp-qonto-production-gates.md"
],
"rapp-openbao": [
"/home/worsch/rapp-openbao/workplans/RAPP-OPENBAO-WP-0002-operator-only-ui-exposure.md"
],
"core-hub": [
"/home/worsch/core-hub/workplans/CORE-WP-0010-runtime-absorption-and-archive.md"
],
"adaptive-pricing": [
"/home/worsch/adaptive-pricing/workplans/ADAPTIVE-WP-0010-plan-derived-guardrail-ceilings.md"
],
"rapp-tenant-engine": [
"/home/worsch/rapp-tenant-engine/workplans/RAPP-TENANT-ENGINE-WP-0001-bootstrap.md"
],
"test-driver": [
"/home/worsch/test-driver/workplans/TD-WP-0003-generalise-and-settle.md"
],
"reef-storage": [
"/home/worsch/reef-storage/workplans/REEF-STORAGE-WP-0002-fill-after-purchase.md"
],
"markitect-main": [
"/home/worsch/markitect-main/workplans/MARKITECT-WP-0002-testdrive-jsui-publication.md"
]
}

View file

@ -0,0 +1,117 @@
repo,id,hub_status,flavor,flavor_reason,depends_on,origin,origin_ref,changed
net-kingdom,NK-WP-0033,active,implementation,default,none,routed,State Hub message 8cc44a39-683c-4fab-80dd-b2275d0728e0,yes
flex-auth,FLEX-WP-0022,proposed,planning,proposed,FLEX-WP-0021,,,yes
ops-warden,WARDEN-WP-0040,proposed,planning,proposed,"WARDEN-WP-0032,WARDEN-WP-0034",,,yes
ops-warden,WARDEN-WP-0034,active,implementation,default,WARDEN-WP-0030,,,yes
net-kingdom,NK-WP-0035,blocked,implementation,default,none,,,yes
net-kingdom,NK-WP-0027,blocked,planning,keyword,none,,,yes
net-kingdom,NK-WP-0031,blocked,implementation,default,none,,,yes
fluid-telegram,FT-WP-0001,active,implementation,default,FLUID-WP-0008,,,yes
fluid-core,FLUID-WP-0008,active,implementation,default,FLUID-WP-0007,,,yes
net-kingdom,NK-WP-0009,backlog,implementation,default,NK-WP-0008,,,yes
fluid-core,FLUID-WP-0009,active,implementation,default,FLUID-WP-0008,,,yes
ops-warden,WARDEN-WP-0027,active,implementation,default,none,,,yes
intelligence-radar,IR-WP-0004,active,implementation,default,none,,,yes
state-hub,STATE-WP-0079,blocked,refactoring,keyword,none,,,yes
state-hub,CUST-WP-0038,backlog,implementation,default,CUST-WP-0011,,,yes
the-custodian,CUST-WP-0072,proposed,planning,already-set,STATE-WP-0092,residual-policy,the-custodian/history/20260914-open-workplan-chokepoints.md,no
the-custodian,CUST-WP-0071,active,planning,keyword,none,,,yes
railiance-clock,RCLK-WP-0003,proposed,implementation,proposed-implement,RCLK-WP-0002,,,yes
railiance-clock,RCLK-WP-0002,active,planning,keyword,RCLK-WP-0001,,,yes
railiance-clock,RCLK-WP-0005,active,implementation,default,none,,,yes
railiance-clock,RCLK-WP-0004,proposed,implementation,proposed-implement,"RCLK-WP-0003,RCLK-WP-0005",,,yes
informed-decision,INFD-WP-0002,proposed,planning,already-set,INFD-WP-0001,demand,the-custodian/history/20260914-open-workplan-chokepoints.md,no
informed-decision,INFD-WP-0001,active,planning,keyword,none,founding,history/20260909-initial-exploration/InitialExploration.md,yes
coordination-engine,COORDINATION-WP-0005,proposed,extension,already-set,none,residual-policy,the-custodian/history/20260914-open-workplan-chokepoints.md,no
coordination-engine,COORDINATION-WP-0004,active,planning,keyword,none,,,yes
railiance-fabric,RAIL-FAB-WP-0030,proposed,extension,already-set,"STATE-WP-0092,RAIL-FAB-WP-0029",residual-policy,the-custodian/history/20260914-open-workplan-chokepoints.md,no
railiance-fabric,RAIL-FAB-WP-0028,proposed,residual,prose,none,residual,STATE-WP-0079,yes
railiance-fabric,RAIL-FAB-WP-0029,proposed,planning,proposed,none,,,yes
railiance-infra,RAIL-HO-WP-0013,proposed,residual,origin,none,residual,RCLK-WP-0005,yes
railiance-infra,RAIL-HO-WP-0011,active,implementation,default,none,,,yes
railiance-infra,RAIL-HO-WP-0012,active,implementation,default,none,,,yes
hall-of-helix,HOH-WP-0002,active,implementation,default,none,,,yes
ops-mason,MASON-WP-0004,proposed,planning,proposed,none,,,yes
ops-mason,MASON-WP-0005,proposed,planning,proposed,none,,,yes
railiance-platform,RPF-WP-0035,blocked,implementation,default,none,,,yes
railiance-platform,RPF-WP-0025,blocked,implementation,default,none,,,yes
railiance-platform,RPF-WP-0027,blocked,implementation,default,none,routed,"State Hub messages e88abb61-e393-4a82-817c-5ac378a2ee3d, acf98be3-ff6b-4270-bd21-0193bebd806b, aeb216b5-9f1b-404b-a483-fb08a00a49b1, and 71b1008a-7fd7-4500-85c6-e8893a6d80d4",yes
railiance-platform,RPF-WP-0036,blocked,implementation,default,none,,,yes
railiance-platform,RPF-WP-0015,blocked,implementation,default,none,routed,State Hub messages 10f80080-4c83-42ba-8590-f23c582d9f05 and a93fa88f-a9c5-4539-93ae-0c8f8490f53d,yes
railiance-platform,RPF-WP-0038,active,implementation,default,none,,,yes
railiance-platform,RPF-WP-0029,blocked,implementation,default,none,,,yes
railiance-cluster,RCLUSTER-WP-0007,blocked,implementation,default,none,,,yes
flex-auth,FLEX-WP-0027,active,implementation,default,none,,,yes
flex-auth,FLEX-WP-0020,proposed,planning,proposed,none,,,yes
ops-warden,WARDEN-WP-0037,active,planning,keyword,none,,,yes
ops-warden,WARDEN-WP-0039,blocked,residual,origin,none,residual,HFACT-WP-0001,yes
net-kingdom,NK-WP-0032,blocked,implementation,default,none,routed,State Hub message 5e56b413-d8ec-4718-b432-2debc40498ca,yes
net-kingdom,NK-WP-0037,active,implementation,default,none,,,yes
net-kingdom,NK-WP-0022,blocked,implementation,default,"USER-WP-0020,NK-WP-0023,KEY-WP-0004",,,yes
net-kingdom,NK-WP-0011,backlog,implementation,default,"NK-WP-0003,NK-WP-0004,NK-WP-0006",,,yes
net-kingdom,NK-WP-0034,blocked,implementation,default,none,,,yes
net-kingdom,NK-WP-0036,active,implementation,default,none,,,yes
rein-aharness,REINAH-WP-0003,active,implementation,default,none,,,yes
secrets-engine,SECRETS-WP-0010,active,implementation,default,none,,,yes
secrets-engine,SECRETS-WP-0006,active,implementation,default,none,,,yes
secrets-engine,SECRETS-WP-0008,active,implementation,default,none,,,yes
secrets-engine,SECRETS-WP-0007,active,implementation,default,none,,,yes
secrets-engine,SECRETS-WP-0009,blocked,implementation,default,none,,,yes
fluid-telegram,FT-WP-0002,active,implementation,default,FT-WP-0001,,,yes
approval-engine,APPROVAL-WP-0002,active,residual,origin,none,residual,APPROVAL-WP-0001,yes
freedom-intelligence,FI-WP-0004,active,implementation,default,"FI-WP-0001,FI-WP-0002,FI-WP-0003",,,yes
activity-core,ACTIVITY-WP-0035,active,planning,keyword,none,,,yes
activity-core,ACTIVITY-WP-0036,active,implementation,default,none,,,yes
activity-core,ACTIVITY-WP-0032,active,implementation,default,none,,,yes
user-engine,USER-WP-0026,active,implementation,default,none,,,yes
user-engine,USER-WP-0025,active,implementation,default,none,,,yes
user-engine,USER-WP-0027,active,implementation,default,none,,,yes
user-engine,USER-WP-0028,active,implementation,default,none,,,yes
key-cape,KEY-WP-0013,blocked,implementation,default,none,,,yes
key-cape,KEY-WP-0033,active,implementation,default,none,,,yes
key-cape,KEY-WP-0034,active,implementation,default,none,,,yes
rapp-user-engine,RAPP-USER-ENGINE-WP-0002,active,implementation,default,none,,,yes
vergabe-teilnahme,VERGABE-WP-0018,blocked,implementation,default,none,,,yes
vergabe-teilnahme,VERGABE-WP-0019,active,implementation,default,none,,,yes
railiance-apps,RAPPS-WP-0014,active,implementation,default,none,,,yes
prj-helixforge-factory,HFACT-WP-0001,active,implementation,default,none,,,yes
audit-core,AUDIT-WP-0010,active,implementation,default,AUDIT-WP-0005,,,yes
audit-core,AUDIT-WP-0008,active,implementation,default,AUDIT-WP-0007,,,yes
audit-core,AUDIT-WP-0009,active,implementation,default,AUDIT-WP-0007,,,yes
tenant-engine,TEN-WP-0012,blocked,residual,origin,TEN-WP-0011,residual,TEN-WP-0011,yes
sand-boxer,SAND-WP-0015,blocked,implementation,default,none,,,yes
sand-boxer,SAND-WP-0014,active,implementation,default,none,,,yes
info-tech-canon,INFO-WP-0019,blocked,implementation,default,none,,,yes
llm-connect,LLM-WP-0009,active,implementation,default,none,,,yes
glas-harness,GLAS-WP-0012,blocked,implementation,default,none,,,yes
glas-harness,GLAS-WP-0015,active,implementation,default,none,,,yes
rapp-postgres,RAPP-POSTGRES-WP-0006,active,implementation,default,none,,,yes
rapp-telemetry,RAPP-TELEMETRY-WP-0001,active,implementation,default,none,,,yes
railiance-telemetry,RTEL-WP-0002,active,implementation,default,none,,,yes
reuse-surface,REUSE-WP-0021,active,residual,origin,none,residual,IDENTITY-WP-0004,yes
pqrst-practice,PQRST-WP-0002,proposed,planning,proposed,none,,,yes
rapp-core-hub,RAPPCOREHUB-WP-0003,active,implementation,default,none,,,yes
rapp-core-hub,RAPPCOREHUB-WP-0002,active,implementation,default,none,,,yes
hub-core,HUB-WP-0011,proposed,residual,origin,none,residual,HUB-WP-0010,yes
hub-core,HUB-WP-0009,proposed,residual,origin,none,residual,OPS-WP-0003,yes
hub-core,HUB-WP-0006,active,implementation,default,none,,,yes
rapp-qonto,RAPP-QONTO-WP-0002,ready,implementation,default,none,,,yes
whitehat-security,WHITEHAT-WP-0006,blocked,residual,prose,none,residual,WHITEHAT-WP-0001,yes
whitehat-security,WHITEHAT-WP-0008,blocked,residual,prose,none,residual,WHITEHAT-WP-0007,yes
fin-hub,FIN-WP-0005,active,implementation,default,none,,,yes
fin-hub,FIN-WP-0006,proposed,residual,origin,none,residual,RESOURCE-WP-0005,yes
fin-hub,FIN-WP-0004,active,implementation,default,none,,,yes
soul-frame,SOUL-WP-0008,ready,implementation,default,SOUL-WP-0007,,,yes
railiance-master,RMASTER-WP-0020,blocked,implementation,default,NK-WP-0022,,,yes
prj-unattended-progress-company,UPC-WP-0004,proposed,planning,proposed,none,,,yes
prj-unattended-progress-company,UPC-WP-0003,proposed,planning,proposed,none,,,yes
prj-unattended-progress-company,UPC-WP-0002,active,implementation,default,none,,,yes
prj-forgejo-org-refactor,ORGREF-WP-0001,backlog,implementation,default,none,,,yes
reef-railiance,REEF-RAILIANCE-WP-0003,blocked,implementation,default,none,,,yes
rapp-openbao,RAPP-OPENBAO-WP-0002,blocked,implementation,default,none,,,yes
core-hub,CORE-WP-0010,active,implementation,default,none,,,yes
adaptive-pricing,ADAPTIVE-WP-0010,proposed,planning,proposed,none,,,yes
rapp-tenant-engine,RAPP-TENANT-ENGINE-WP-0001,proposed,planning,proposed,none,,,yes
test-driver,TD-WP-0003,proposed,planning,proposed,none,,,yes
reef-storage,REEF-STORAGE-WP-0002,active,implementation,default,none,,,yes
markitect-main,MARKITECT-WP-0002,backlog,implementation,default,none,,,yes
1 repo id hub_status flavor flavor_reason depends_on origin origin_ref changed
2 net-kingdom NK-WP-0033 active implementation default none routed State Hub message 8cc44a39-683c-4fab-80dd-b2275d0728e0 yes
3 flex-auth FLEX-WP-0022 proposed planning proposed FLEX-WP-0021 yes
4 ops-warden WARDEN-WP-0040 proposed planning proposed WARDEN-WP-0032,WARDEN-WP-0034 yes
5 ops-warden WARDEN-WP-0034 active implementation default WARDEN-WP-0030 yes
6 net-kingdom NK-WP-0035 blocked implementation default none yes
7 net-kingdom NK-WP-0027 blocked planning keyword none yes
8 net-kingdom NK-WP-0031 blocked implementation default none yes
9 fluid-telegram FT-WP-0001 active implementation default FLUID-WP-0008 yes
10 fluid-core FLUID-WP-0008 active implementation default FLUID-WP-0007 yes
11 net-kingdom NK-WP-0009 backlog implementation default NK-WP-0008 yes
12 fluid-core FLUID-WP-0009 active implementation default FLUID-WP-0008 yes
13 ops-warden WARDEN-WP-0027 active implementation default none yes
14 intelligence-radar IR-WP-0004 active implementation default none yes
15 state-hub STATE-WP-0079 blocked refactoring keyword none yes
16 state-hub CUST-WP-0038 backlog implementation default CUST-WP-0011 yes
17 the-custodian CUST-WP-0072 proposed planning already-set STATE-WP-0092 residual-policy the-custodian/history/20260914-open-workplan-chokepoints.md no
18 the-custodian CUST-WP-0071 active planning keyword none yes
19 railiance-clock RCLK-WP-0003 proposed implementation proposed-implement RCLK-WP-0002 yes
20 railiance-clock RCLK-WP-0002 active planning keyword RCLK-WP-0001 yes
21 railiance-clock RCLK-WP-0005 active implementation default none yes
22 railiance-clock RCLK-WP-0004 proposed implementation proposed-implement RCLK-WP-0003,RCLK-WP-0005 yes
23 informed-decision INFD-WP-0002 proposed planning already-set INFD-WP-0001 demand the-custodian/history/20260914-open-workplan-chokepoints.md no
24 informed-decision INFD-WP-0001 active planning keyword none founding history/20260909-initial-exploration/InitialExploration.md yes
25 coordination-engine COORDINATION-WP-0005 proposed extension already-set none residual-policy the-custodian/history/20260914-open-workplan-chokepoints.md no
26 coordination-engine COORDINATION-WP-0004 active planning keyword none yes
27 railiance-fabric RAIL-FAB-WP-0030 proposed extension already-set STATE-WP-0092,RAIL-FAB-WP-0029 residual-policy the-custodian/history/20260914-open-workplan-chokepoints.md no
28 railiance-fabric RAIL-FAB-WP-0028 proposed residual prose none residual STATE-WP-0079 yes
29 railiance-fabric RAIL-FAB-WP-0029 proposed planning proposed none yes
30 railiance-infra RAIL-HO-WP-0013 proposed residual origin none residual RCLK-WP-0005 yes
31 railiance-infra RAIL-HO-WP-0011 active implementation default none yes
32 railiance-infra RAIL-HO-WP-0012 active implementation default none yes
33 hall-of-helix HOH-WP-0002 active implementation default none yes
34 ops-mason MASON-WP-0004 proposed planning proposed none yes
35 ops-mason MASON-WP-0005 proposed planning proposed none yes
36 railiance-platform RPF-WP-0035 blocked implementation default none yes
37 railiance-platform RPF-WP-0025 blocked implementation default none yes
38 railiance-platform RPF-WP-0027 blocked implementation default none routed State Hub messages e88abb61-e393-4a82-817c-5ac378a2ee3d, acf98be3-ff6b-4270-bd21-0193bebd806b, aeb216b5-9f1b-404b-a483-fb08a00a49b1, and 71b1008a-7fd7-4500-85c6-e8893a6d80d4 yes
39 railiance-platform RPF-WP-0036 blocked implementation default none yes
40 railiance-platform RPF-WP-0015 blocked implementation default none routed State Hub messages 10f80080-4c83-42ba-8590-f23c582d9f05 and a93fa88f-a9c5-4539-93ae-0c8f8490f53d yes
41 railiance-platform RPF-WP-0038 active implementation default none yes
42 railiance-platform RPF-WP-0029 blocked implementation default none yes
43 railiance-cluster RCLUSTER-WP-0007 blocked implementation default none yes
44 flex-auth FLEX-WP-0027 active implementation default none yes
45 flex-auth FLEX-WP-0020 proposed planning proposed none yes
46 ops-warden WARDEN-WP-0037 active planning keyword none yes
47 ops-warden WARDEN-WP-0039 blocked residual origin none residual HFACT-WP-0001 yes
48 net-kingdom NK-WP-0032 blocked implementation default none routed State Hub message 5e56b413-d8ec-4718-b432-2debc40498ca yes
49 net-kingdom NK-WP-0037 active implementation default none yes
50 net-kingdom NK-WP-0022 blocked implementation default USER-WP-0020,NK-WP-0023,KEY-WP-0004 yes
51 net-kingdom NK-WP-0011 backlog implementation default NK-WP-0003,NK-WP-0004,NK-WP-0006 yes
52 net-kingdom NK-WP-0034 blocked implementation default none yes
53 net-kingdom NK-WP-0036 active implementation default none yes
54 rein-aharness REINAH-WP-0003 active implementation default none yes
55 secrets-engine SECRETS-WP-0010 active implementation default none yes
56 secrets-engine SECRETS-WP-0006 active implementation default none yes
57 secrets-engine SECRETS-WP-0008 active implementation default none yes
58 secrets-engine SECRETS-WP-0007 active implementation default none yes
59 secrets-engine SECRETS-WP-0009 blocked implementation default none yes
60 fluid-telegram FT-WP-0002 active implementation default FT-WP-0001 yes
61 approval-engine APPROVAL-WP-0002 active residual origin none residual APPROVAL-WP-0001 yes
62 freedom-intelligence FI-WP-0004 active implementation default FI-WP-0001,FI-WP-0002,FI-WP-0003 yes
63 activity-core ACTIVITY-WP-0035 active planning keyword none yes
64 activity-core ACTIVITY-WP-0036 active implementation default none yes
65 activity-core ACTIVITY-WP-0032 active implementation default none yes
66 user-engine USER-WP-0026 active implementation default none yes
67 user-engine USER-WP-0025 active implementation default none yes
68 user-engine USER-WP-0027 active implementation default none yes
69 user-engine USER-WP-0028 active implementation default none yes
70 key-cape KEY-WP-0013 blocked implementation default none yes
71 key-cape KEY-WP-0033 active implementation default none yes
72 key-cape KEY-WP-0034 active implementation default none yes
73 rapp-user-engine RAPP-USER-ENGINE-WP-0002 active implementation default none yes
74 vergabe-teilnahme VERGABE-WP-0018 blocked implementation default none yes
75 vergabe-teilnahme VERGABE-WP-0019 active implementation default none yes
76 railiance-apps RAPPS-WP-0014 active implementation default none yes
77 prj-helixforge-factory HFACT-WP-0001 active implementation default none yes
78 audit-core AUDIT-WP-0010 active implementation default AUDIT-WP-0005 yes
79 audit-core AUDIT-WP-0008 active implementation default AUDIT-WP-0007 yes
80 audit-core AUDIT-WP-0009 active implementation default AUDIT-WP-0007 yes
81 tenant-engine TEN-WP-0012 blocked residual origin TEN-WP-0011 residual TEN-WP-0011 yes
82 sand-boxer SAND-WP-0015 blocked implementation default none yes
83 sand-boxer SAND-WP-0014 active implementation default none yes
84 info-tech-canon INFO-WP-0019 blocked implementation default none yes
85 llm-connect LLM-WP-0009 active implementation default none yes
86 glas-harness GLAS-WP-0012 blocked implementation default none yes
87 glas-harness GLAS-WP-0015 active implementation default none yes
88 rapp-postgres RAPP-POSTGRES-WP-0006 active implementation default none yes
89 rapp-telemetry RAPP-TELEMETRY-WP-0001 active implementation default none yes
90 railiance-telemetry RTEL-WP-0002 active implementation default none yes
91 reuse-surface REUSE-WP-0021 active residual origin none residual IDENTITY-WP-0004 yes
92 pqrst-practice PQRST-WP-0002 proposed planning proposed none yes
93 rapp-core-hub RAPPCOREHUB-WP-0003 active implementation default none yes
94 rapp-core-hub RAPPCOREHUB-WP-0002 active implementation default none yes
95 hub-core HUB-WP-0011 proposed residual origin none residual HUB-WP-0010 yes
96 hub-core HUB-WP-0009 proposed residual origin none residual OPS-WP-0003 yes
97 hub-core HUB-WP-0006 active implementation default none yes
98 rapp-qonto RAPP-QONTO-WP-0002 ready implementation default none yes
99 whitehat-security WHITEHAT-WP-0006 blocked residual prose none residual WHITEHAT-WP-0001 yes
100 whitehat-security WHITEHAT-WP-0008 blocked residual prose none residual WHITEHAT-WP-0007 yes
101 fin-hub FIN-WP-0005 active implementation default none yes
102 fin-hub FIN-WP-0006 proposed residual origin none residual RESOURCE-WP-0005 yes
103 fin-hub FIN-WP-0004 active implementation default none yes
104 soul-frame SOUL-WP-0008 ready implementation default SOUL-WP-0007 yes
105 railiance-master RMASTER-WP-0020 blocked implementation default NK-WP-0022 yes
106 prj-unattended-progress-company UPC-WP-0004 proposed planning proposed none yes
107 prj-unattended-progress-company UPC-WP-0003 proposed planning proposed none yes
108 prj-unattended-progress-company UPC-WP-0002 active implementation default none yes
109 prj-forgejo-org-refactor ORGREF-WP-0001 backlog implementation default none yes
110 reef-railiance REEF-RAILIANCE-WP-0003 blocked implementation default none yes
111 rapp-openbao RAPP-OPENBAO-WP-0002 blocked implementation default none yes
112 core-hub CORE-WP-0010 active implementation default none yes
113 adaptive-pricing ADAPTIVE-WP-0010 proposed planning proposed none yes
114 rapp-tenant-engine RAPP-TENANT-ENGINE-WP-0001 proposed planning proposed none yes
115 test-driver TD-WP-0003 proposed planning proposed none yes
116 reef-storage REEF-STORAGE-WP-0002 active implementation default none yes
117 markitect-main MARKITECT-WP-0002 backlog implementation default none yes

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,464 @@
[
{
"intake_id": "01a028d1-c4af-7a06-adb5-c90399721872",
"intake_canonical": null,
"intake_title": "Grandfather the legacy MASON-0001 identifier scheme",
"intake_status": "open",
"origin_ref": "MASON-WP-0002",
"wp_hub_status": "finished",
"wp_hub_slug": "mason-wp-0002",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "019f8a9d-008b-7086-8f84-d72bd0d0a2a5",
"intake_canonical": null,
"intake_title": "agent-harness brief-weekly via llm-connect (Friday review prep)",
"intake_status": "open",
"origin_ref": "BINKY-WP-0006",
"wp_hub_status": "finished",
"wp_hub_slug": "binky-wp-0006",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "019f8a9d-074e-7b27-a7c0-8a13153bcc7a",
"intake_canonical": null,
"intake_title": "Optional: retarget railiance llm-connect rhythm to open-weights model",
"intake_status": "open",
"origin_ref": "BINKY-WP-0006",
"wp_hub_status": "finished",
"wp_hub_slug": "binky-wp-0006",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a007c6-c11e-7bb6-bffa-62f0a54a3bb5",
"intake_canonical": null,
"intake_title": "Clarify IP ownership boundary: which repos/assets belong to the GmbH vs Bernd privately",
"intake_status": "open",
"origin_ref": "UPC-WP-0002-T04",
"wp_hub_status": null,
"wp_hub_slug": null,
"wp_open_flavor": null,
"role": "unresolved-ref"
},
{
"intake_id": "019ffade-2802-788f-96ed-288bb9474d96",
"intake_canonical": null,
"intake_title": "Enable production Barman on platform-pg after RESOURCE-WP-0002 handoff",
"intake_status": "open",
"origin_ref": "RAPP-POSTGRES-WP-0002",
"wp_hub_status": "finished",
"wp_hub_slug": "rapp-postgres-wp-0002",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "019ffade-2b7a-7c34-af30-0b228173a4f0",
"intake_canonical": null,
"intake_title": "Prove platform-pg data survives a coordinated railiance01 reboot",
"intake_status": "open",
"origin_ref": "RAPP-POSTGRES-WP-0002",
"wp_hub_status": "finished",
"wp_hub_slug": "rapp-postgres-wp-0002",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "019ffade-2e08-765d-aca7-cba28a0b1faa",
"intake_canonical": null,
"intake_title": "Provide ClusterSecretStore and OpenBao database role path for audit-core",
"intake_status": "open",
"origin_ref": "RAPP-POSTGRES-WP-0002",
"wp_hub_status": "finished",
"wp_hub_slug": "rapp-postgres-wp-0002",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a0215f-24eb-7602-ae4d-196e0a3f8e80",
"intake_canonical": null,
"intake_title": "Retire tenant-engine's stopped-write SQLite rollback artifact after soak",
"intake_status": "open",
"origin_ref": "RAPP-POSTGRES-WP-0003",
"wp_hub_status": "finished",
"wp_hub_slug": "rapp-postgres-wp-0003",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a02176-8ca7-725d-b2c2-4353eb4fd3f5",
"intake_canonical": null,
"intake_title": "Externalize tenant-engine audit evidence to audit-core",
"intake_status": "open",
"origin_ref": "TEN-WP-0009",
"wp_hub_status": "finished",
"wp_hub_slug": "ten-wp-0009",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "019ff532-3694-7868-a3a7-f4b4f28a647a",
"intake_canonical": null,
"intake_title": "Enable Create account and Case B registration smoke on app.coulomb.social",
"intake_status": "open",
"origin_ref": "CSOC-WP-0003",
"wp_hub_status": "finished",
"wp_hub_slug": "csoc-wp-0003",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "019ff532-3ade-7d75-acb7-2bbfa264fcb8",
"intake_canonical": null,
"intake_title": "Add callback replay and email-only takeover regressions",
"intake_status": "open",
"origin_ref": "CSOC-WP-0003",
"wp_hub_status": "finished",
"wp_hub_slug": "csoc-wp-0003",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "019ffac3-f894-707a-9fdb-75c8ea14497d",
"intake_canonical": null,
"intake_title": "Bulk-import Bubble corpus trees; map members to NetKingdom",
"intake_status": "open",
"origin_ref": "CSOC-WP-0001",
"wp_hub_status": "finished",
"wp_hub_slug": "csoc-wp-0001",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "019ffac3-fc7d-7850-93b6-b0d289881ec7",
"intake_canonical": null,
"intake_title": "Deploy PageOps CONTENT_ROOT + space visual migration to app host",
"intake_status": "open",
"origin_ref": "CSOC-WP-0006",
"wp_hub_status": "finished",
"wp_hub_slug": "csoc-wp-0006",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a02b76-e138-788c-9809-1e970c752d5d",
"intake_canonical": null,
"intake_title": "Restore the rein-openweights OpenRouter lane and close the dual-profile live proof",
"intake_status": "open",
"origin_ref": "GLAS-WP-0004",
"wp_hub_status": "finished",
"wp_hub_slug": "glas-wp-0004",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a02b76-f020-7d60-a3ce-12a34c13ebce",
"intake_canonical": null,
"intake_title": "Make bwrap reachability executable for governed Glas reins",
"intake_status": "open",
"origin_ref": "GLAS-WP-0005",
"wp_hub_status": "finished",
"wp_hub_slug": "glas-wp-0005",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a02b78-adff-70b5-8088-594784edff23",
"intake_canonical": null,
"intake_title": "Grandfather the legacy GLAS-0001 bootstrap identifiers",
"intake_status": "open",
"origin_ref": "GLAS-0001",
"wp_hub_status": null,
"wp_hub_slug": null,
"wp_open_flavor": null,
"role": "unresolved-ref"
},
{
"intake_id": "01a02bde-7d1e-7af3-9eba-aecc8f50365c",
"intake_canonical": null,
"intake_title": "Make ADHOC workplans valid under the fleet identifier canon",
"intake_status": "open",
"origin_ref": "GLAS-WP-0006",
"wp_hub_status": "finished",
"wp_hub_slug": "glas-wp-0006",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a02dce-b761-75e6-861a-8abf8b8e0072",
"intake_canonical": null,
"intake_title": "Separate profile selection enablement from runtime readiness",
"intake_status": "open",
"origin_ref": "GLAS-WP-0007",
"wp_hub_status": "finished",
"wp_hub_slug": "glas-wp-0007",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a049a5-4599-740c-a148-e40e5695c7b5",
"intake_canonical": null,
"intake_title": "Restore source-ref projection on later SBOM catch-up batches",
"intake_status": "open",
"origin_ref": "CUST-WP-0064",
"wp_hub_status": "finished",
"wp_hub_slug": "cust-wp-0064",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a049ea-3a04-74b9-a9b1-e2630f8d5628",
"intake_canonical": null,
"intake_title": "Sweep \"control plane\" and layer vocabulary through NetKingdomImmuneArchitecture.md",
"intake_status": "open",
"origin_ref": "KG-DEC-2026-001",
"wp_hub_status": null,
"wp_hub_slug": null,
"wp_open_flavor": null,
"role": "unresolved-ref"
},
{
"intake_id": "01a04d91-1308-7399-8942-d23f10cef388",
"intake_canonical": null,
"intake_title": "Provision a consumer-install npm-read lane for @whynot/design",
"intake_status": "open",
"origin_ref": "WHYNOT-WP-0003",
"wp_hub_status": "finished",
"wp_hub_slug": "whynot-wp-0003",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "4f1d9836-e0a6-56ea-bf19-2587c153f338",
"intake_canonical": null,
"intake_title": "Scope normal sync identity validation to actionable records",
"intake_status": "open",
"origin_ref": "RMGR-WP-0005",
"wp_hub_status": "finished",
"wp_hub_slug": "rmgr-wp-0005",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a05ef0-a034-7ef8-bae1-45840392f40e",
"intake_canonical": null,
"intake_title": "Publish the shared Taxonomy request-claim schema",
"intake_status": "open",
"origin_ref": "APPROVAL-WP-0001",
"wp_hub_status": "finished",
"wp_hub_slug": "approval-wp-0001",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a06e07-658e-73fa-9164-0b522504c0ee",
"intake_canonical": null,
"intake_title": "Absorb or replace the State Hub dashboard projection UI",
"intake_status": "routed",
"origin_ref": "STATE-WP-0081",
"wp_hub_status": "finished",
"wp_hub_slug": "state-wp-0081",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a06e07-7ca4-70de-a011-f9aad8655a50",
"intake_canonical": null,
"intake_title": "Refresh Core Hub scope after railiance01 relocation",
"intake_status": "routed",
"origin_ref": "SHR-WP-0002",
"wp_hub_status": "finished",
"wp_hub_slug": "shr-wp-0002",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a06e07-ab16-734e-89b2-4b59796d5073",
"intake_canonical": null,
"intake_title": "Refresh Ops Hub framework ownership language",
"intake_status": "routed",
"origin_ref": "SHR-WP-0002",
"wp_hub_status": "finished",
"wp_hub_slug": "shr-wp-0002",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a06e07-cdc3-763d-a746-eaaa289baad6",
"intake_canonical": null,
"intake_title": "Refresh Ops Bridge State Hub topology language",
"intake_status": "routed",
"origin_ref": "SHR-WP-0002",
"wp_hub_status": "finished",
"wp_hub_slug": "shr-wp-0002",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a06e07-f2f9-7586-9745-b359eb0025b6",
"intake_canonical": null,
"intake_title": "Retire or repoint legacy Inter-Hub and Gitea registry lanes",
"intake_status": "routed",
"origin_ref": "SHR-WP-0002",
"wp_hub_status": "finished",
"wp_hub_slug": "shr-wp-0002",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a06e08-243c-7552-8933-ae2fc4d69ffb",
"intake_canonical": null,
"intake_title": "Publish @whynot/design through the Forgejo npm registry",
"intake_status": "open",
"origin_ref": "SHR-WP-0002",
"wp_hub_status": "finished",
"wp_hub_slug": "shr-wp-0002",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a06e08-3bdd-77c8-828b-b07d0c77eb98",
"intake_canonical": null,
"intake_title": "Remove the legacy Gitea PyPI publication target",
"intake_status": "open",
"origin_ref": "SHR-WP-0002",
"wp_hub_status": "finished",
"wp_hub_slug": "shr-wp-0002",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a06e08-58fa-78d0-a7e8-06ab4fc85375",
"intake_canonical": null,
"intake_title": "Remove the legacy Gitea ArgoCD source allow-list",
"intake_status": "open",
"origin_ref": "SHR-WP-0002",
"wp_hub_status": "finished",
"wp_hub_slug": "shr-wp-0002",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a06e08-6936-7762-a347-f832182b7705",
"intake_canonical": null,
"intake_title": "Publish @whynot/design through the Forgejo npm registry",
"intake_status": "closed",
"origin_ref": "SHR-WP-0002",
"wp_hub_status": "finished",
"wp_hub_slug": "shr-wp-0002",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a06e08-7a37-7a86-b456-67a40fdc3fef",
"intake_canonical": null,
"intake_title": "Remove the legacy Gitea PyPI publication target",
"intake_status": "routed",
"origin_ref": "SHR-WP-0002",
"wp_hub_status": "finished",
"wp_hub_slug": "shr-wp-0002",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a06e08-9718-786e-b753-b56aa5f4c005",
"intake_canonical": null,
"intake_title": "Remove the legacy Gitea ArgoCD source allow-list",
"intake_status": "routed",
"origin_ref": "SHR-WP-0002",
"wp_hub_status": "finished",
"wp_hub_slug": "shr-wp-0002",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a06e0c-3feb-7920-a6f2-961b03dc170d",
"intake_canonical": null,
"intake_title": "Bound or optimize the repository collection projection",
"intake_status": "routed",
"origin_ref": "STATE-WP-0081",
"wp_hub_status": "finished",
"wp_hub_slug": "state-wp-0081",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a07331-68e8-739f-b7c3-9cca28feb5e5",
"intake_canonical": null,
"intake_title": "Complete deferred ADR metadata and conflict rulings",
"intake_status": "open",
"origin_ref": "PNEX-WP-0003",
"wp_hub_status": "finished",
"wp_hub_slug": "pnex-wp-0003",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a073cf-51ca-7fa7-a432-658ba3718382",
"intake_canonical": null,
"intake_title": "Review Custodian historical bindings and agent workplan-prefix conflict",
"intake_status": "open",
"origin_ref": "THE-WP-0001",
"wp_hub_status": "finished",
"wp_hub_slug": "the-wp-0001",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a07553-3d88-7a72-88b8-0028d55e442f",
"intake_canonical": null,
"intake_title": "Family model demand review",
"intake_status": "open",
"origin_ref": "CFED-WP-0001",
"wp_hub_status": "finished",
"wp_hub_slug": "cfed-wp-0001",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a07554-1005-78d9-a5e4-ac0c0551cec9",
"intake_canonical": null,
"intake_title": "Commerce service surface demand review",
"intake_status": "open",
"origin_ref": "CFED-WP-0001",
"wp_hub_status": "finished",
"wp_hub_slug": "cfed-wp-0001",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a07554-17ac-7d95-8df0-9b219ec2fc5f",
"intake_canonical": null,
"intake_title": "Federated canon consumer adoption review",
"intake_status": "open",
"origin_ref": "CFED-WP-0001",
"wp_hub_status": "finished",
"wp_hub_slug": "cfed-wp-0001",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
},
{
"intake_id": "01a0880b-4421-747b-9e7f-6e9bff9d2ea3",
"intake_canonical": null,
"intake_title": "The independent evidence path \u2014 what travels to audit-core",
"intake_status": "open",
"origin_ref": "INFD-WP-0001-T05",
"wp_hub_status": null,
"wp_hub_slug": null,
"wp_open_flavor": null,
"role": "unresolved-ref"
},
{
"intake_id": "01a08ecc-c6f6-7162-a154-0ab51a2ff61d",
"intake_canonical": null,
"intake_title": "Repair SQLite import into chained PostgreSQL custody",
"intake_status": "open",
"origin_ref": "AUDIT-WP-0005",
"wp_hub_status": "finished",
"wp_hub_slug": "audit-wp-0005",
"wp_open_flavor": null,
"role": "intake-only-parent-closed"
}
]