P3 complete. 8 docs/freeholders/ pages (signals, standing, stands-guilds, councils-voice, bonds, partner-spectrum, anchor-preview, index) + 2 docs/reference/ pages (architecture, components). Docs firewall green across all 26 docs pages. Full docs deliverable (README + mkdocs.yml + 26-page site) complete — REQ-027 complete. ---ci--- project: oy phase: 3 milestone: v0.3 status: complete tag_base: v0.2.x phase_role: execution requirements: covered: [REQ-027] partial: [] ---/ci---
2.3 KiB
Bonds
A Mesh Bond (REQ-021, vision §17) is a Stand-issued
instrument that pays a coupon to its holder over a term and returns the
principal at maturity. The coupon is bounded by a mission-locked cap and
floor: 8% upper cap, 0% floor (locked CouponCapBps = 800 and
CouponFloorBps = 0 in x/bond). The cap exists so the mesh cannot become a
speculative market; the floor exists so the coupon cannot go negative.
The coupon clamp
The coupon is clamped to [floor, cap] by the Clamp helper in x/bond
(same shape as the Fee Covenant clamp): a
coupon above 8% is reduced to 8%; a coupon below 0% is raised to 0%; a coupon
in range is unchanged. The clamp is a tested invariant: below floor → floor,
above cap → cap, in range → unchanged. This is the Mission Lock's expression
in the capital layer.
Why a cap
OpenYield is a public-good mesh for real production, not a speculation engine. An uncapped coupon market would let a Stand offer arbitrarily high coupons to attract Bread, turning the mesh into a speculative race. The 8% cap bounds the coupon at a level consistent with real production returns, and the Mission Lock makes the cap non-amendable — no Council vote can raise it. The mesh says coupon and real return, never the passive-value or standalone-metric words banned by the lexicon.
The bond lifecycle
A Bond moves through five states (locked BondStatus enum in x/bond):
Issued → Active → Matured, with Defaulted and Repaid as terminal paths. The
issuer is a Stand (referenced by stand-id); the principal is denominated in
Grain. The bond market is governed by the
Stand Council for the issuing Stand.
Coming in v0.3 P5
v0.3 P5 (REQ-026) extends the bond market with Growth Bonds (a coupon that grows over the term, still clamped to the 8% cap) and a secondary market (Buy/Sell orders on issued bonds). The 8% / 0% consts are unchanged — the D-028 regression firewall guarantees v0.3 cannot alter the v0.2 mission-locked ceiling. See Partner Spectrum for how Partners relate to the bond market, and Anchor Preview for the institutional tier.