Skip to content

EPIC: T27 backend — rings from the decision core to silicon #1279

Description

@gHashTag

EPIC: T27 backend - rings from the decision core to silicon

Everything below the interface is written in T27 and generated to its target. Swift keeps the interface and nothing under it. A rule transcribed into Swift, Rust, Zig and Verilog is four rules that agree until someone edits one.

Rings, innermost first

Ring What Depends Target
T27-00 Decision core: retry, review, merge gate, capacity - Rust + Verilog
T27-01 A2A protocol 00 Rust + Postgres
T27-02 Orchestration: the Queen's tick 00, 01 Rust + inngest
T27-03 Transport: SSE 01 Rust
T27-04 Scoring: salience, reliability, latency 00 Rust + Verilog

Division of labour

Another agent owns /Users/playra/t27 and the FPGA boards. Do not edit /Users/playra/t27. Do not program a board. t27/fpga/HARDWARE_SSOT.md is authoritative for hardware.

Where it stands

RING-00 is executed on live data every round (#1331) and its Rust answer is compared to Swift's; the Swift answer is the one acted on. Five compiler gaps in the seed block generation of valid Rust for the other rings. Those gaps are the other agent's repository.

What a bee can do here without a Swift compiler, a board or the seed: write the parity ledger that says, per ring, what exists, what is generated, what is executed, and what decides - so the next wave starts from a fact and not from this table.

User Scenarios & Testing

User Story 1 - The ring table is read from the tree, not from this issue (P1)

Acceptance Scenarios:

  1. Given the directory trios/rings/,
    When the ledger is generated,
    Then every T27-* directory present is listed with the count of .t27 files and of generated files under it.
  2. Given RING-00's parity script trios/tests/t27/ring00_parity.sh,
    When the ledger is generated,
    Then the ledger states whether that script exists and how many assertions it contains, by counting.

Requirements

  • FR-001: A script MUST walk trios/rings/ and emit one table row per T27-* directory, with file counts, not descriptions.
  • FR-002: The ledger MUST record, for each ring, which of gen-rust, gen, gen-c, gen-verilog outputs exist as files, by name.
  • FR-003: The ledger MUST NOT claim any ring "decides" anything; it records presence only.
  • FR-004: The script MUST NOT read or write anything under /Users/playra/t27.

Success Criteria

  • trios/tools/ring-ledger.sh exists, is POSIX sh, and produces trios/docs/ring-ledger.md.
  • The ledger has one table with a header row and at least one row per T27-* directory found.
  • The ledger contains the exact string ring00_parity.sh and a count of its test or grep -q lines.
  • The script defines a function named ring_row; that identifier appears nowhere in the tree today.

Boundary

trios/tools/ring-ledger.sh
trios/docs/ring-ledger.md

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions