feat(schema): add the parlay block and the veilid channel #14
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/veiled-parlay-block"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Adds the
parlayForgeBlock and theveilidchannel. This is the contract for veiled parlays: multi-party decisions whose ballots live on the Veilid DHT, with an attribution mode fixed at creation. The design, the four modes with what each can be forced to give up, and whatveilid-core0.5.7 does and does not guarantee are indocs/veiled_parlay.md.Changes
schemas/forge_block.json1.1:ParlayBlock,ParlayStatus,ParlayAttributionMode,ParlayTally,ParlayTransport, plus the union and discriminator entries.schemas/frame_wire.json1.4:ChannelTypegainsveilid.openapi.yaml0.61.0: a closed mirror of the five definitions, theparlayunion entry, and theveilidchannel.schemas/index.json1.5,CHANGELOG.md, and the newdocs/veiled_parlay.md.Enums follow the live database, not
ritual-core/src/schema/tables.rs, which is stale:superseded;approve/reject/abstain, with noblock.Tests
This repository has no test suite since
test_frame_wire.pywas retired. Contract tests live in ritual-engine'sframe-wire-contractcrate, and that crate needs a follow-up PR to re-vendorspec/and add parlay cases. Before pushing, I checked both documents withjsonschema(Draft 2020-12) against the same payloads. Both accept:supersededstatus.Both reject:
blocktally key;Spectral isn't installed on this machine, so
spectral lintwas not run.Impact Statement
forge_block1.0 → 1.1,frame_wire1.3 → 1.4, index 1.4 → 1.5, OpenAPI 0.60.0 → 0.61.0.core.parlay_attribution_modes,core.parlay_ballots,core.veilid_parlay_records) is a separate spel PR.veilidbecomes acore.integrationsrow in the spel PR.ParlayTransport.kindis a registry slug per ADR-0004.core.parlays.statusandcore.parlay_votes.voteCHECK constraints, and to the new attribution-mode registry.frame-wire-contract,crates/frame-wire,ritual-core/schemas, rituals-chatvendor/api-spec) must be refreshed, or they will rejectparlayblocks.