Skip to content

t27f: frame shards as a generic spec, frame_shard.t27 #10385

Closed as not planned

Description

@gHashTag

PR #10384 made token_floor render in 48 shards, but the partition and the TF_SHARD/TF_SHARDS reader live inside specs/t27f/token_floor.t27. Every other reel renderer would copy them, and token_floor.t27 is being rewritten (portrait and landscape) by its owner in PR #10378.

Boundary

  • In scope: new specs/t27f/frame_shard.t27, the same partition with the reel length as a parameter, plus env_first(frames) / env_end(frames) for a renderer's main, and its seal.
  • Out of scope: token_floor.t27 itself. Its owner switches it to use t27f::frame_shard in the render(wide) rewrite. Also out of scope: frame_cache.t27, which is already generic, and any CI job.

User Scenarios

  • A reel renderer's author adds use t27f::frame_shard; and three lines in main, and the lab renders the reel in N parallel shards whose concatenation is the one-process output.
  • Someone runs the binary with no TF_SHARD/TF_SHARDS set, or with an invalid pair, and gets the whole reel.

Requirements

  • Shard k of n covers [shard_a(k, n, F), shard_b(k, n, F)), and the shards of one n tile [0, F) in order for any F.
  • An n outside 1..F or a k outside 0..n-1 means the whole reel.
  • getenv is reached only through env_first/env_end, so the tests never need libc.
  • Only .t27 code.

Success Criteria

  • The t27c test report on the lab passes for frame_shard.t27 with 0 vacuous tests.
  • The spec is sealed at .trinity/seals/t27f_frame_shard.json.

Activity

  1. added
    shape-refusedClosed by the issue-shape gate (specs/policy/issue_shape.t27); a passing edit reopens it
    on Oct 18, 2026
  2. github-actions commented on Oct 18, 2026

    @github-actions
    Contributor

    Closed by the issue-shape gate (specs/policy/issue_shape.t27, #7498): an issue must have the template's sections. Edit the body; an edit that passes reopens it.

    • missing: ## Requirements -- numbered obligations, FR-001: ... MUST ...
    • missing: ## Success Criteria -- an outcome a machine can settle: a number with a unit, a backticked file, exit 0, or a backticked command
  3. added 8 commits that reference this issue on Oct 18, 2026
    eddbf22
    5e4d3b9
    0c8dccf
    3f9fc23
    e43639b
    875be55
    20c8b07
    90631d0
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

    shape-refusedClosed by the issue-shape gate (specs/policy/issue_shape.t27); a passing edit reopens it

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions