-
released this
2026-08-18 00:30:47 +00:00 | 63 commits to main since this releaseREQ-034: Bearers transport runtime
x/bearers OY-SAT + OY-QR message handlers + session lifecycle. OY-QR one-shot consumed-flip-before-effect (A-521). Surveillance-resistant negative test (A-522). Store-backed BearerTransport (no hardware/RF libs — D-054). Coverage 91.2%. 4 verification layers green. No regression (29 packages).
Requirements
- covered: [REQ-034]
Next
- P3: Anchors onboarding runtime (REQ-035) → v0.4.3
Downloads
-
released this
2026-08-18 00:20:48 +00:00 | 65 commits to main since this releaseOpenYield v0.5 — Phase 1 (Exit + Bridge Runtime)
REQ-033: Exit layer runtime —
x/exitDEX swap routing +x/bridgeL2↔L1 IBC packet handlers.What shipped
- cosmos-sdk v0.50.8 + ibc-go v8.2.1 added (D-062 pin; D-055 G-006 controlled exception; G-018 go 1.22 build gate clean).
x/bridge: store-backed Keeper + MsgServer (Attest/Activate/Close) + IBCModule (OnRecv parses ICS-20 v1 + mints; OnAck delete-on-first + ERROR-on-second per G-021; OnTimeout refund-once per A-513) + Solana wormhole-style guardian sig stub (2-of-N).x/exit: store-backed Keeper + MsgServer (SubmitExitRoute, ExecuteDEXSwap via BridgeKeeper shim, RefundExit) + Fee Covenant clamp on exit-fee-bps.- G-003 production firewall intact (expected_keepers.go interfaces; no cross-module struct imports).
- G-024 types/ test files stdlib-only.
Verification (4 layers green)
go build ./...+go test ./...green (28 packages, no v0.1..v0.4 regression).- Coverage: x/exit/keeper 85.0%, x/bridge/keeper 82.1% (≥80% met).
- Lexicon firewall green. G-003 import-invariant green. Locked-consts unchanged (ExitStatusCount=5, BridgeStatusCount=4).
Requirements
- covered: [REQ-033]
- partial: []
Next
- P2: Bearers transport runtime (REQ-034) → v0.4.2
Downloads
-
released this
2026-08-18 00:00:40 +00:00 | 67 commits to main since this releaseOpenYield v0.5 — Phase 0 (Pre-Execution)
Milestone: v0.5 (Bearers Runtime, feature type)
Tag base: v0.4.x patch line
Phase: P0 (pre-execution) → v0.4.0Pipeline stages
- SPECIFY: v0.5 milestone established (feature type, tag_base v0.4.x). 7 new REQs (REQ-033..REQ-039) sourced from PROJECT.md v0.4 out-of-scope + AUDIT §193 P1-1 + D-050.
- CLARIFY: 8 ambiguities resolved at full autonomy (D-054..D-061). Runtime = simtest-grade keeper handlers + simtest, NOT mainnet (D-054). Cosmos SDK dep GRILL-escalated (D-055). Phase ordering P1-P8 (D-056). Bond = CLOB with mission-lock clamp (D-057). Custody = keyring interface + test impl (D-058). IBC = 5 locked L2 chains (D-059). Council Proposal/VoteOption enums, SignalKind stays 4 (D-060).
- RESEARCH: Per-REQ runtime research (prior art: ibc-go v2, dYdX/Sei CLOB, Fireblocks/Anchorage custody, OZ Governor, Wormhole). 26 A-5xx assumptions. ARCHITECTURE.md v0.5 Runtime section. PERSONAS.md rewritten (security-engineer, cosmos-engineer, mesh-engineer reactivated).
- PLAN: 8 phases (P1..P7 execution + P8 final). 36 tasks with wave ordering, persona assignment, must-have verification. G-003 expected_keepers.go firewall for cross-module keeper calls. 4 planner-escalation decisions (D-062..D-065).
- GRILL: SHIP WITH FIXES (conf 0.78). All 5 escalated decisions RATIFIED. 8 binding fixes (G-017..G-024). Feature purity gate PASS WITH FIXES.
- MVP/UX CHECK: 3 sections auto-generated (User-Facing Surface, Happy Path with 3 scenarios, UX Acceptance Criteria with 9 criteria).
Requirements covered
- REQ-033..REQ-039 (planned for P1..P7; none shipped in P0)
Decisions ratified
- D-055 (cosmos-sdk dep G-006 exception)
- D-062 (cosmos-sdk v0.50.x + ibc-go v8.x pin)
- D-063 (bond CLOB REJECT above 800bps)
- D-064 (MissionLockAmendment reject-at-ValidateBasic)
- D-065 (Watcher Veto quorum default 6)
Binding fixes (G-017..G-024)
- G-017 NoWithVeto regression-test reconcile (P7)
- G-018 cosmos-sdk go 1.22 hard build gate (P1)
- G-019 CLOB ImpliedCoupon helper + boundary test (P6)
- G-020 WatcherVetoQuorum Params.Validate bounds [2,9] (P7)
- G-021 IBC replay: second OnAcknowledgementPacket ERROR (P1)
- G-022 baseline keeper stubs documented + P8 gate (P8)
- G-023 PERSONAS keeper/msg_server.go ownership split (P1)
- G-024 CI: types/ invariant tests stay stdlib-only (P1..P7)
Next steps
- P1: Exit + Bridge runtime (REQ-033) → v0.4.1
- P2..P7: Bearers/Anchors/Hub/Services/Bond/Council runtime → v0.4.2..v0.4.7
- P8: Final review + audit + milestone ship → v0.4.8 (= v0.5 milestone release)
Downloads
-
released this
2026-08-17 23:35:52 +00:00 | 71 commits to main since this releasev0.4 — Refinement (NFR) Milestone Release
The v0.4 milestone release (D-008 — final phase patch IS the milestone release). NFR type, tags on the v0.3.x patch line.
Phases
Phase Type Scope Patch Release ID P0 docs Pre-Execution (spec/clarify/research/plan/grill/mvp-ux) v0.3.0 748 P1 refactor+test Lexicon shared helper (REQ-029) + cross-const test (REQ-030) v0.3.1 749 P2 docs+test Council lifecycle divergence docs (REQ-031) + regression guard v0.3.2 750 P3 chore+ci Docs build CI workflow (REQ-032) v0.3.3 751 P4 final REVIEW + AUDIT + milestone SHIP v0.3.4 this release Requirements Covered (4/4, all complete)
- REQ-029 (GRILL G-014):
lexicon.SyntheticBannedStrings()shared helper; both meta-tests consume it; duplicated synthetic table removed. - REQ-030 (REVIEW P2 / A-304, G-015):
x/hub/types/cross_const_test.gocross-package const-equality test + absolute 800/0 mission-locked assertion. - REQ-031 (AUDIT §193): ARCHITECTURE.md Council lifecycle divergence section +
TestSignalKindShapeIntentionalregression guard. - REQ-032 (D-046, D-051, G-016):
.gitea/workflows/docs-build.yml— go-test then docs-build (needs: go-test), mkdocs build + site/ artifact.
NFR Purity Gate: GREEN
Zero
feat:commit subjects in the milestone (20 commits, all docs/refactor/test/chore/verify/decision/checkpoint/Merge). The D-001 refinement-only filter was enforced throughout; live-runtime promotions of v0.3 Bearers skeletons were rejected (feat:-class) and deferred to v0.5+.Verification
go test ./...green (26 packages).go.modunchanged (G-006 — zero Go deps; Python deps isolated to CI docs-build job).- G-003 production firewall intact (no production import of
x/bond/typesinx/hub/types). - Coverage:
x/hub/types93.3% (v0.3 floor preserved),x/council/types96.4% (improved); both above 80% target. - NFR purity gate GREEN (subject-only check:
git log --format='%s' | grep -E '^feat:'exit 1). - Audit: 0 critical issues, 3 P2 nits (post-hoc, non-blocking).
Forward-References Closed
- GRILL G-014 (lexicon self-test table drift) → closed by REQ-029.
- REVIEW P2 / A-304 (hub↔bond const drift) → closed by REQ-030.
- AUDIT §193 (council lifecycle type divergence) → documented by REQ-031 (P1-1 Proposal/VoteOption deferred to v0.5+; P1-2 SignalKind 4-source shape locked as intentional).
- D-046 (docs publishing CI) → landed by REQ-032 (build+artifact; full Pages publish still deferred per D-051).
---ci---
project: oy
phase: 4
milestone: v0.4
status: complete
tag_base: v0.3.x
milestone_type: nfr
phase_role: final
milestone_complete: true
requirements:
covered: [REQ-029, REQ-030, REQ-031, REQ-032]
partial: []
---/ci---Downloads
- REQ-029 (GRILL G-014):
-
released this
2026-08-17 23:33:39 +00:00 | 75 commits to main since this releasev0.4 Phase 3 — Docs Build CI
Ships a Gitea Actions workflow that runs the lexicon firewall + builds the docs site on every push. Chore (CI config), not feat: (D-001 filter).
REQ-032 (D-046, D-051, G-016)
.gitea/workflows/docs-build.yml:go-testjob: setup Go 1.22,go test ./...(lexicon firewall + all x/* tests + v0.4 cross-const test).docs-buildjob:needs: go-test(G-016 firewall-gates-docs-build — no false-green docs build from a repo with a firewall failure), setup Python,pip install mkdocs mkdocs-material,mkdocs build, uploadsite/as a CI artifact (14-day retention).- Triggers on push (all branches).
.gitignore: addsite/(mkdocs build output; never committed).- Full Gitea Pages publishing deferred per D-051 (no hosting target configured in v0.4).
Verification
- YAML schema valid;
docs-buildneedsgo-test(G-016 OK). go test ./...green.go.modunchanged (G-006 — Python deps isolated to docs-build job).- Local
mkdocs buildsucceeds (site/produced). - NFR purity: zero commit subjects starting with
feat:.
---ci---
project: oy
phase: 3
milestone: v0.4
status: complete
tag_base: v0.3.x
milestone_type: nfr
phase_release_tag: v0.3.3
reqs: [REQ-032]
---/ci---Downloads
-
released this
2026-08-17 23:32:07 +00:00 | 79 commits to main since this releasev0.4 Phase 2 — Lifecycle Divergence Documentation + Regression Guard
Documents the AUDIT §193 council lifecycle type divergences and locks the 4-source SignalKind shape. Docs + test only (NFR).
REQ-031
- ARCHITECTURE.md §"Council Voice/Council Interface — Lifecycle Type Divergence Decisions (v0.4)" documents:
- P1-1:
Proposal/ProposalStatus/VoteOptionabsent — deferred to v0.5+ governance runtime (feat:-class, rejected by D-001 filter). - P1-2:
SignalKind4 sources (Stash/Standing/Vouch/Capital) vs spec's 5-sourceVoiceSource— the 4-source shape is intentional per AUDIT rationale (Freeholder is eligibility, Guild is council tier, Capital is committed-capital per vision §9.1). - P2:
x/bearers/typesValidateGenesisno-op is correct per spec (no action).
- P1-1:
TestSignalKindShapeIntentional(NEW regression guard inx/council/types/types_test.go) locks the 4-source shape with the AUDIT rationale in the doc comment.
Verification
go test ./...green.x/council/typescoverage 96.4% (improved from v0.3).- No production
.gofiles modified (D-050 — docs + test only). SignalKindCountunchanged (still 4).- Zero
feat:commits in P2.
---ci---
project: oy
phase: 2
milestone: v0.4
status: complete
tag_base: v0.3.x
milestone_type: nfr
phase_release_tag: v0.3.2
reqs: [REQ-031]
---/ci---Downloads
- ARCHITECTURE.md §"Council Voice/Council Interface — Lifecycle Type Divergence Decisions (v0.4)" documents:
-
released this
2026-08-17 23:30:50 +00:00 | 83 commits to main since this releasev0.4 Phase 1 — Lexicon + Const Hardening
Closes the G-014 lexicon-firewall drift risk and the A-304 hub↔bond const drift risk. Refactor + test only (NFR).
REQ-029 (GRILL G-014)
- Added
lexicon.SyntheticBannedStrings()— single source for the synthetic self-test table. lexicon_meta_test.go::TestLexiconMetaSelfTestTableandlexicon_meta_docs/lexicon_meta_docs_test.go::TestLexiconMetaDocsSelfTestTableboth consume the helper.- Removed the byte-identical duplicated 10-string table from both meta-tests.
- A future banned-term addition now updates both firewalls from one place.
REQ-030 (REVIEW P2 / A-304, G-015)
- New
x/hub/types/cross_const_test.go(test-only import ofx/bond/types, G-003 test-exempt). TestLendingCouponCapMatchesBondCap+TestLendingCouponFloorMatchesBondFloor— cross-equality.TestConstsAreMissionLocked800And0(G-015) — absolute 800/0 assertion catches paired drift.
Verification
go test ./...green.go.modunchanged (G-006).- G-003 production firewall intact (no production import of
x/bond/typesinx/hub/types). x/hub/typescoverage 93.3% (v0.3 floor preserved; new test adds coverage).
---ci---
project: oy
phase: 1
milestone: v0.4
status: complete
tag_base: v0.3.x
milestone_type: nfr
phase_release_tag: v0.3.1
reqs: [REQ-029, REQ-030]
---/ci---Downloads
- Added
-
released this
2026-08-17 23:28:47 +00:00 | 87 commits to main since this releasev0.4 Phase 0 — Pre-Execution
Establishes the v0.4 refinement-only NFR milestone. Tags run on the v0.3.x line.
Stages complete
- SPECIFY → CLARIFY → RESEARCH → PLAN → GRILL → MVP/UX CHECK
Decisions (D-047..D-053)
- D-047: v0.4 NFR type, tags v0.3.x, zero feat: phases
- D-048: REQ-029 lexicon shared helper (G-014)
- D-049: REQ-030 cross-const test (A-304, G-003 test-exempt)
- D-050: REQ-031 = document only, no feat: enum additions (D-001 filter)
- D-051: REQ-032 docs CI = .gitea/workflows build+artifact (no Pages publish)
- D-052: Phase ordering P1→P2→P3→P4
- D-053: No IDEATE in v0.4 (no --ideate flag)
Grill binding (G-015, G-016)
- G-015: cross-const test MUST assert absolute 800/0 values (paired-drift guard)
- G-016: docs-build job MUST need go-test (firewall-gates-docs-build)
Scope (4 REQs)
- REQ-029: lexicon.SyntheticBannedStrings() shared helper
- REQ-030: x/hub↔x/bond cross-package const-equality test
- REQ-031: council lifecycle divergence docs + regression guard
- REQ-032: .gitea/workflows/docs-build.yml CI
Phases (12 tasks)
- P1 lexicon+const hardening → v0.3.1
- P2 lifecycle divergence docs+guard → v0.3.2
- P3 docs build CI → v0.3.3
- P4 final review+audit+ship → v0.3.4 (milestone release)
NFR purity gate
P4 audit enforces zero
feat:commits in the milestone range.---ci---
project: oy
phase: 0
milestone: v0.4
status: complete
tag_base: v0.3.x
milestone_type: nfr
---/ci---Downloads
-
released this
2026-08-17 22:35:39 +00:00 | 94 commits to main since this releaseMilestone v0.3 (Bearers & Documentation) — COMPLETE. Feature type, tags v0.2.x. TWO WORK-STREAMS SHIPPED: (A) Bearers skeleton + tests (D-020 pattern, 7 x/* packages, zero ext deps): - x/bridge (NEW): BridgeStatus enum (4), BridgeRoute by-ID-string refs - x/exit (NEW): ExitStatus enum (5), ExitRoute, DEXSwap (opaque venue) - x/bearers (EXT): OYSATLink surveillance-resistant LOCKED, OYQRCode idempotent - x/partner (EXT): AnchorCredential (custody-provider-id empty in skeleton) - x/hub (NEW): HubService enum (3), LendingCouponCapBps=800 LOCAL const (A-304) - x/services (NEW): ServiceKind enum (4), window-id by-ID-string ref (A-307) - x/bond (EXT): GrowthBond, ClampGrowth G-012 underflow guard, secondary market All packages >=93.3% coverage. Both lexicon firewalls green. G-003 intact. (B) Documentation deliverable (REQ-027 complete, 26-page MkDocs Material site): - README.md + mkdocs.yml + docs/index.md - docs/shared/ (7), docs/nomads/ (8), docs/freeholders/ (8), docs/reference/ (2) - REQ-028: lexicon firewall extended to docs/ + README.md (5 tests, G-013 walk-coverage, G-014 shared self-test) PHASES: - P0 Pre-Execution -> v0.2.0 - P1 Docs foundation + firewall extension -> v0.2.1 - P2 Nomads docs -> v0.2.2 - P3 Freeholders docs (REQ-027 complete) -> v0.2.3 - P4 Bearers skeleton I -> v0.2.4 - P5 Bearers skeleton II -> v0.2.5 - P6 Final Review + Audit + Ship -> v0.2.6 (THIS milestone release) REQUIREMENTS COVERED: REQ-010, REQ-022, REQ-023, REQ-024, REQ-025, REQ-026 (skeleton), REQ-027, REQ-028 (complete). IDEATE-01..08 ratified and delivered. 13 clarifications (D-034..D-046). 4 grill binding decisions (G-011..G-014). Review verdict SHIP (0.91). Audit PASS (0.92).
Downloads
-
v0.2.5 Pre-Release
released this
2026-08-17 22:27:23 +00:00 | 84 commits to main since this releasePhase 5 (Bearers skeleton II) for v0.3. x/hub (NEW, LendingCouponCapBps=800 LOCAL const A-304), x/services (NEW, window-id by-ID-string A-307), x/bond EXT (GrowthBond + ClampGrowth G-012 underflow guard + secondary market). Coverage 93.3/100/95.1%. D-028 regression intact. REQ-024/025/026 covered.
Downloads