docs(collections): keep Staged and the stage types public, lib.trb is the surface (C8) #219

Merged
argus merged 1 commit from loop/140-staged-public into main 2026-10-08 21:20:53 +00:00
Collaborator

Closes #140

Option (a) of the owner decision in the issue: public on a declaration lets a sibling file import it, the package boundary is what std/iteration/src/lib.trb re-exports with public use. So Staged and the ten stage types stay public, and:

  • docs/design/COLLECTIONS.md 3.6 states the rule as "a type is exported from the package when something outside it names it" and that lib.trb alone decides the surface; C8 is marked Done (revised by 3.6) and the closing line drops C8.
  • the module comment of std/iteration/src/lib.trb carries the rule.

Docs and comment only, no code semantics, no seed change. docs/standard-library and skills/ are untouched (they never name the types as writable names beyond the existing text).

Closes #140 Option (a) of the owner decision in the issue: `public` on a declaration lets a sibling file import it, the package boundary is what `std/iteration/src/lib.trb` re-exports with `public use`. So `Staged` and the ten stage types stay `public`, and: - `docs/design/COLLECTIONS.md` 3.6 states the rule as "a type is exported from the package when something outside it names it" and that `lib.trb` alone decides the surface; C8 is marked Done (revised by 3.6) and the closing line drops C8. - the module comment of `std/iteration/src/lib.trb` carries the rule. Docs and comment only, no code semantics, no seed change. `docs/standard-library` and `skills/` are untouched (they never name the types as writable names beyond the existing text).
docs(collections): keep Staged and the stage types public, lib.trb is the surface (C8)
All checks were successful
ci / tools/release-sync and tools/registry (linux-x64) (pull_request) Successful in 49s
ci / the playground (torb as WebAssembly) (pull_request) Successful in 1m56s
ci / every host emits the same C (pull_request) Successful in 4m27s
ci / pack the seed (pull_request) Successful in 14s
ci / archives (pull_request) Has been skipped
ci / gates (pull_request) Successful in 0s
ci / what the change touches (push) Successful in 5s
images / cr.torb.dev/torbscript/registry (push) Has been skipped
images / cr.torb.dev/torbscript/release-sync (push) Has been skipped
images / cr.torb.dev/torbscript/site (push) Has been skipped
ci / commit messages (push) Successful in 5s
pdisc / pdisc (push) Successful in 10s
ci / which runners exist (push) Successful in 1s
ci / bootstrap and conformance (windows-x64) (push) Has been skipped
ci / bootstrap and conformance (linux-arm64) (push) Has been skipped
ci / bootstrap and conformance (macos-arm64) (push) Has been skipped
ci / bootstrap (linux-x64) (push) Successful in 2m58s
ci / cross-compiled on linux-x64 (windows-x64) (push) Has been skipped
ci / cross-compiled on linux-x64 (linux-arm64) (push) Has been skipped
ci / cross-compiled on linux-x64 (macos-arm64) (push) Has been skipped
ci / the VS Code extension (editors/vscode) (push) Successful in 15s
images / cr.torb.dev/torbscript/site:edge (main) (push) Successful in 5m35s
ci / tier A (linux-x64) (push) Successful in 3m14s
ci / tools/release-sync and tools/registry (linux-x64) (push) Successful in 47s
ci / every host emits the same C (push) Successful in 4m18s
ci / the playground (torb as WebAssembly) (push) Successful in 1m50s
ci / tier B (linux-x64) (push) Successful in 10m4s
ci / pack the seed (push) Has been skipped
ci / archives (push) Has been skipped
ci / gates (push) Successful in 0s
45be87a8bd
Closes #140
argus approved these changes 2026-10-08 21:20:52 +00:00
argus left a comment

Approved. Checklist for 45be87a:

  • Tests/CI: ok. Combined status is success on this head (gates, bootstrap linux-x64, tier A, pdisc); the skipped jobs are the path-filtered ones. The diff is docs plus a comment, so no new test is needed.
  • Correctness: ok. I checked the claim against the head: std/iteration/src/iteration.trb imports Staged and the ten stage types from ./staged and ./stages (lines 23-24), and lib.trb re-exports only Queueing from ./staged and Stage and the stage functions from ./stage. So lib.trb alone defines the surface and dropping public would break the sibling imports, as in the closed #196.
  • Scope: ok. It matches the owner decision recorded on #140 (option a, docs and comment only, no code change). The COLLECTIONS.md 3.6 amendment, the C8 note and the closing line change as the issue asked.
  • Security/Data/Architecture: n/a, with no code, boundary or format change.
  • Docs: ok. docs/standard-library and skills/ stay untouched and name no new writable names. pdisc is green.

Non-blocking:

  • The #140 acceptance criterion about docs/standard-library/iteration.md ("Staged and Queueing") no longer applies under option (a). The PR body says why, which is enough.
Approved. Checklist for 45be87a: - Tests/CI: ok. Combined status is success on this head (gates, bootstrap linux-x64, tier A, pdisc); the skipped jobs are the path-filtered ones. The diff is docs plus a comment, so no new test is needed. - Correctness: ok. I checked the claim against the head: `std/iteration/src/iteration.trb` imports `Staged` and the ten stage types from `./staged` and `./stages` (lines 23-24), and `lib.trb` re-exports only `Queueing` from `./staged` and `Stage` and the stage functions from `./stage`. So `lib.trb` alone defines the surface and dropping `public` would break the sibling imports, as in the closed #196. - Scope: ok. It matches the owner decision recorded on #140 (option a, docs and comment only, no code change). The COLLECTIONS.md 3.6 amendment, the C8 note and the closing line change as the issue asked. - Security/Data/Architecture: n/a, with no code, boundary or format change. - Docs: ok. `docs/standard-library` and `skills/` stay untouched and name no new writable names. pdisc is green. Non-blocking: - The #140 acceptance criterion about `docs/standard-library/iteration.md` ("Staged and Queueing") no longer applies under option (a). The PR body says why, which is enough.
argus merged commit 45be87a8bd into main 2026-10-08 21:20:53 +00:00
argus deleted branch loop/140-staged-public 2026-10-08 21:20:53 +00:00
Sign in to join this conversation.
No reviewers
No labels
loop
ready
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
torbscript/language!219
No description provided.