book: Guide chapter first project (slice of #587) #607

Closed
opened 2026-10-29 20:40:20 +00:00 by orion · 2 comments
Collaborator

Slice of #587 (Guide chapters), which is a slice of the epic #582. Starts after nothing; #585 is merged. Governing note: book/CONCEPT.md ("How a page is written", "What CI checks"). Touches the seed: no (documentation only; no syntax change, no native, no driver flag, no std name looked up by the compiler).

Goal

Write the Guide chapter book/guide/first-project.md: installing the toolchain, running a file, making a project with torb new, growing it into a small program with a test, turning it into a workspace of several members, and adding a dependency. Read like book/guide/handling-errors.md (the merged vertical slice from #585): one example that grows across the sections.

Replaces in docs/

  • docs/guide/installing-and-running.md
  • docs/guide/a-small-program.md
  • docs/how-to/set-up-a-workspace.md
  • docs/how-to/add-a-dependency.md

About 450 lines of old material, one chapter; no further narrowing needed.

Acceptance criteria

  • book/guide/first-project.md exists with kind page, status: stable, front matter in the shape of the other guide chapters (title, summary, order, keywords), and is written as book/CONCEPT.md, "How a page is written", says: the first paragraph says in two to four sentences what the page covers, headings name ideas, prose first, no history words, no internal references (no issue numbers, no links into docs/design, docs/contributing, docs/internals, CONCEPT.md), no Related/Next/See also sections, lists of at most seven items, every section starts with a sentence
  • Every trb run and trb error block is followed by its output block with the real output (a trb error block shows what torb check prints, from error: on); a project.trb is shown as a bare trb block; no fragments, no // prints comments
  • The chapter covers: install and run one file, torb new, the layout of a project (project.trb, src/, tests), torb test, a workspace with members and a sibling dependency by name, and adding a dependency (declare in project.trb, runtime vs development dependency, project.lock.trb, what the imports of a dependency say it can reach)
  • The signature features this area touches are shown, not just named: "One tool, two speeds" (torb run and torb build on the same code, one binary that also tests and formats) and "Every case is handled" or "No null and no exceptions" in the example program that grows
  • One example grows across the sections (CONCEPT.md, "Examples grow"), and it is a program, not a list of commands
  • book/guide/index.md lists the new chapter (generated block via torb docs index book); torb docs check book, torb docs index --check book and torb docs site book --check pass, and tools/gates.sh passes in CI
  • The four old pages are deleted in the same PR unless a skill is still built from them. skills/torbscript-projects and skills/torbscript are generated by torb docs skill docs skills and link set-up-a-workspace.md, add-a-dependency.md and installing-and-running.md; for every old page a skill still needs, it stays in docs/ unpublished and the PR description names it and why; the others are deleted together with every link to them, and the skills are regenerated so docs skill --check stays green
  • No other book page (tour/, start/, reference/, std/) is changed except the links that must follow from the deletion; the other six chapters of #587 are not started

Notes for the implementer

  • Read book/CONCEPT.md, book/guide/handling-errors.md and book/guide/your-own-constructs.md first; run the examples with torb before pasting their output.
  • Commits: one or two Conventional Commits, for example docs(book): guide chapter first project and, if needed, docs: retire the pages the chapter replaces.
  • Size: one PR, 30-40 minutes. Do not write other chapters.
Slice of #587 (Guide chapters), which is a slice of the epic #582. Starts after nothing; #585 is merged. Governing note: `book/CONCEPT.md` ("How a page is written", "What CI checks"). Touches the seed: no (documentation only; no syntax change, no native, no driver flag, no std name looked up by the compiler). ## Goal Write the Guide chapter `book/guide/first-project.md`: installing the toolchain, running a file, making a project with `torb new`, growing it into a small program with a test, turning it into a workspace of several members, and adding a dependency. Read like `book/guide/handling-errors.md` (the merged vertical slice from #585): one example that grows across the sections. ## Replaces in `docs/` - `docs/guide/installing-and-running.md` - `docs/guide/a-small-program.md` - `docs/how-to/set-up-a-workspace.md` - `docs/how-to/add-a-dependency.md` About 450 lines of old material, one chapter; no further narrowing needed. ## Acceptance criteria - [ ] `book/guide/first-project.md` exists with kind `page`, `status: stable`, front matter in the shape of the other guide chapters (`title`, `summary`, `order`, `keywords`), and is written as `book/CONCEPT.md`, "How a page is written", says: the first paragraph says in two to four sentences what the page covers, headings name ideas, prose first, no history words, no internal references (no issue numbers, no links into `docs/design`, `docs/contributing`, `docs/internals`, `CONCEPT.md`), no Related/Next/See also sections, lists of at most seven items, every section starts with a sentence - [ ] Every `trb run` and `trb error` block is followed by its `output` block with the real output (a `trb error` block shows what `torb check` prints, from `error:` on); a `project.trb` is shown as a bare `trb` block; no fragments, no `// prints` comments - [ ] The chapter covers: install and run one file, `torb new`, the layout of a project (`project.trb`, `src/`, tests), `torb test`, a workspace with members and a sibling dependency by name, and adding a dependency (declare in `project.trb`, runtime vs development dependency, `project.lock.trb`, what the imports of a dependency say it can reach) - [ ] The signature features this area touches are shown, not just named: "One tool, two speeds" (`torb run` and `torb build` on the same code, one binary that also tests and formats) and "Every case is handled" or "No null and no exceptions" in the example program that grows - [ ] One example grows across the sections (CONCEPT.md, "Examples grow"), and it is a program, not a list of commands - [ ] `book/guide/index.md` lists the new chapter (generated block via `torb docs index book`); `torb docs check book`, `torb docs index --check book` and `torb docs site book --check` pass, and `tools/gates.sh` passes in CI - [ ] The four old pages are deleted in the same PR unless a skill is still built from them. `skills/torbscript-projects` and `skills/torbscript` are generated by `torb docs skill docs skills` and link `set-up-a-workspace.md`, `add-a-dependency.md` and `installing-and-running.md`; for every old page a skill still needs, it stays in `docs/` unpublished and the PR description names it and why; the others are deleted together with every link to them, and the skills are regenerated so `docs skill --check` stays green - [ ] No other book page (`tour/`, `start/`, `reference/`, `std/`) is changed except the links that must follow from the deletion; the other six chapters of #587 are not started ## Notes for the implementer - Read `book/CONCEPT.md`, `book/guide/handling-errors.md` and `book/guide/your-own-constructs.md` first; run the examples with `torb` before pasting their output. - Commits: one or two Conventional Commits, for example `docs(book): guide chapter first project` and, if needed, `docs: retire the pages the chapter replaces`. - Size: one PR, 30-40 minutes. Do not write other chapters.
Author
Collaborator

[loop:torbscript] claim implement by session:loop-torbscript-20261029-0858 until 2026-10-30T02:50Z

[loop:torbscript] claim implement by session:loop-torbscript-20261029-0858 until 2026-10-30T02:50Z
Author
Collaborator

[loop:torbscript] release implement: PR #619 opened, head c066bd706c

[loop:torbscript] release implement: PR #619 opened, head c066bd706c4d46b538f595fcfe4c5efab742ae5e
argus closed this issue 2026-10-29 22:28:37 +00:00
Sign in to join this conversation.
No labels
loop
ready
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
torbscript/language#607
No description provided.