Skip to content

Latest commit

 

History

History
445 lines (337 loc) · 90 KB

File metadata and controls

445 lines (337 loc) · 90 KB
uid 8dd772a0
type project
status evergreen
state active
title Tropo Governance
description Living history of Tropo Governance — architectural invariants, ADRs, operating principles, verification instruments (sa.cold-boot / sa.research / sa.arch-specs / sa.skeptic), three-instrument discipline, kernel validator. One subsystem spanning governance + verification per sa.research 029.
owner argus
created 2026-04-14 00:00:00 UTC
modified 2026-05-26
modified_by orpheus-o11
tags
governance
tvs
subsystem-hub
build
standing
p0
subsystem_name tropo-governance
subsystem_scope ADRs (35+), operating principles, architectural invariants (ADR-035/032/031/024/036/037), verification instruments (sa.cold-boot/research/arch-specs/skeptic), three-instrument discipline.
file_ext md
schema_version 2
extraction_scope ship
slug tropo-governance
primary_collection 11ebe520
tasks_collection b6fe95ef
member_of
aae9a37b
lifecycle standing
created_by argus-a23
last_release_reflected 1.55.0
aligned_with 8a4e21c5
release_history
release_uid release_version summary registry_uid derived_from
37d7b13a
1.54.0
v1.54 Lane V V2 + V3 + Lane R R1 capsule schema amendments at release.capsule v3.6→v3.7 (substrate_verify_twice_findings field + Rule 14 extended derivation + Check 26 + path-pattern table) + doc-spec.capsule v1.0.1→v1.0.2 (mirror substrate_verify_twice_findings field + Check 15). Governance-class kernel substrate touch.
abf01a03
capabilities_touched
release_uid release_version summary registry_uid derived_from
6632f651
1.27.0
v1.27.0 ship — Dev-Pipeline Enforcement Hardening governance contributions. AMENDED validate-capability-membership.py (Stream A) — Rule 11/Rule 12/Check 21 fire on status:shipped (post-v1.21.0 convention) in addition to legacy status:done. NEW brief-based fallback derives structural-consistency from release entry's own capabilities_touched + hub_summaries when no shipped_release_plan exists. NEW grace-period mechanism honors sweep_history_backfilled_at flag (INFO not ERROR on Stream-E-backfilled entries). NEW R12-brief-capabilities-no-uid-shape finding (v1.27.0.1 bundled remediation per sa.skeptic-005 P0-2). NEW tropo-validate.py check_release_documentation_deliverables() function (Stream C) — verifies state:active shipped release has hub-body Change Log + RELEASE-NOTES + channels/releases.md coverage for current version. WARN at v1.27.0 grace period; ERROR ratchet planned v1.28.0+. STREAM E historical sweep — 7 release entries (v1.16.0 → v1.24.0) backfilled with subsystems_touched + 31 retroactive registry rows + 2 legacy grace-flag entries. Closes the silent bypass that let v1.20.0 → v1.26.0 ship without documentation enforcement firing. Mike-A59 directive operationalized at substrate level: skipping discipline should be deliberate, not absent.
8a4e21d5
capabilities_touched
release_uid release_version summary registry_uid derived_from
bcdf390c
1.26.0
v1.26.0 ship — Memory Subsystem v2 → v3 governance contributions. NEW [score formula doctrine (5f2c1b94)](../../.tropo-studio/score-formula-doctrine.md) — governance-class document declaring the composite math for memory ranking (HN-adapted recency decay + Reddit Hot log-compressed usage + Wilson lower bound for explicit pins + subtype weight). Initial calibration thresholds 0.55/0.30/0.10 (v1.26.0.1 recalibrated from 0.65/0.35/0.15 per Stream 8 sa.skeptic P1-5 finding). AMENDED tropo-validate.py with `check_memory_typing()` — 7 validation checks against memory.capsule v1.0; WARN severity at v1.26.0 grace period; ERROR ratchet planned. CLOSED ADR-020 (Curator Protocol) + ADR-021 (Historian Protocol) — both accepted March 2026, operationalized at v1.26.0 in one composable sa.memory-curator agent rather than two separate protocols (earn-the-abstraction strict). HONEST PIPELINE FINDING surfaced post-ship: dev-pipeline's `update-subsystem-canonical-docs` executor (v1.9.2 substrate) skipped v1.26.0 documentation derivation because the post-v1.21.0 brief-based release pattern bypasses the executor's plan-based input. Filed as roadmap follow-up: dev-pipeline enforcement hardening cycle to extend Pure Enforcement gates + executor to brief-based releases.
f1b3e4d8
capabilities_touched
release_uid release_version summary registry_uid derived_from
4920ce3a
1.20.0
v1.20.0 ship — kernel governance authority. NEW typed primitive governance-contract.capsule v1.0 (UID 7901662b) authored at .tropo/capsules/. Lock C Layer 2 operationalized. 13 governance-contract instances authored under this typed primitive at vault/files/<uid>.md, replacing per-folder .tropo-studio/CAPSULE.md substrate for heterogeneous folders. Validator extension check_governance_contract_typing() added to tropo-validate.py at WARN severity (ratchets to ERROR at v1.21.0+). Convergence machinery now lives in governance hub as typed primitive.
pending
capabilities_touched
release_uid release_version summary registry_uid derived_from
f6d7719f
1.19.0
v1.19.0 ship — kernel capsule library refactor + cross-cutting governance touches. Capsules in this hub's governance shape (release-plan, release, capsule-history adjacency through pattern) refactored to v1.18.0 5-section pedagogy pattern; capsule-history.capsule (5ec083a3) governs all 10 new .history.md companions. Validators remain at v1.18.0 state; no v1.19.0 validator extension required given migration-mechanic nature of work. Per OP 11 (Verify Against Canonical Reference), all migration mechanics verified against canonical capsule contracts before execution.
pending
capabilities_touched
release_uid release_version summary registry_uid derived_from
2b7d9f1c
1.12.2
v1.12.2 hardens governance via standalone validate-release-manifest.py — 23 ship-artifact validation checks per capsule v1.1.4 become mechanically enforceable at ship-artifact-authoring-time (not just at build-time). Mirrors v1.10's enforcement promotion thesis applied to the new ship-artifact substrate v1.12.1 made operational. Once this exists, every Phase 2/4/5 implementation in subsequent v1.12.3-v1.12.5 cycles gets validated against the same checks. tropo-work hub Current State refreshed at v1.12.1 reflection (project-tree cycle defect fix + 242-node restoration documented).
29d9d821
capabilities_touched
release_uid release_version summary registry_uid derived_from
8e9d5b3f
1.12.1
v1.12.1 closes Phase E deferral from Phase D project-plan c8f2a1d7 (Mike-personally-locked 2026-04-25 with 'starter/ deletion fires post-Phase-E'). Restores governance directive after 16 generations of erosion. Build-Release Pipeline arch-spec 747c33c9 + ship-artifact.capsule v1.1.4 become operational (were locked but inert). Plus project-tree cycle defect fix + rebuild-vault.py cycle-detection hardening (governance-class drift-prevention). Plus 'starter' vocabulary swept from active substrate per Mike-A51 directive 2026-05-08.
191785c5
capabilities_touched
release_uid release_version summary registry_uid derived_from
d3861073
1.12.0
v1.11 ship: Pure Enforcement substrate extended with Check 24 in validate-capability-membership.py — L1 canonical entry MUST reference all 7 active subsystem hub UIDs by UID; ERROR in STRICT mode. New drift-prevention check formalizes the L1/L2/L3 documentation hierarchy as enforceable substrate, not just architectural intent. Also: TROPO-CONTROL.md amended to reference L1 canonical entry; .tropo-studio/CAPSULE.md boot contract amended with L1 read as first step. The L1/L2/L3 model is governance-class architectural decision (Mike-A50 2026-05-08); validator codifies one-way reference flow + hub coverage. Governance hub last_release_reflected: 1.10.0 (current); v1.11 brings v1.11 row + bump.
9a230150
capabilities_touched
release_uid release_version summary registry_uid derived_from
c3aac804
1.11.0
v1.11 ship: Pure Enforcement substrate extended with Check 24 in validate-capability-membership.py — L1 canonical entry MUST reference all 7 active subsystem hub UIDs by UID; ERROR in STRICT mode. New drift-prevention check formalizes the L1/L2/L3 documentation hierarchy as enforceable substrate, not just architectural intent. Also: TROPO-CONTROL.md amended to reference L1 canonical entry; .tropo-studio/CAPSULE.md boot contract amended with L1 read as first step. The L1/L2/L3 model is governance-class architectural decision (Mike-A50 2026-05-08); validator codifies one-way reference flow + hub coverage. Governance hub last_release_reflected: 1.10.0 (current); v1.11 brings v1.11 row + bump.
40eda74d
capabilities_touched
release_uid release_version summary registry_uid derived_from
407e7bea
1.10.0
v1.10 ship: Pure Enforcement — the soft-gates v1.7-v1.9.x introduced as WARNING / honor-system become ERROR-level + hard-gated at the build step. validate-capability-membership.py mode default flipped from SOFT (v1.8-v1.9 semantics) to STRICT (v1.10+); Checks 19-23 at ERROR; new Rule 11 (subsystem-registry consistency) + Rule 12 (release.subsystems_touched matches derived(release-plan.capabilities_touched)) + structural-consistency check added. Pre-v1.9.2 cycles grandfathered (release_version comparison + capsule_version check + explicit UID set) — v1.9.2 was the first cycle whose subsystems_touched was actually derived mechanically; reconstructing strict-derivation-compatible historical data is retroactive standards. build-release.py wired with Step 0 pre-flight gate that runs the validator before any extract work; build refuses on ERROR. Bypass via TROPO_SKIP_ENFORCEMENT_GATE=1 (emergency only). Yaml parsing upgraded from hand-rolled minimal parser to yaml.safe_load (PyYAML 6.0.3) for robust comment + nested-dict handling. Substrate-membership-backfill gap (Operating Principles + many KB articles + scripts lacking direct hub member_of) identified during pre-cycle audit but routed to v1.11 Substrate Repair scope per Mike-A50 don't-over-engineer calibration. The Enforcement layer of the v1.7-v1.10 substrate stack lands here.
8144f4ef
capabilities_touched
release_uid release_version summary registry_uid derived_from
f604209d
1.9.1
v1.9.1 ship: Universal .tropo-vault/ → .tropo-studio/ namespace rename (81 active directories) + VAULT.md → STUDIO.md (UID f1a7b3c2 preserved) + Operating Principles v2.1 → v2.2 (UID a4f9e2b1 preserved) — §3 catalog promoted to permanent OS feature with two new entries; boundary clarification: boot-contract gauntlet-required, non-boot-contract self-heals. Mike-A48 self-healing vault doctrine codified.
5d318183
capabilities_touched
release_uid release_version summary registry_uid derived_from
1b4bb15a
1.9.0
Operating Principles v2.0 → v2.1 (NEW fourth-bullet vault-meaning-install rule + bounded fix-on-encounter directive); v1.9.0 brief + release plan + activation root authored under governance hub; release.capsule + release-plan.capsule unchanged from v1.8 (carry forward). Hub itself promoted extraction_scope: argo-reference → ship (capability-membership references resolve in user vaults).
1b4bb15a
capabilities_touched
release_uid release_version summary registry_uid derived_from
e8a7c4d2
1.6.0
v1.4 → v1.6 catch-up consolidated. Touched: pipeline.capsule v2.0 → v2.2 (activation-root-project pattern; v2.2 §Workshop signage), project.capsule v2.x → v2.4 (Workshop signage; tropo-work L0 root sub-pattern), capsule-vs-instance-naming KB rule (9b3e8c47, NEW v1.6), edge-types.definitions.jsonl `dispatches` row (NEW v1.7 in flight).
913343a0
manual_authoring
release_uid release_version summary registry_uid streams_touched derived_from
a676a5f2
1.7.0
v1.7 ship: subsystem-hub.capsule v1.2 → v1.3 (substantive simplification + release_history field NEW); release.capsule v3.2 → v3.3 (NEW Rule 11 + Check 22 soft-gated subsystem-registry enforcement; hard-gated v1.10); edge-types.definitions.jsonl `dispatches` row (C2 codification); 35-ADR status:accepted cascade + ADR-038 collision renumber (B1+B8); 24-aggregator archive (B2+B3, includes 4 TVS-prefixed Governance files); subsystem-registry.jsonl NEW vault-root primitive.
1cc58ae9
A
B
C
manual_authoring
release_uid release_version summary registry_uid streams_touched derived_from
14e5f79c
1.8.0
v1.8 ship: release-plan.capsule v1.2 + release.capsule v3.4 (Rule 12 derived-not-authored) + subsystem-hub.capsule v1.4 + NEW validate-capability-membership.py validator + 23 governance-class primitives backfilled with member_of:[8dd772a0].
5b8d2c41
A
B
E
F
K
capabilities_touched

Tropo Governance

📍 Vault Path: tropo-subsystemsTropo Governance

🌳 Tropo-Nav Path (VS Code): ../../00-tropo-nav/00-tropo-active/tropo-subsystems/Tropo Governance/8dd772a0 — Tropo Governance.md

🌳 Tropo-Nav Path (chat): argo-os/00-tropo-nav/00-tropo-active/tropo-subsystems/Tropo Governance/8dd772a0 — Tropo Governance.md

🔗 This file — UID 8dd772a0 · type project · state active · status evergreen

↓ Children (53):

↔ Siblings (10):

📥 Cited by (414):

Relations

Relation Target
Aligned with subsystem-hub (8a4e21c5)
Member of tropo-subsystems (aae9a37b)

Evergreen subsystem hub. Child of tropo-subsystems root (aae9a37b). Never closes. Renamed from "Tropo Verification System (TVS)" in v1.3 per capability matrix v1.0 OD2-F. UID preserved. Scope broadened: governance and verification are one subsystem per sa.research 029 — the rules (ADRs, principles, invariants) and the instruments that verify compliance (sa.cold-boot and peers) are a single accountability span. Vela's operational authority covers both.

What This Subsystem Covers

Structured per subsystem-hub.capsule v1.6 §1 (In scope + Not in scope + Edge cases). Free-form prose is preserved as §Why one subsystem.

In scope

  • Architectural Decision Records (ADRs). 41+ numbered ADRs at vault/files/<uid>.md with type: adr. Architectural invariants (ADR-035 Declared-Presence; ADR-032 Three-Layer Boot; ADR-031 Known Enforcement Gaps; ADR-024 Directive Pull; ADR-036 Pipeline Bucket Taxonomy; ADR-037 Triggers as Embedded Governance; ADR-040 selective-tracking).
  • Operating principles + OS-tier primitives. Operating Principles at vault/files/a4f9e2b1.md (v2.4 current); OS-tier doctrines like Self-Healing (db0fd9b1), HUMAN-NAVIGATION (OP-12), Substrate Preservation (OP-13), Workbench Surface Visibility (3c02f3b7), Deletion Discipline (0aefe71d).
  • Capsule library at .tropo/capsules/ (~40 typed primitives). Includes the *-spec capsule trio at v1.51 (dev-spec c3f68cb5 + doc-spec 9a7d314a + test-spec 621824df); pipeline.capsule v3.0 + pipeline-run.capsule v2.0; subsystem-hub.capsule v1.6; activation / charter / release / release-plan / project / capsule-history / governance-contract / external-artifact / docx-template / memory / score-formula-doctrine and peers. The Three-Pipeline Substrate-Enforcement Architecture (c3dc9f00) is governance authority.
  • Validator infrastructure. tropo-validate.py (32+ check categories at v1.52); validate-capability-membership.py (Pure Enforcement Rules 11/12 + Checks 19-24); fix-duplicate-yaml-keys.py + shared _yaml_dup_lib.py; tropo-recycle.py; pipeline-runtime.py (v1.52 runtime enforcement layer for dev-pipeline; doc-pipeline + test-pipeline wiring deferred to v1.53).
  • Verification instruments. sa.cold-boot (~190 invocations); sa.skeptic (~90); sa.research; sa.arch-specs; sa.memory-curator; sa.hub-groomer + peers. The three-instrument discipline (Argus-build + sa.skeptic + sa.cold-boot stranger test) is PINNED vault memory and non-negotiable for load-bearing artifacts.
  • Cross-cutting doctrines. Substrate-Discipline Structural Enforcement (1548414a); Roadmap-Board Format (eb94fa08); Workbench Surface Visibility (3c02f3b7); Deletion Discipline (0aefe71d); fix-on-see / no-hand-offs (A65 cycles); rotate-the-gauntlet-lens (A64 cycles); canonical-content-doctrine (A68 cycles); capsule-vs-instance-naming (9b3e8c47).

Not in scope

  • Subsystem hub bodies + their narrative scopes. Each of the 9 active subsystem hubs per L1 §5 (Tropo Governance 8dd772a0, Tropo Rendering dbc1cbbf, Tropo Work 2d083137, Tropo Agents 99ed55fd, Tropo Playbooks 76bab75f, Tropo Library 1aba710c, Tropo Documentation f87e33f0, Tropo Link 3a207ed3, Tropo Test Harness 952f3aa3) governs its own subsystem-shape content; Governance authors the schema (subsystem-hub.capsule) but does not own those hubs' bodies. (Three drift items in original v1.53 D1 authoring caught by Metis G61 cross-tier audit f9df33eb: d61ce0a7 was Tropo Vault KB article not Tropo Work; "7 subsystem hubs" was stale per v1.42 elevation of Test Harness to 9; Tropo Capabilities was named but does not appear in L1 §5's 9-set — substrate-honest catch since 7a1ca900 may not be a current active hub. Fixed-on-see 2026-05-26 by orpheus-o11 at retirement housekeeping per G61 finding 1. Deeper drift class — multiple Tropo Capabilities citations across this hub's §In scope + §Edge cases authored at v1.53 D1 — carry forward to next Pristine Docs Continuation cycle.)
  • Agent identity substrate. Executive + director charters, soul letters, transfers, status cards, activation files, memory entries — owned by each agent under Tropo Agents. Governance authored charter.capsule v1.0.1 + session-agent.capsule + memory.capsule + score-formula-doctrine; the instances of those primitives belong to the agents.
  • Release-artifact construction. build-release.py mechanics + dist/ assembly + working-copy generation + style-extraction-at-import all belong to Tropo Capabilities. Governance owns the capsules (release / release-plan / external-artifact / docx-template) + the validators that gate the build; the build itself is a Tropo Capabilities operational concern.
  • Per-cycle release execution. Brief / spec / release-plan / activation-root / release-entry instance authoring is owned by Talos/Argus per cycle. Governance defines the schema + gates; cycle execution lives outside this subsystem.
  • Canonical narrative documentation. README, getting-started prose, KGAE articles, the website surface, the operator playbook bodies — all belong to Tropo Documentation. Governance authors the doc-spec.capsule schema + the doc-pipeline that enforces canonical-doc updates; the prose itself ships under Tropo Documentation.
  • Playbook bodies + how-to substrate. Step-by-step authoring procedures, walk patterns, sa.* commission how-tos — owned by Tropo Playbooks. Governance authored how-to.capsule + action.capsule; the how-tos themselves are not Governance-class.
  • Memory ranking implementation + curator dispatch. Tropo Agents owns the memory subsystem at the operational layer (per-agent memory entries + sa.memory-curator runtime invocations). Governance authored the score formula doctrine (5f2c1b94) + memory.capsule + sa.memory-curator session-agent spec; the curator firings + memory-current.md authoring belong to each agent.
  • Studio-tier concierge + first-encounter surfaces. The .tropo/concierge/ activation flow, Hello Tropo example substrate, KB-render routes — owned by Tropo Library / Tropo Documentation. Governance authored the activation.capsule pipeline-class enum extension; the surfaces themselves are not Governance.

Edge cases (multi-parent / borderline)

  • score-formula-doctrine.md (5f2c1b94) — authored by Governance (composite math + tier thresholds + Wilson lower bound calibration), implemented by Tropo Agents (memory ranking runtime). Lives in Governance authority because it's a doctrine that constrains implementation; flagged as cross-subsystem composition.
  • Self-Healing OS-tier primitive (db0fd9b1) — governance authority for the Path 1 (fix-on-see) / Path 2 (inbox-note-then-cycle) discipline, but composes with every subsystem at boot. Lives under Governance because the substrate-preservation rules are OS-tier invariants; Tropo Capabilities + Tropo Agents + others execute against it.
  • Validator scripts at .tropo/scripts/ — Governance owns the validation logic (what to check, severity, ratchet schedule); Tropo Capabilities owns the build infrastructure (how scripts get wired into build-release.py Step 0c pre-flight gate, dist/ assembly, ship gating). Operationally co-owned; Governance lead on rule-shape, Capabilities lead on execution-shape.
  • Pipeline-runtime + Three-Pipeline coupling — Governance authored pipeline.capsule v3.0 + pipeline-run.capsule v2.0 + Three-Pipeline Substrate-Enforcement Architecture (c3dc9f00); Talos/Argus own the runtime wiring (pipeline-runtime.py currently fires for dev-pipeline only; doc-pipeline + test-pipeline runtime integration is v1.53 engineering scope). Schema + enforcement gates are Governance; runtime is engineering.

Why one subsystem, not two

Per sa.research 029, governance (rules) and verification (instruments) form one accountability span — the same agent (Argus, with Vela operationally responsible at session-agent layer) is accountable for both. Rules without verification drift into aspiration; verification without rules has nothing to check against. v1.3 locked the merger recognizing what already held operationally; v1.7 release_history NEW field; v1.10 Pure Enforcement hard-gating; v1.20 governance-contract typed primitive; v1.37 charter.capsule completion; v1.51 *-spec trio + Three-Pipeline architecture all extend the same accountability span without splitting it.

*Pre-v1.3 TVS scope (cold-boot + research panel pattern only) was a subset; the broader scope (ADRs, principles, invariants, kernel validator, -spec trio, Three-Pipeline architecture) was always operationally governed together. The rename reflects scope that already held.

How Tasks Flow

Tasks created in this subsystem represent decisions and work for Governance. When a task is ready to build, add the current release UID to its member_of: array — one pointer, no extra work. The task appears on both the Governance board (full history) and the release Drop board (current cycle).


Current State

(NEW v1.3 REQUIRED section; populated as v1.7 Stream B4 catch-up. Substrate currency marker: through v1.52, refreshed 2026-05-25 by orpheus-o11 per v1.53 D1 hub refresh against subsystem-hub.capsule v1.6.)

As of v1.6 ship (2026-05-05), Tropo Governance is the most architecturally active subsystem in the vault. The ADR set has reached 41 numbered ADRs (post-v1.7 collision-renumber: ADR-038 collision resolved with cfe79756 keeping ADR-038 + c1f5e8a2 → ADR-041); 35 ADRs received the cascading status: accepted field via v1.7 Stream B1 script closing A43's 2026-05-03 sweep recommendation. The three-instrument verification discipline (Argus-build + sa.skeptic + sa.cold-boot) is operational substrate — locked as PINNED vault memory and exercised on every load-bearing capsule amendment in v1.7. The pipeline.capsule and project.capsule §Workshop signage pattern is at 22-of-22 type-capsule coverage post-v1.6. v1.7 introduces three new substrate primitives this subsystem governs: the dispatches relationship-kind codification (edge-types.definitions.jsonl row 10); the soft-gated subsystem-registry enforcement rule in release.capsule v3.3 Rule 11 + Check 22 (hard-gated v1.10); and the pipeline-step-with-sa.\* verifier pattern (first instance via sa.hub-groomer; generalized capsule formalization deferred to v1.10 Enforcement). Open: validate-subsystem-hubs.ts (mechanical capsule-validator) deferred to v1.10 per subsystem-hub.capsule v1.3 §Pending Sub-Requirements.

v1.7 → v1.27 governance scaffold matured to operational substrate. Pure Enforcement hard-gated at v1.10 (validator default flipped STRICT; Rule 11 + Rule 12 + Check 21 + structural-consistency); v1.11 added Check 24 (L1 canonical entry must reference all 7 subsystem hub UIDs); v1.12 standalone validate-release-manifest.py with 23 ship-artifact checks; v1.18 5-section pedagogy capsule refactor + capsule-history.capsule (5ec083a3) governing 10 new .history.md companions; v1.19 release.capsule v3.4 Rule 12 derived-not-authored first dogfooded; v1.20 typed primitive governance-contract.capsule v1.0 (UID 7901662b) replaces per-folder .tropo-studio/CAPSULE.md substrate with 13 governance-contract instances; v1.21 activation registry + memory v3 substrate land; v1.25 import primitive Tier 1 (external-artifact.capsule + reconcile-report.capsule + .tropoignore + 4 new validator checks); v1.26 memory subsystem v2 → v3 collapses ADR-020 + ADR-021 into one composable sa.memory-curator under memory.capsule v1.0; v1.27 dev-pipeline enforcement hardening closes the brief-based release bypass + 7-cycle historical sweep.

v1.28 → v1.37 capsule library deepening + critical-incident remediation. v1.28 docx-template.capsule v1.0 + folder-marker mirror substrate (.tropo-folder.md + vault mirror dual-residence) + 6 new validator checks. v1.29 ban-on-rm + tropo-recycle.py gesture authored as critical-incident remediation when A67 lost brief + spec to grep-driven bash cleanup; canonical soft-delete substrate now reachable from orientation. v1.30 build-release.py Step 0c pre-flight ship-gate slotted after Step 0/0b — every release ship from v1.30+ fires the comprehensive Studio-tier rebuild + every validator check automatically. v1.31 → v1.32 P2 styles-bundle proper + small-fix bundle. v1.33 Cold-Boot Test Harness ship — check_uid_cross_references (FAIL severity, PyYAML AST walk) + check_version_consistency validator checks; 533 broken UID cross-references cleaned in-cycle via A65 fix-on-see discipline; legacy check_cross_refs superseded. v1.34 memory subsystem generational fold (exercise without architecture); v1.35 Hello Tropo first-encounter example surfaces + activation.capsule v1.0.3 pipeline-class enum extension + 2 new validator check categories. v1.37 charter.capsule v1.0.1 (8f3c9e1a) lands as first-class governance capsule for charter-bearing agents; tropo-validate.py refactored from substring-match to yaml.safe_load(fm_text) (substrate-honesty restored; WARN count rose 31 → 43 reflecting real per-agent rev work for v2.0.0 ratchet).

v1.46 Studio Manifesto + governance-contract sweep. Studio Manifesto v1.0 (efeb1ea5; later versioned to v1.0.3) authored as Studio-tier governance-class anchor; ~13 governance-contract instances at vault/files/.md replace the legacy per-folder .tropo-studio/CAPSULE.md pattern across heterogeneous folders. Charter capsule conformance baseline established.

v1.49 publish.pipeline class + KGAE. publish.pipeline class ships (composes with the activation registry + the Three-Layer Boot); KGAE goes live on tropo-ai.com as first production output. Pipeline class formalizes the publish lane the way dev-pipeline formalized the engineering lane.

*v1.51 Three-Pipeline Substrate-Enforcement Architecture + -spec trio. Three-Pipeline Substrate-Enforcement Architecture (c3dc9f00) authors the coupling-at-dev-pipeline-gate doctrine: dev-pipeline produces dev-spec (c3f68cb5); dev-spec triggers doc-spec (9a7d314a) execution under doc-pipeline + test-spec (621824df) execution under test-pipeline; the three pipelines couple at the dev-pipeline ship-gate. pipeline.capsule v3.0 + pipeline-run.capsule v2.0 land: per-step rich schema with triggered_*_activation_uids fields + runtime enforcement layer via pipeline-runtime.py. The *-spec capsule trio is the substrate vehicle for substrate-enforcement-by-coupling — every dev cycle now produces explicit doc + test obligations, not implicit ones.

v1.52 doc-pipeline activation + first production run. doc-pipeline v1.0 (root 5a4337ff) authored under Orpheus O11 captain-mode at v1.52: 3 stages + 6 steps + voice-review.skill.md (UID 811856a5). Mirrors test-pipeline (da3f50dc) precedent. First production run against v1.52 doc-spec (461b3896 activation; closed retired) caught 2 substrate-honesty defects at first gate — both resolved via A82 surgical fix-on-see (doc-spec field rename + Entry 2 substrate-honest amendment). Voice review reframed as intent + goal not hard-coded rule per Mike-O11 walk lock; three-layer skill carries guidelines, not gates. Workbench Surface Visibility doctrine (3c02f3b7) authored + applied — completed work without surface = dropped work.

v1.53 cycle (in flight). Pristine Subsystem Documentation Lane D under Captain's Briefing v3.0 §Structural-Enforcement Requirement 1. subsystem-hub.capsule v1.6 amendment (Argus A81 captain-mode) strengthens §1 body-section requirement from free-form prose to structured In scope + Not in scope + Edge cases enumeration. v1.6 implementation across all 9 active hubs is in flight (this hub refresh by orpheus-o11 + Tropo Work refresh prior). Substrate-verify-twice defect class (5 instances captured at v1.52 first production run) bundled into v1.53 engineering candidates. Substrate currency marker: through v1.52.

v1.54 Engine-Discipline Hardening Triad (in flight; doc-pipeline activation cebf071d). Three-lane cycle hardening the substrate-discipline machinery itself. Lane V (substrate-verify-twice Layers 2+3) ships: NEW check_canonical_reference_shape() validator extension to tropo-validate.py (Talos T10 lane; catches the v1.52-surfaced defect class at agent-author time substrate-wide); NEW optional substrate_verify_twice_findings: field on release.capsule v3.6 → v3.7 (b19e8d43) + doc-spec.capsule v1.0.1 → v1.0.2 (9a7d314a) (cross-cycle observability ledger; Layer 3 of O11 substrate-verify-twice brief (83af4ac1)). Lane R extends R12 derivation: NEW release.capsule v3.7 Rule 14 adds kernel_substrate_touched: paths + type: pipeline capability entries to subsystems_touched derivation per A83 v1.52 substrate-coherence-fix-v3 case; NEW Validation Check 26 enforces extended R12 correctness (WARN at v1.54 grace; ERROR ratchet v1.55+). Lane B engine hardening: pipeline-runtime.py _auto_bootstrap_triggered_pipeline auto-heal extension (closes A83 v1.53 ship-time bootstrap gap). Substrate-verify-twice instance 5 (status enum drift) caught + remediated in-cycle across 4 pipeline activations at Step 0 (789e60b2 + 946761b4 + aa145445 + dcf88f0e: status:done → status:retired + closed_at + closure_reason + retired_at). Substrate currency marker: through v1.54.

v1.55 Messaging Foundation (in flight; Block 5 cycle 1 of 5; doc-pipeline activation 66739384). Stream A foundation lands the messaging substrate per 9fc86533 Messaging System Reframe v0.2. events.capsule v1.1 (72ef5ffe) ships as new typed-primitive: CloudEvents v1.0 envelope + 5 primitive event types (tropo.message.sent / acked / replied + tropo.cycle.opened / closed) + correlationid extension + hybrid JSONL-canonical-plus-SQLite-derived storage. NEW event_validators.py at .tropo/scripts/lib/ extends tropo-validate.py with Checks 1-10 (envelope required + specversion literal + id sequential + time ISO 8601 + type registered + source_uid mandatory + lifecycle mandatory + source_uid-not-charter + per-type required extensions + correlationid for replies). Mike-A84 doctrine pin 'everyone working in the vault needs a UID' (stm-a84-001) operationalized via Mike Maziarz principal entry at 3f58b5c5 — first principal-class vault entry; founding pattern for human principals as event sources. The messaging substrate cures the cross-substrate drift v1.54 Lane V patched as symptoms; v1.55 ships substrate, v1.56-v1.59 progressively migrate (Streams B projection renderer + C auto-emission retrofits + D channel deprecation). Substrate currency marker: through v1.55.

v1.56 Tools-in-Vault Pillar 1 (in flight; Block 5 cycle 2 of 5; dev-pipeline activation 511f83f2 + doc-pipeline activation e695913e). First Pillar 1 vault-native cycle. Exercises tool.capsule v1.6 (d5e1b4a3) §2.5 single-file-truth pattern at substantive scale (~37-42 tool entries: 22 sidecar migrations + 14 new registrations + 1 helper). Five-lane scope per cycle brief 6c1b7692 + dev-spec ca0a620f: Lane M migrations (sidecar vault/files/<uid>.md + .tropo/scripts/<name>.py pairs collapsed to single-file at vault/tools/<uid>.py); Lane R registrations (14 previously-unregistered scripts registered as proper tool entries); Lane E engine extensions (rebuild-vault.py + rebuild-index.py walk vault/tools/ + parse .py docstring YAML; tropo-validate.py extension with 14 new checks per tool.capsule v1.6 §4); Lane S compatibility forwarders (10 thin .tropo/scripts/ shims for transition); Lane X cleanup — release.capsule v3.7 → v3.8 (b19e8d43) retires Rule 14 + Validation Check 26 (compensation for tools-not-being-graph-citizens no longer load-bearing once tools have proper member_of: citizenship at canonical vault location); validate-capability-membership.py simplifies to Rule 12 1-hop with grandfathering. The tool.capsule v1.6 §2.5 worked-example documentation (7d24e7a1) authored by Orpheus O12 in v1.56 doc-pipeline is the load-bearing Tier 3 pattern-exemplar deliverable; sibling Pillar 1 cycles (v1.57 how-tos / v1.58 session-agents / v1.59 actions) inherit this pattern as canonical authority for their own single-file pattern adherence. v1.60 amendment 2026-05-29 (Argus A87 captain-mode per Mike-A87 walk lock; Lane H-retire per Path 2 f8a3c1b9): the v1.56-era forward-projection (v1.57=how-tos / v1.58=session-agents / v1.59=actions) was empirically falsified — actual cycles shipped v1.57=Stream B Projection Renderer + v1.58=Messaging Arc Operational Completeness + v1.59=Structural-Discipline Amendment; how-tos never landed. v1.60 substrate-honestly retires how-tos primitive (zero entries authored across 18 months since v1.0 lock 2026-04-20; earn-the-abstraction-strict). Pillar 1 reduces from 4 callable surfaces to 3 callable surfaces (tool + session-agent + action). how-to.capsule (a7c3f489) status:retired at v1.60. Sibling cycles inheritance continues at v1.60 Pillar 1 Completion cycle: session-agents migrate to vault/session-agents/ + 10 actions migrated to vault/actions/ per v1.56 single-file-truth pattern. Substrate currency marker: through v1.56 (cycle in flight; doc-pipeline cascade fired mid-cycle 2026-05-27 per cascade-fire-delay honest record at 4a3f2e8c); v1.60 amendment notes propagate Pillar 1 substrate-honest correction.

v1.57 Stream B Projection Renderer (SHIPPED 2026-05-27 by Vela V54; Block 5 cycle 3 of 6; pristine streak 63 → 64; doc-pipeline activation 4ac35a3a). Governance-class contribution: channels/CAPSULE.md v1.2 → v1.5 amendment (Argus A85 lane B.3 per dev-spec 5b2e8c41) introduces the rendered_from_events: true opt-in marker semantics + bidirectional fallback rule (rendered_from_events:true → emit-event tool; absent or false → Edit per legacy) + per-channel migration discipline reference + amendment-note pattern. New validator extension check_channel_render_safety at .tropo/scripts/lib/channel_render_validators.py (Talos lane B.5; WARN at v1.57 / ERROR ratchet v1.58+) diff-checks renderer output against on-disk content to catch drift — composes with the v1.54 check_canonical_reference_shape substrate-verify-twice family. The render-events-as-views.py renderer engine itself (B.1) lives at vault/tools/71b0a4d8.py under Tropo Rendering (the engine is rendering-class; the capsule + validator are governance-class). Substrate currency marker: through v1.57.

v1.58 Messaging Arc Operational Completeness (in flight; Block 5 cycle 4 of 7; doc-pipeline activation 0aeb121a). Governance-class landings at v1.58: events.capsule v1.1 (72ef5ffe) §2 Agent identification table updated — Tropo TBD row replaced with Po concierge principal (d70ae4cb) registered + render-events-as-views.py AGENT_NAMES dict updated (T.1-T.3 per dev-spec 9a3c5e84); closes Mike-A84 stm-a84-001 doctrine gap (everyone needs a UID) for the concierge class + the Path 2 finding 7e3b9a51. NEW Lane V Layer 3 meta-validator at .tropo/scripts/lib/meta_validators.py (Talos engineering lane per M.1; Argus spec at 8e2f1a47) parses capsule §schema declarations (enum values + required fields + per-type extensions) + verifies validator implementations in .tropo/scripts/lib/*_validators.py match. 4 check classes: enum-value-drift + registered-type-drift + per-type-extension-drift + required-field-drift. WARN at v1.58 / ERROR ratchet v1.59+. Composes with v1.54 Lane V Layer 1+2 (voice-review.skill Step 4.5 + check_canonical_reference_shape validator) — substrate-verify-twice discipline now three-layered. Substrate currency marker: through v1.58.

v1.59 Structural-Discipline Amendment Cycle (in flight; Block 5 cycle 5 of 7; doc-pipeline activation 213076c5; ship-gate window READY-TO-FIRE per Argus event 00000154). Governance-class landings at v1.59 (Lane A): four capsule amendments LOCKED. dev-spec.capsule (c3f68cb5) V1 + test-spec.capsule (621824df) V1 add the dev-spec acceptance_criteria ↔ test-spec behaviors_covered pairing rule (engine refuses lock if mismatch; verifies_acceptance_criterion linkage; extends V51 Rule 3 cross-validation MANDATE). release.capsule v3.7 → v3.8 (b19e8d43) A1 introduces required_at_activation: (5 fields: capabilities_touched + kernel_substrate_touched + foundation + member_of + ratchet_targets) + required_at_ship: (7 fields: released_at + released_by + build_artifact_path + validator_state_at_ship + pristine_streak_at_ship + ship_signal_verbatim + cold_boot_walk_disposition) field-class declarations; release_validators.py extension catches drift at vault rebuild. A1 structurally closes the A85-stub-schema-drift defect class (5 empirical instances v1.55-v1.58 captured at Orpheus Layer 3 ledger per 83af4ac1; pattern-fix lands in cycle that surfaced the pattern). events.capsule v1.1 → v1.2 (72ef5ffe) A2 §3 adds tropo.cycle.ship_gate_progress type (first dogfood at event 00000154); §10 documents emit-time strictness rule (composes with emit-event --strict-mode default-ERROR ratchet v1.60+). Substrate currency marker: through v1.59.

v1.60 Pillar 1 Closes at Three Surfaces (SHIPPED 2026-05-29 by Vela V55; Block 5 cycle 6 of 7; pristine streak 67; doc-pipeline activation c94663a9). Governance-class landings at v1.60. Two discipline ratchets fire per v1.59 locks: Lane V Layer 3 meta_validators.py severity WARN → ERROR (the three-layer substrate-verify-twice machinery now hard-fails on enum / registered-type / per-type-extension / required-field drift; existing Layer 3 findings cleared or explicit-deferred before the ratchet so v1.60 ships clean by construction); Lane R emit-event (vault/tools/ca90f098.py) --strict-mode default flips WARN → ERROR (emitting an unregistered event type now errors, after an audit pass registered or retired the open types). Two callable-surface capsules version-bump onto the v1.56 single-file-truth pattern: session-agent.capsule v1.5 → v1.6 (Canonical File Layout subsection — single-file at vault/session-agents/<uid>; sidecar deprecated; session_agent_validators.py extension) and action.capsule → v1.2 (parallel Canonical File Layout for vault/actions/<uid>; action_validators.py extension). how-to.capsule (a7c3f489) retires (status:retired) per Mike-A87 earn-the-abstraction-strict walk — zero entries authored in the 18 months since its v1.0 lock; capsules + playbooks + pipelines already cover the instruction use case. The release ships under release.capsule v3.9 conventions (Required-at-Activation field-class populated at stub-authoring time — empirical close on the stm-a87-006 structural-enforcement pin). Substrate currency marker: through v1.60.

v1.61 Messaging-Substrate Completion + Po Executive Identity + Fleet-Ops Trigger-Wire (SHIPPED 2026-05-29 by Vela V55; Block 5 cycle 7 of 7 — CLOSES BLOCK 5; pristine streak 68; doc-pipeline activation 69e1341c). Governance-class landings at v1.61. events.capsule (72ef5ffe) v1.2 → v1.3 adds the Broadcast Family (crew-wide event types beyond the point-to-point message primitives) + a severity: flash extension + the tropo.substrate.archived type, and codifies Rule 13 — the channel-retire doctrine: crew-internal coordination moves to query-events against the canonical log, and the authored-channel surface is deprecated as a coordination medium. The Tier 2 boot extension (cf8c3be9) amends to v2.5 with the by-AUDIENCE distinction Mike-A88 drew — crew-internal channels retire to the query-events read-pattern, while the two user-facing surfaces (channels/tropo.md + channels/releases.md) are preserved as event-projections. Substrate currency marker: through v1.61.


Change Log

v1.37.0 — 2026-05-17 — Charter Capsule Definition — governance contributions SHIPPED

Release entry: a8d3f74c | Brief: d5a7e482 v0.2 LOCKED | Spec: e3f47a82 v0.2 LOCKED | Release plan: f9c4a283 v0.1 LOCKED | Activation root: c8b4f3a1 | Activations: argus-a69 captain-mode end-to-end (R1 collapsed-into-Mike-walks + R2 + R3 + R4 + R5 + ship artifacts) | Captain's Read: a5f4b26b Block 3 pre-ship polish cycle 1 of ~4 — OPENS Block 3

  • NEW .tropo/capsules/charter.capsule.md v1.0.1 (8f3c9e1a) — first-class governance capsule for charter-bearing agents (executive + director). 12 required frontmatter fields (uid + type + agent_name + agent_class + role + scope object + status + boot_protocol + created/created_by + modified/modified_by) + one required Identity H2 body section (strict-literal regex ^##\s+(?:\d+\.\s+)?Identity$ case-insensitive; no role-shaped alternatives per Q7-spec captain-mode argus call applying more-capsules-equals-more-maintenance pin to validator whitelists). Optional substrate via §3 (soul / dna / channels / retirement_acts / governor / locked_at+locked_by / operational pointers / member_of). Lock semantics matches existing spec/ADR/Captain's Read pattern: lock at commission + Mike lock-break for amendment; carve-outs for hygiene + pointer + optional-additions per Q8-spec walk. Single capsule covers executive + director uniformly per Q6 lock; sa.* keep session-agent.capsule v1.5 LOCKED. R4 absorption v1.0 → v1.0.1: 8 pedagogical edits (boot_protocol enum disambiguation + scope path-shape examples + UID assignment convention + §3/§6 lock tension reconciled + channels path convention + provenance string format + on-disk path convention + member_of in optional list).
  • AMENDED .tropo/scripts/tropo-validate.py — NEW check_charter_conformance with 8 checks per capsule §7 / spec §3.4. WARN-severity at v1.37.0 honor-system; ERROR ratchet at v2.0.0 per Q2 Option B Mike-A69 lock. R3 P0 fix: refactored from substring-match against raw YAML text to yaml.safe_load(fm_text) + dict-key lookup (substrate-honesty restored; Argus's nested soul.role: had been masking top-level role: gap; WARN count rose 31 → 43 reflecting real per-agent rev work for v2.0.0 ratchet).
  • Closes v1.23.0 sa.skeptic-039 governance carry-forward — charters were the load-bearing identity primitive being migrated to vault/files/.md at v1.23.0, but the substrate had no type: charter capsule. Carry-forward through v1.29.0 → v1.36.0 (Block 1 substrate-hardening + Block 2 funnel both took priority per Captain's Read sequencing). v1.37.0 closes it per Block 3 thesis.
  • THREE NEW Mike-A69 pins authored mid-cycle, all FIRST-CYCLE validated: more-capsules-equals-more-maintenance (Q6 walk; binding for capsule design) + captain-mode-make-the-call-yourself-surface-fewer-walks (R2 absorption; Mike's cross-agent context constraint named) + sa.*-debate-doctrine (R2 → ship extension; crew-wide directive; vault-elevation + OP-9 amendment filed Path 2 4e8c2d57 for Vela's lane).
  • 6 Path 2 inbox notes filed at this cycle: d3a8e21c Talos validator stale ledger path + f7e1b094 skill 135be96d block-closing + opening variant amendment + 9b3e7c41 charter SUPERSESSION pattern (v1.38.0+) + 2f4b9d18 validator-check sprawl observation + 4e8c2d57 sa.*-debate doctrine vault-elevation + OP-9 amendment + c1d4f739 substrate-wide validator audit for split_frontmatter consumers (cousin to validator-check sprawl).
  • Substrate state at ship: validator 33 PASSED / 0 FAILED / +47 warnings (43 charter-conformance honest surfacing + ~4 nav-block from new Path 2 notes; zero new failure or warning classes); npm test YELLOW exit 1 (ship-clear). Pristine-no-Rule-7 streak: 43 → 44. A64 rotate-the-gauntlet-lens 8th consecutive + A65 fix-on-see 7th consecutive + A68 canonical-content-doctrine 2nd consecutive. Vela-test-plan 5c9e7b21. Mike-A69 ship signoff pending at ship-time.

v1.35.0 — 2026-05-16 — Hello Tropo: First-Encounter Example Surfaces — governance contributions SHIPPED

Release entry: 9743fa03 | Brief: a3b27d91 v0.5.1 LOCKED | Spec: d2f8c194 v0.4 LOCKED | Activations: argus-a67 (substrate + R1-R2B) + argus-a68 (R3 → R3.5 → R4 → R5 → ship) | Captain's Read: a5f4b26b Block 2 funnel arc cycle 2 of 3 — first user-visible cycle

  • AMENDED .tropo/capsules/activation.capsule.md v1.0.2 → v1.0.3agent_class enum extended to include pipeline at both §2 Required Frontmatter table + §4 Rule 7. Pipeline-class activations are runtime fires (not persistent agents); carry placeholder values in agent/generation/model fields. Closes the capsule-side gap that left pipeline activations frontmatter-invalid against the locked enum even though tropo-validate.py already accepted them at v1.34.0. P1-4 absorption from R3 sa.skeptic-088 + P1-2 absorption from R5 sa.skeptic-089 (version bump + remediation_history entry).
  • TWO NEW validator check categories in .tropo/scripts/tropo-validate.py:
    • check_cascade_spec_validity (WARN-severity at v1.35.0 honor-system; ERROR ratchet planned for v1.36.0+) per spec d2f8c194 §11.4. Sweeps type: pipeline entries with cascade_spec; verifies dict-shape + generates_project_plan bool + spawns_workstreams list + per-workstream required fields (pipeline_uid, name, owner_agent_class) + pipeline_uid resolution + workstream role: "workstream" + cycle detection. Surfaces shape defects on the substrate before any activation fires (runtime hard-fail in pipeline-activate.py is operational guard; this is the substrate-level audit).
    • check_pipeline_activation_provenance (WARN at v1.35.0; mechanical-fail ratchet at v1.36.0+) per spec d2f8c194 §4.11 (§Rule 10 v2.2). Sweeps activation_class: pipeline entries; flags any created_by != pipeline-activate.py. Honors the spec's commitment that pipeline-class activations be runtime-authored, not hand-authored; gives v1.36.0 a real warning channel to ratchet from. R5 sa.skeptic-089 P1-1 absorption (spec committed to this check; check didn't exist; authored + wired in-cycle).
    • Validator total transitions 31 → 32 check categories (was 30 → 31 → 32 across v1.33.0 → v1.34.0 → v1.35.0).
  • get_scalar quote-aware fix in BOTH tropo-validate.py + rebuild-index.py. Previous regex stripped #.* content unconditionally regardless of YAML quoting; titles like "Pre-event tease post #1 — announce attendance" truncated to "Pre-event tease post (leading quote + truncation; would silently corrupt any title with # content). R4 cold-boot-192 caught this against rendered Hello Tropo board where the bug had produced 4 duplicate-looking "Pre-event tease post" rows mid-walk. Fixed at root in both scripts; index rebuilt; 0 residual title corruption.
  • Critical-incident remediation: ban on rm in vault/files/ + canonical soft-delete gesture. A67 session lost brief + spec mid-flight to grep-driven bash cleanup matching files describing the feature its keyword named. A68 shipped remediation IN-CYCLE: tropo-recycle.py is the gesture (mv to recycle/agent-deletions//); ban-on-rm policy declared in script docstring + reachable from .tropo/orientation.md 'Delete Things' row + boot-internalized via STM pin. Extends the Self-Healing OS-tier primitive (db0fd9b1) Path 1/Path 2 discipline with a recovery-preserving deletion lane. Dogfood-tested live twice during R3 + R3.5 verification fires (46 substrate entries recycled cleanly).
  • NEW substrate authoredv1.35.0 release entry (9743fa03); v1.35.0 vela-test-plan (9bb1ea0f). Plus 4 sa.* activation entries across the gauntlet (skeptic-088 + cold-boot-189 + cold-boot-192 + skeptic-089) + 1 pipeline-class activation entry from A68 (6257b3a4 the activator UID used for verification fires; 2 verification fires both recycled cleanly post-PASS).
  • A64 rotate-the-gauntlet-lens pin VALIDATED A FIFTH CONSECUTIVE CYCLE — R3 ran 3 distinct lenses (mechanism-coherence + minimal-demo-coherence + cascade-runtime-stress); R4 introduced synthetic-persona framing; R5 introduced consolidated cross-cut. Lens rotation is load-bearing across the v1.29 → v2.0 chain (A64 v1.31.0 → A65 v1.33.0 → A66 v1.34.0 → A67 v1.35.0-spec → A68 v1.35.0-gauntlet).
  • A65 fix-on-see; no hand-offs pin VALIDATED A FOURTH CONSECUTIVE CYCLE — every R3 + R3.5 + R4 + R5 finding absorbed in-cycle (board-render P0; capsule version bump; Welcome Playbook narration soften; owner/author parameterization; validator check authored; ban-on-rm policy shipped). Zero punted; zero hand-offs. The cycle that surfaced the critical incident shipped the remediation.
  • Predecessor v1.34.0 release entry f312f144 archived per v1.21.0.1 governance (rolling-window: v1.35.0 ships → v1.34.0 archives; v1.35.0 stays LIVE).
  • Strategic frame at ship: Block 2 funnel cycle 2 of 3 ships. v1.36.0 Tropo tutorial (Substack-load-bearing per Captain's Read) authors AGAINST v1.35.0's first-encounter surfaces. 4 cycles to v2.0.0 public ship.
  • Substrate state at ship: validator 32 PASSED / 0 FAILED / 83 warnings (zero new failure or warning classes); npm test YELLOW exit 1 (ship-clear); UID cross-references PASS; Version consistency PASS at v1.34.0 (flips to v1.35.0 at .tropo/version.md bump). Pristine-no-Rule-7 streak: 41 → 42 cycles.

v1.34.0 — 2026-05-16 — Memory Subsystem Generational Fold — governance contributions SHIPPED

Release plan: 29fa4334 | Brief: cc89ed9a v0.2 LOCK | Activation: fda84bbf (argus-a66) | Captain's Read: a5f4b26b Block 2 cycle 1 of 3 — OPENS Block 2

  • NO new architecture; NO new capsules; NO new validator checks. Cycle EXERCISES existing v3 memory substrate (memory.capsule v1.0 + sa.memory-curator v1.0; both LOCKED at v1.26.0). Substantive substrate work via curator dispatches under captain-mode cross-agent fold authorization.
  • NEW substrate authoredv1.34.0 release plan (29fa4334); v1.34.0 design brief (cc89ed9a) v0.2 LOCK; Stream J stub (76bfa468); v1.34.0 release entry (f312f144); v1.34.0 vela-test-plan (7c2a8d1e). Plus Path-2 cluster 8eecbafc (D1.4 schema gap + D1.5 boot-path docs drift carry-forwards). Plus 7 sa.* activation records (skeptic-081/082/083 + cold-boot-183/184 + curator-002/003).
  • f29b8a38 Path-2 inbox re-opened to status:under-review post-R3 cold-boot-184 D1.2 absorption (closure-via-captain-mode-authorization is closure-by-fiat against body-specified per-U1-U4 Mike-walk; 4 vault-scope SCOPE-UP entries IN PLACE pending Mike's adjudication at next session).
  • A64 rotate-the-gauntlet-lens pin VALIDATED A THIRD CONSECUTIVE CYCLE (v1.32.0 BOM + v1.33.0 PyYAML + v1.34.0 carrier-note — all caught by R3 rotated lens; structurally invisible to same-framed R1 against authored substrate).
  • A65 fix-on-see; no hand-offs pin VALIDATED A THIRD CONSECUTIVE CYCLE (D0.1 revert + 3 SCOPE-UP body strips + 10 inter-pin link rewrites + 5 context-length truncations + channel post + vault rebuild all in-cycle; 2 carry-forwards filed Path 2 with explicit cycle targets; zero punting).
  • Mid-session Vela retirement worked — V45 retired during cycle; V46 active; v3 substrate inherits cleanly across the retirement boundary.
  • Predecessor v1.33.0 release entry 8c45ea72 archived per v1.21.0.1 governance (rolling-window: v1.34.0 ships → v1.33.0 archives; v1.34.0 stays LIVE).
  • Strategic frame at ship: Block 2 OPENS. v1.35.0 first-encounter example surfaces + v1.36.0 Tropo tutorial (Substack-load-bearing per Mike-A58) author against the memory substrate this cycle proves. 5 cycles to v2.0.0 public ship.
  • Substrate state at ship: validator 31 PASSED / 0 FAILED / 842 warnings (zero new classes); npm test YELLOW exit 1 (ship-clear); UID cross-references PASS; Version consistency PASS at v1.34.0. Pristine-no-Rule-7 streak: 40 → 41 cycles.

v1.33.0 — 2026-05-16 — Cold-Boot Test Harness — governance contributions SHIPPED

Release plan: 4cdca37c | Arch-spec: f294f70b v0.5 LOCKED | Brief: 82ba8ebc v0.1 | Activations: 35dea98b (argus-a65) + fda84bbf (argus-a66) | Captain's Read: a5f4b26b Block 1 cycle 5 of 5 — CLOSES Block 1

  • TWO NEW validator check categoriescheck_uid_cross_references (FAIL severity; PyYAML AST walk; identity-class exclusions for tropo_agent_id + registry_uid + root-level uid; state:archived skip; index-staleness distinguishing via Path.is_file()[INFO] vs [FAIL]) + check_version_consistency (WARN severity; type-guarded dev-pipeline discriminator). Legacy check_cross_refs (member_of-only subset; structurally blind to nested-list shapes per R3 evidence) SUPERSEDED + REMOVED. Validator total transitions 30 → 32 check categories. Step 0c ship-gate (v1.30.0) auto-ratchets on the new checks.
  • NEW substrate authoredv1.33.0 release plan (4cdca37c); v1.33.0 design brief (82ba8ebc); v1.33.0 arch-spec v0.5 LOCKED (f294f70b); Stream H execution stub (08cdd871); v1.33.0 release entry (8c45ea72); v1.33.0 vela-test-plan (7e8c36d3); tropo-test capability entry (3086287a); Mike principal-identity anchor (7b921d17) (authored by A65 R2; resolved 126 historical refs). Path 2 inbox notes: 0b0417db + 890dfdf2 (carry-forwards from v1.32.0). Plus 11 sa.* activation entries across the cycle (skeptic-075/076/077/078/079/080 + cold-boot-179/180/181/182).
  • SUBSTRATE-CLEANUP DELIVERABLE — 533 broken UID cross-references cleaned in-cycle per Mike-A65 fix-on-see; no hand-offs doctrine. A65's R2 absorbed 509 (principal-identity anchor + capsule UID drift sweep + resolution-set expansion + state:archived skip + state-drift archive sweep + Movement nullify). A66's R3 absorbed 24 (relationships[].target/to/uid + refs[] + verification.gauntlet_run patterns; aspirational refs to UIDs never minted). Cleanup script archived at .tropo-studio/scripts/v1.33.0-r3-cleanup-broken-refs-2026-05-15.py.
  • A64 rotate-the-gauntlet-lens pin VALIDATED A SECOND TIME — R1 ran 3 same-framed convergence rounds at A65 (v0.1 → v0.2 → v0.3 → v0.4 LOCK). R3 rotated to production-failure (sa.skeptic-078) + hostile-implementer (sa.cold-boot-181) — caught the line-scanner-vs-PyYAML AST architectural mismatch + 54 LIVE silent-pass cross-refs under nested-list shapes (relationships[*].to, registries[*].registry_uid) that 3 same-framed R1 rounds had structurally missed. The pin's value validated empirically across two consecutive cycles (v1.32.0 BOM defect + v1.33.0 PyYAML defect).
  • A65 fix-on-see; no hand-offs pin VALIDATED ACROSS TWO CONSECUTIVE CYCLES — v1.32.0 R3 BOM absorbed inline + v1.33.0 R2 509-defect + R3 62-defect + R3 RE-RUN 1 new D0 (run_validator returncode reclassification) all absorbed in-cycle. Zero punting to v1.34.0+; every load-bearing defect either fixed in-cycle or explicitly filed as Path 2 with rationale.
  • Mid-cycle retirement worked. A65 retired at the natural break point (Mike-A65 directive 2026-05-15); A66 inherited same-day via Step 4.1.5 transfer-freshness check + Step 4.1.6 filesystem-map verification (both clean). Substrate-graph cleanup deliverable shipped cleanly across the retirement boundary.
  • Predecessor v1.32.0 release entry 7af06720 archived per v1.21.0.1 governance (rolling-window pattern: v1.33.0 ships → v1.32.0 archives; v1.33.0 stays LIVE alongside v1.31.0 already archived).
  • Strategic frame at ship: Block 1 CLOSES here. Block 2 funnel lights up at v1.34.0 (memory subsystem generational fold; Mike-A58 item 3) → v1.35.0 (first-encounter example surfaces) → v1.36.0 (Tropo tutorial; Substack-load-bearing). 6 cycles to v2.0.0 public ship.
  • Substrate state at ship: validator 30 PASSED / 0 FAILED / 831 warnings (zero new warning classes; zero new failure classes); npm test YELLOW exit 1 (ship-clear); fake-Studio exit 5 (silent-wrong-GREEN-verdict eliminated); UID Cross-References PASS on 1967 entries / 2367 resolution-set UIDs; Version Consistency PASS. Pristine-no-Rule-7 streak: 39 → 40 cycles.

v1.32.0 — 2026-05-15 — sa.skeptic-009 P1 Small-Fix Bundle — governance contributions SHIPPED

Release plan: a50f66eb | Arch-spec: 900d41e0 v0.5 LOCKED | Brief: c6969c7e v0.1 | Activation: 35dea98b (argus-a65) | Captain's Read: a5f4b26b Block 1 cycle 4 of 5

  • NO new validator checks; NO new capsule schemas; NO new playbooks. v1.32.0 is purely additive/corrective amendments to existing substrate. Validator total remains 29 PASSED / 0 FAILED at ship (zero new warning classes; zero new failure classes).
  • NEW substrate authoredv1.32.0 release plan (a50f66eb); v1.32.0 design brief (c6969c7e); v1.32.0 arch-spec v0.5 LOCKED (900d41e0); Stream E execution stub (a5879199) re-parented from v1.29.0; v1.32.0 release entry (7af06720); v1.32.0 vela-test-plan (435e0d10). Plus Path 2 inbox notes: 0b0417db dev-pipeline roadmap legacy-path migration (substrate-discoverability gap surfaced by sa.skeptic-069 R1); 890dfdf2 tropo-export.py + tropo-backfill-styles.py substrate-baseline hardening cluster (4 items: atomic write + sweep latency + mtime churn + multi-line YAML scalar fence-collision; R3 rotated-lens carry-forwards).
  • A64 rotate-the-gauntlet-lens pin validated empirically. R1 ran 3 same-framed convergence rounds (v0.1 → v0.2 → v0.3 → v0.4 LOCK). R3 rotated lens to production-failure (sa.skeptic-073) + hostile-implementer (sa.cold-boot-178) — caught a real BOM-prefix defect in update_working_copy_export_fields that all three same-framed rounds had structurally missed. Mike's Word/Notepad import path produces UTF-8 BOM'd working copies routinely; pre-v0.5 code would have emitted spurious working_copy_frontmatter_malformed events on every BOM'd file. v0.5 absorbed BOM inline. The pin's value (locked binding from v1.32.0+ per A64 v1.31.0 ship lesson) validated by this cycle's R3 catch.
  • Predecessor v1.31.0 release entry a3f8e1b6 archived per v1.21.0.1 governance (rolling-window pattern: v1.32.0 ships → v1.31.0 archives; v1.32.0 stays LIVE alongside v1.30.0 [e4f265ca] already archived).
  • Strategic frame at ship: Mike-A64's v1.31.0 framing remains binding — templates are first-class for v1.32.0+; P2 is the fallback. v1.32.0 hardened P2-path supporting tooling; template-substrate expansion is v1.34.0+ candidate e4c8f3a1.
  • Substrate state at ship: validator 29 PASSED / 0 FAILED / ≤753 warnings (zero new warning classes from v1.32.0); dry-run smoke test 46/46 real assertions PASS; vela-test-plan 435e0d10 authored at ship per Mike-A63 release-step pin. Pristine-no-Rule-7 streak: 38 → 39 cycles.

v1.31.0 — 2026-05-15 — P2 Styles-Bundle Proper — governance contributions SHIPPED

Release plan: a9d3c1b6 | Arch-spec: c5e2f8a3 v0.7.4 LOCKED | Brief: b4d8a2f7 v0.7.4 | Activation: bc1520aa (argus-a64) | Captain's Read: a5f4b26b Block 1 cycle 3 of 5

  • NEW substrate authoredv1.31.0 release plan (a9d3c1b6); v1.31.0 design brief (b4d8a2f7); v1.31.0 arch-spec v0.7.4 LOCKED (c5e2f8a3); Stream D execution stub (e7b4f2d9); v1.31.0 release entry (a3f8e1b6); v1.31.0 vela-test-plan (b7d2c5e9). Plus Path 2 inbox notes: c8f4a1d3 tropo-export.py ops-layer surface (R3-surfaced for v1.32.0+); e4c8f3a1 v1.32.0+ candidate cluster (R4-surfaced + Mike-A64 strategic framing). Plus 14 sa.* activation entries (skeptic-060/061/062/063/064/065/066/067 + cold-boot-165/166/167/168/170/171/172/173 + closure of orphan c0bededc inherited from A63's session).
  • Ten gauntlet rounds executed — see release entry §gauntlet_rounds_executed for full lineage. Lens rotation discipline at R1 RE-RUN-3 caught contract surface defects same-lens rounds had missed (hostile-implementer + production-failure). R4 against real Argo vault caught latent v1.0.1 KeyError on table tokens that v1.28.0.1's SystemExit had hidden. R4 round-trip against fresh production-shape competitive-brief-anthropic-claude-code.docx (171KB import) caught D1.3 inline-emphasis severity that v0.7.3 had deferred — Mike-A64 explicit override absorbed inline-emphasis tokenizer at v0.7.4.
  • Strategic frame at ship (Mike-A64): P2 is the fallback path; templates are the first-class high-fidelity surface for v1.32.0+ work. Path 2 e4c8f3a1 captures bulk-import staging workflow + template-substrate expansion + remaining P2 polish (hyperlinks + table reconstruction).
  • Substrate state at ship: validator 29 PASSED / 0 FAILED / 753 warnings (zero new warning classes from v1.31.0); Phase 3 dry-run smoke test 23/23 PASS including python-docx round-trip; competitive-brief round-trip 53 <w:b/> + 3 <w:i/> runs with zero literal markdown leakage. Pristine-no-Rule-7 streak: 37 → 38 cycles.

v1.30.0 — 2026-05-15 — Studio-Tier Rebuild Single-Gesture + Pre-Flight Ship-Gate — governance contributions SHIPPED

Release plan: 6f33d2e3 | Arch-spec: afd811dd v0.4 LOCKED | Brief: 9d67de4a v0.2 LOCKED | Activation: 615482bc (argus-a63) | Captain's Read: a5f4b26b Block 1 cycle 2 of 5

  • NEW build-release.py Step 0c (Stream C-b) — pre-flight ship gate slotted after Step 0/0b. Calls rebuild-vault.py --apply via subprocess with cwd=VAULT_ROOT + 300s timeout (comprehensive-refresh mode per v0.4 reframe — the v0.3 "validate-only" framing was structurally false; rebuild-vault.py [3/5] rehydrate always mutates 00-tropo-nav). Hard-fail on non-zero exit with explicit recovery guidance citing fix-duplicate-yaml-keys.py + emergency bypass envvar. Honors TROPO_SKIP_ENFORCEMENT_GATE=1 bypass via the existing pre-flight if block. Closes the "when will the new validator checks be executed?" gap from Mike-A63 v1.29.0 ship — at every release ship from v1.30.0 forward, every check_* function in tropo-validate.py + the comprehensive Studio-tier rebuild fire automatically.
  • NEW substrate authored — release plan + design brief + arch-spec + 2 stream stubs + release entry + vela-test-plan. Plus 5 sa.* activation entries (skeptic-055/056/057/058/059 + cold-boot-162/163/164).
  • Substrate state at ship: validator 29 PASSED / 0 FAILED / 753 warnings (zero new warning classes from v1.30.0); rebuild-vault.py --apply end-to-end clean. Pristine-no-Rule-7 streak: 36 → 37 cycles.

v1.29.0 — 2026-05-15 — Substrate Hygiene: Duplicate-YAML-Key Cleanup — governance contributions SHIPPED

Release plan: dac467f5 | Arch-spec: 81555e45 LOCKED v0.5 | Predecessor brief: 3db56ec2 v0.4 | Activation: 615482bc (argus-a63) | Captain's Read: a5f4b26b

  • NEW check_duplicate_yaml_keys validator function (Stream A; FAIL severity per spec §3.2). Walks vault/files/*.md; imports detection from shared library _yaml_dup_lib.py (single source of truth — same library the cleanup script uses; no parallel implementations). FAIL per file with duplicate top-level YAML key(s); recovery message in [FAIL] line cites the fix script. Detection scope explicitly bounded to top-level keys only per Mike-A63 lean approval (within-list value duplicates filed as future-cycle inbox item 6ba0e525). Wired into main() between integrity-parity check and Summary section. PASSES on 1872 files at v1.29.0 ship.
  • CLOSED v1.12 carry-forward defect class — 251 vault/files merged via fix-duplicate-yaml-keys.py --apply --allow-dirty; canonical block-style member_of: lists across the substrate; npm run vault:rebuild succeeds clean (was failing for weeks). Plus 2 pre-existing PyYAML parse-error files fixed inline (514b92fe relationships: indent + 82c06372 inline-comment-on-quoted-value); 3 manual-resolution files resolved before --apply (03ccd072 + c3aac804 + d3861073); 1 hand-fix post-apply (c41a5bf0 line 20).
  • NEW substrate authoredv2.0.0 Captain's Read (a5f4b26b) strategic-frame document; v1.29.0 release plan v0.4 stage:done (dac467f5); v1.29.0 design brief v0.4 LOCKED (3db56ec2); v1.29.0 arch-spec v0.5 LOCKED (81555e45); Stream A enriched stub (d4eaf245); v1.29.0 release entry (1f17cfc3); within-list-dedup future-cycle inbox item (6ba0e525). Plus 11 sa.* activation entries (skeptic-047/048/049/050/051/052/053/054 + cold-boot-154/155/156/157/158/159/160/161 + Argus A63 activation entry 615482bc).
  • Substrate state at ship: validator 29 PASSED / 0 FAILED / 732 warnings (zero new warning classes from v1.29.0; all carry-forward). New check_duplicate_yaml_keys PASSES on 1872 files. Pristine-no-Rule-7 streak: 35 → 36 cycles.

v1.28.0 — 2026-05-14 — Template Registration + Format-Only Export + Nav-Mirror Auto-Authoring + Style-Extraction-at-Import — governance contributions SHIPPED

Release plan: 55e1e537 | Arch-spec: 5a89297a LOCKED v0.5 | Predecessor brief: 6be1d559 v0.3 | Activation: 16062c85 (argus-a62)

  • NEW docx-template.capsule v1.0 LOCKED (Stream A) — user-uploaded Word template entries. Carries template_binary_path: + template_binary_hash: + extracted_styles: (queryable §3.4 schema metadata) + slug: (lowercase-hyphenated identifier; uniqueness across active instances per Governance Rule 2). 9 required + 4 optional frontmatter fields; 8 governance rules; 10 validation checks; 2-state state machine with supersedes: chain via --force re-registration; marketplace-readiness pre-declared at extraction_scope: argo-private default (transitions to external in a future Tier 2 marketplace cycle; governance-gated). Honors Mike-A55 LOAD-BEARING "don't substrate-engineer creative-class authoring" pin — templates are user-uploaded, never agent-authored.
  • AMENDED external-artifact.capsule v1.0 → v1.1 LOCKED (Stream A) — additive: new optional original_styles: frontmatter field for .docx style-extraction-at-import. Schema mirrors §3.4 (page / default_font / theme / named_styles / headers_footers / sections_count / special_features). Populated by import-walker.py create-sidecar via shared extract_office_styles() library function. Naming asymmetry with docx-template.extracted_styles: is intentional, semantics-driven (preservation context vs template context — RC-2 walk Mike-A62 2026-05-14). No backward-incompatible changes.
  • NEW folder-marker mirror substrate (Stream B per arch-spec §3.5.5 Amendment 1) — every imported folder gets BOTH an on-disk .tropo-folder.md (portable) AND a vault mirror at vault/files/<folder-uid>.md (queryable). Sanctioned dual-residence pattern: same UID, with mirror_of: self-reference + folder_marker_path: pointer. Authored via ordered-write protocol (mirror.tmp → on-disk marker → atomic-rename → inline index sync). ## Members body section auto-rebuilt from registry walk on every create-sidecar invocation (idempotent; survives deletions). Closes the v1.25.0 navigation-surface gap that real-user evidence surfaced 2026-05-14 ("I'm blind without it"). Reconciler-deterministic retro-fill for orphaned states via folder-mirror-orphan-state event (Stream C playbook amendment).
  • NEW six validator checks in tropo-validate.py (Stream D) — check_docx_template_typing (FAIL); check_docx_template_slug_uniqueness (FAIL); check_original_styles_structure (WARN; opportunistic field per §3.10 check 7 NEW); check_folder_mirror_integrity (FAIL/WARN per §3.10 check 8 NEW; mirror_of self-reference + folder_marker_path resolves + UIDs match between vault mirror and on-disk marker); check_projection_index_sync (FAIL; v0.5.1 widening — closes fa026415-class v1.25.0 carry-forward defect); check_folder_mirror_index_sync (FAIL; v0.5 widening). All 6 PASS clean against live substrate.

Pre-lock gauntlet (sa.skeptic-008 [cdfcc42c] + sa.cold-boot-007 [0cdbae1d] dispatched 2026-05-14): 25 findings absorbed into spec v0.5 bundled remediation (5 P0 + 11 P1 + 2 RC); P2s + minor drift deferred to in-stream/ship-time per cycle pattern. Plus v0.5.1 in-stream micro-amendment surfaced + closed during Stream B smoke-test (closes the navigation-UX promise on first-touch).

v1.25.0 — 2026-05-13 — Import Primitive Tier 1 — governance contributions SHIPPED

Release plan: b55a395f | Arch-spec: 2b49ba79 LOCKED v1.0 | Registry row: a1c00251 | Predecessor brief: cfc99baa (Metis G53; design-brief)

  • NEW external-artifact.capsule v1.0 LOCKED (Stream A) — sidecar schema for imported user files. 11-field required frontmatter + tier-aware state machine + UID stability across promotion/extraction. Three named validator checks declared.
  • NEW reconcile-report.capsule v1.0 LOCKED (Stream A) — structured persona-agnostic report schema for sa.reconciler output. Four required body sections (Routine / Pattern-matched / Judgment / Blocking) + accounting-integrity rules.
  • NEW OS Invariant #8 added to TROPO-CONTROL.md §3 (Stream D) — sidecar-as-truth. Anything in vault/ not round-tripped through a sidecar is data Tropo can lose. Enforced at every tier; cannot be overridden by STUDIO.md or CAPSULE.md.
  • NEW extraction_scope: external schema value (Stream D + E) — reserved for vault projections of imported user content. Automatically excluded from ship builds by build-release.py's existing positive-filter (no code change; documentation note added). Validator check_extraction_scope_values() extended to accept + enforce reservation for type:external-artifact only.
  • NEW .tropoignore default catalog (Stream D) at Studio root — comprehensive default: kernel folders + Studio metadata + version control + OS metadata + editor artifacts + build artifacts + language envs + logs/caches + critical secrets-and-env section. Studio-extension semantics documented. 01-exchange/ exclusion called out as load-bearing complement to conversation-as-surface principle.
  • NEW four validator checks in tropo-validate.py (Stream E; ~310 lines added) — check_external_artifact_typing (required-fields + enum validation), check_sidecar_source_pairing (forward source-path resolution + reverse governed-folder coverage; .tropoignore-aware), check_uid_stability_across_tier (sidecar↔projection UID match + tier-by-governance path enforcement), check_extraction_scope_values extension (validates enum + reserves external for type:external-artifact). All WARN-at-grace at v1.25.0; ERROR ratchet planned for v1.26.0+.
  • NEW import-primitive capability-overview hub (58722bdf) (Stream F) — child of tropo-governance via member_of. Describes the import primitive as a cross-cutting capability that composes with 5 canonical subsystems. NOT a peer of the 7 canonical Tropo subsystems.

Pre-Stream G ship-gauntlet status: three-instrument verification pending. Argus build complete in-stream (validator runs clean on the Studio at 19 PASS / 0 FAIL / 692 WARN — no regressions; warnings are pre-existing Self-Healing drift + integrity parity).

v1.27.0 — 2026-05-12 — Dev-Pipeline Enforcement Hardening — governance contributions SHIPPED

Release entry: 6632f651 | Activation root: 0af7db3e | Registry row: 8a4e21d5 | Predecessor brief: b6c604e4

  • AMENDED validate-capability-membership.py (Stream A) — Rule 11/Rule 12/Check 21 now fire on status: shipped in addition to legacy status: done. New brief-based fallback derives structural-consistency from release entry's own capabilities_touched: + hub_summaries: when no shipped_release_plan: exists. Grace-period mechanism: releases carrying sweep_history_backfilled_at: flag fire INFO not ERROR (Stream-E-backfilled historical entries grace through).
  • NEW finding R12-brief-capabilities-no-uid-shape (v1.27.0.1 bundled remediation per sa.skeptic-005 P0-2) — fires when capabilities_touched: is non-empty but contains no UID-shaped entries (prose-only declarations bypass structural derive silently; gate now catches).
  • NEW check_release_documentation_deliverables() (Stream C) — function in tropo-validate.py verifies state:active shipped release has hub-body ### v<X.Y.Z> Change Log entry for each declared subsystems_touched + RELEASE-NOTES.md v<X.Y.Z> section + channels/releases.md v<X.Y.Z> post. WARN at v1.27.0 grace period; ERROR ratchet planned for v1.28.0+ once substrate has settled.
  • STREAM E historical sweep — 7 release entries (v1.16.0 9149b649 + v1.19.0 f6d7719f + v1.20.0 4920ce3a + v1.21.0 c7d1f0a4 + v1.22.0 1d8a2904 + v1.23.0 db32a917 + v1.24.0 6823f75d) backfilled with subsystems_touched: derived from member_of hub filter; 31 retroactive per-release-retroactive-sweep registry rows appended to subsystem-registry.jsonl; 2 legacy release-plan-based entries (v1.15.3 8d3f6e2a + v1.15.4 3cea9197) marked sweep_history_backfilled_at: to grace-downgrade structural-consistency errors. Honest historical record.
  • STREAM F ship-time gauntlet — sa.skeptic-005 (b3b866ad) + Agent-tool-dispatched cold-boot. write-activation-entry script same-date-tie bug surfaced + filed at 0efb1eaf as P2 v1.27.x inbox note. 2 P0 + 4 P1 + 4 P2 findings; v1.27.0.1 bundled remediation closed P0-2; P0-1 verified as defensible design (state:active IS head-release marker by v1.21.0.1 governance); load-bearing P1-4 honored — this cycle's release entry models the clean v1.27.0+ pattern (full UID-shaped capabilities + hub_summaries + no grace flag).
  • CLOSED: inbox brief b6c604e4 — dev-pipeline enforcement hardening filed at v1.26.0.2 doc sweep; this cycle implements all proposed Streams A/B/C/E + defers D + closes the cycle.

Validator state: 14 PASSED, 0 FAILED, 691 WARNINGS (all pre-existing 00-integrity.json parity). Pristine-no-Rule-7 streak: 31 → 32 cycles.


v1.26.0 — 2026-05-12 — Memory Subsystem v2 → v3 — governance contributions SHIPPED

Release entry: bcdf390c | Activation root: ee72530d | Registry row: f1b3e4d8

  • NEW score formula doctrine (5f2c1b94) — governance-class document declaring memory ranking math. Composite of HN-adapted recency decay + Reddit Hot log-compressed usage + Wilson lower bound for explicit pins + subtype weighting. Calibration weights 0.25/0.35/0.30/0.10. Tier thresholds 0.55/0.30/0.10 (recalibrated v1.26.0.1 per Stream 8 sa.skeptic P1-5 — initial 0.65/0.35/0.15 misplaced high-quality memories per worked example).
  • AMENDED tropo-validate.py with check_memory_typing() — sweeps per-agent + vault-level memory entries; validates required fields + enum compliance + score range + context length per memory.capsule v1.0. WARN severity at v1.26.0 grace period; ERROR ratchet planned for later cycle once substrate has settled.
  • CLOSED ADR-020 (Curator Protocol) + ADR-021 (Historian Protocol) — both accepted March 2026 by Mike + Argus A8/A9 but never implemented before v1.26.0. v1.26.0 collapses both protocols into one composable sa.memory-curator agent (50c0bdce) operating under memory.capsule v1.0 (a5b3c891) — earn-the-abstraction-strict consolidation.
  • HONEST PIPELINE FINDING: dev-pipeline's update-subsystem-canonical-docs executor (shipped v1.9.2; supposed to auto-derive subsystem hub release_history rows + subsystem-registry.jsonl entries from release-plan's capabilities_touched: + hub_summaries:) silently skipped v1.26.0 because post-v1.21.0 brief-based release pattern bypasses plan-based input. v1.26.0 manually backfilled via v1.26.0.2 doc sweep + filed dev-pipeline-enforcement-hardening as roadmap follow-up. Pure Enforcement gates (Rule 11 + Rule 12 + Check 21) have a parallel hole for brief-based releases. Hardening cycle extends executor + gates to brief-based releases.

v1.2 — 2026-04-20 — Shipped

Three new ADRs closed governance surfaces:

  • ADR-035 Declared-Presence Validation Rule (a7c4e5b2) — ACCEPTED. Names 5 surfaces where unreachable declared references must fail-loud: boot tier chain, ledger UID refs, playbook step refs, governance chains, living references. Composed with ADR-032 amendment (same-day). v1.2 Ship Gate 8 satisfied.
  • ADR-036 Pipeline Bucket Taxonomy (f6a8c421) — ACCEPTED. Renames 2-active / 3-next to 3-active / 2-accepted; preserves 9-archive. Monotonic forward flow, explicit owner-review handshake, Kanban alignment. 4 renames executed mechanically (sa.research 031); UIDs stable.
  • ADR-037 Triggers as Embedded Governance Pattern (e8d2a19f) — PROPOSED. Cross-cutting declaration pattern embedded in capsules + playbook Groups/Steps + actions + release-plan ship gates + living-reference artifacts (not a standalone capsule type). Composes with ADR-035 as its executor architecture — ADR-035 declares rules, ADR-037 declares executors. Implementation deferred to v1.4 as Pillar 2 primary deliverable.

Two new governance capsules completing Pillar 1 callable-surface + hub-governance:

  • subsystem-hub.capsule v1.0 (8a4e21c5) — governs this hub and its 5 siblings. Declares 7 required body sections + Change Log append convention. Retrofits all 6 existing hubs.
  • action.capsule v1.0 (9b7f5e34) — fills the meta-capsule gap sa.research 025 flagged (zero of 10 actions carried governed_by:). Parallels how-to + session-agent + tool capsules.

Verification discipline codified at session scale. 11 sa.* sub-agents dispatched across the session — 7 sa.research (capability inventory + bucket rename + board reconciliation inventory) + 4 sa.cold-boot pairs (038→040 Board Reconciliation spec v0.2→v0.3, 039→041 agent-configurator v2.0→v2.1, 042→043 v0.3 operational bundle). All verdicts landed clean; all P0+P1 closed via two-cycle budget per artifact. Three-instrument verification (Argus build + sa.research inventory + sa.cold-boot stranger) shipped every locked capsule / spec / ADR with zero material rework.

rebuild-vault.py extended (ADR-035 Surface 1 fix) — type-specific field projection so governance fields (scope_ref, snapshot_of, board_definition, taken_at, status_board, grooming_board, sprint_board, portfolio_board) are reachable from the index for sub-second declared-presence checks.

Impact: verification is now a systematic discipline, not a convention. ADR-035 declares the rules; ADR-037 declares the executors; ADR-036 keeps pipeline taxonomy consistent. Every governance artifact this session passed cold-boot before lock. subsystem-hub.capsule means hubs never drift into this state again — discipline is capsule-enforced going forward.

Next: v1.3 Stream D applies subsystem-hub.capsule retrofit to all 6 hubs (full 7-section body compliance). v1.3 Stream C drafts CI/CD integration brief taking verification beyond the vault to the pipeline (GitHub Actions / Dagger). v1.4 Pillar 2 ships the triggers: embedded field per ADR-037.


Tropo Verification System (TVS) | tropo-verification-system | Owner: argus | Created 2026-04-14 | Change log added 2026-04-20 by Argus A29 Board: [[94723deb]] | All: [[11ebe520]] | Tasks: [[b6fe95ef]]


Verification Contribution (per matrix v1.0 footer)

This is the subsystem that makes the whole thesis operational. Every other subsystem produces artifacts; Governance is where those artifacts get checked against the rules that govern them — at the moment of action, not after the fact. The three-instrument discipline (build + independent review + cold-boot stranger test) is the mechanism; the ADRs and principles are the rules; the sa.* verifiers are the runtime. Tropo isn't verification-first because we say so — it's verification-first because every load-bearing artifact has its own receipt.

v1.3 — 2026-04-21 — Rename + scope broadening + verification-thesis footer

  • Renamed TVS → Tropo Governance per capability matrix v1.0 OD2-F. UID preserved.
  • Scope broadening rationale (per arch-specs 007 P2 concern): sa.research 029 found governance (rules) and verification (instruments) form one accountability span — Vela's operational authority covers both. The TVS subsystem's scope at v1.2 was already expanding beyond "cold-boot testing" to include ADR-035 Declared-Presence + ADR-036 bucket taxonomy + ADR-037 triggers + subsystem-hub.capsule + action.capsule — all governance-as-rules authoring. The rename with UID preservation reflects recognition of the full scope, not an arbitrary merger.
  • subsystem_name field updated from tropo-verification-systemtropo-governance.
  • last_release_reflected bumped to 1.3.0.
  • aligned_with reference bumped to subsystem-hub.capsule v1.1.
  • Verification-thesis footer added per matrix v1.0 OD2-D.
  • Body heading §What This Covers → §What This Subsystem Covers (canonical form).

v1.4 → v1.6 — 2026-05-05 — Forward-only catch-up consolidated (v1.7 Stream B4)

Per Decision 3 of v1.7 brief 6b5f7886: single consolidated entry covering 7 unreflected cycles (v1.4 / v1.4.1 / v1.4.2 / v1.4.3 / v1.4.4 / v1.5.0 / v1.6.0). Per-cycle reconstruction declined per historical-record-honesty principle. Registry pair: row 913343a0.

  • pipeline.capsule v2.0 → v2.2 (UID e4c8a6b2): activation-root-project pattern at step-0 mandatory (v1.6 Decision 3 substrate invariant); §Workshop signage block; §Sub-patterns documenting activation-root-project + v1.5 historical-gap.
  • project.capsule v2.x → v2.4 (UID 34e4cb0b): §Workshop signage; tropo-work L0 root sub-pattern documented; v3 amendment dropping stage: literal per Decision 4.
  • capsule-vs-instance-naming KB rule (9b3e8c47, NEW v1.6): dotted form (<kind>.capsule.md) reserved for kernel-file-type suffixes; hyphenated form (tropo-work/, dev-pipeline/) for project/instance folder names. Cross-references from pipeline.capsule + project.capsule + governance docs.
  • edge-types.definitions.jsonl dispatches row (NEW v1.7 Stream C2, codified during this very catch-up cycle): A pipeline step or executor agent dispatches B (a session-agent or sub-pipeline) for specialized verified work. Supports the pipeline-step-with-sa.* verifier pattern (first instance: sa.hub-groomer).
  • Three-instrument verification at scale across v1.4/v1.4.2/v1.4.3/v1.5/v1.6 cycles — Argus-build + sa.skeptic + sa.cold-boot BATCH dispatch became the canonical pattern; convergence-by-disagreement signal (different finding classes per instrument) operationalized as health metric.
  • 35-ADR status: cascade + ADR-038 collision renumber (this cycle, 2026-05-05): all 41 numbered ADRs now carry explicit status: field; collision resolved by chronological precedence + cross-reference count.

Impact: governance discipline is now substrate-enforceable (release.capsule v3.3 Rule 11 + Check 22 soft-gated v1.7-v1.9; hard-gated v1.10+). The subsystem itself authored the substrate that enforces documentation-as-release-deliverable doctrine across all 6 hubs.

Next: v1.7 ship adds the v1.7 release_history row at Gate 6 dogfood; v1.10 Enforcement formalizes the validator + the generalized pipeline-step-verifier.capsule.