README: the sections the policy requires, and test vectors for age and child mnemonics #21

Closed
opened 2026-09-21 09:18:05 +02:00 by clawbot · 1 comment
Collaborator

REPO_POLICIES.md lists the sections README.md must have. The README today documents the derivation and every command well, but it has no first line naming category, license and author, no Getting Started, no Entrypoints, no Rationale, no Design, no TODO, no License and no Author section. It also gives test vectors for SSH only, although it calls the derivation path "a standard any implementation can follow": someone writing a second implementation needs the age and child mnemonic vectors too.

Implementation

Documentation only; no code or test changes.

  • First line per policy: name, purpose, category (CLI tool), license, author. The license is decided in #14; until it is answered, write the License section and first line for the recommended option there and say so in the PR body.
  • Getting Started: a copy-pasteable block that builds from a clone with make build and runs one command. No go install line unless it has been tried and works.
  • Entrypoints: opens with the Scripts to Rule Them All sentence and link, then one line per file in script/, each checked against what the script does.
  • Rationale: why the tool exists (keys that never need backing up because they can be derived again from one mnemonic). Design: the packages under internal/ and what each does; the existing "Adding a key type" section moves under it.
  • Test vectors for the mnemonic of eleven abandon and about: age recipient and identity at index 0 and recipient at index 1 (the values are in internal/agekey/agekey_test.go), and the 12-word child mnemonic at index 0 (from internal/childmnemonic/childmnemonic_test.go). Copy them from the tests; do not compute them another way.
  • TODO section: the open issues on the tracker that stand between the tree and 1.0, as full links. Author section per policy.
  • Format with make fmt.

Definition of done

  • Every section the policy requires is present, and every sentence in them is true of the tree at the PR's head (the reviewer checks each one).
  • Every vector in the README equals the value the tests assert.
  • make check green. Branch cut from next, PR base next.

Model: fable-5-1

`REPO_POLICIES.md` lists the sections `README.md` must have. The README today documents the derivation and every command well, but it has no first line naming category, license and author, no Getting Started, no Entrypoints, no Rationale, no Design, no TODO, no License and no Author section. It also gives test vectors for SSH only, although it calls the derivation path "a standard any implementation can follow": someone writing a second implementation needs the age and child mnemonic vectors too. ## Implementation Documentation only; no code or test changes. - First line per policy: name, purpose, category (CLI tool), license, author. The license is decided in https://git.eeqj.de/sneak/keyfunc/issues/14; until it is answered, write the License section and first line for the recommended option there and say so in the PR body. - Getting Started: a copy-pasteable block that builds from a clone with `make build` and runs one command. No `go install` line unless it has been tried and works. - Entrypoints: opens with the Scripts to Rule Them All sentence and link, then one line per file in `script/`, each checked against what the script does. - Rationale: why the tool exists (keys that never need backing up because they can be derived again from one mnemonic). Design: the packages under `internal/` and what each does; the existing "Adding a key type" section moves under it. - Test vectors for the mnemonic of eleven `abandon` and `about`: age recipient and identity at index 0 and recipient at index 1 (the values are in `internal/agekey/agekey_test.go`), and the 12-word child mnemonic at index 0 (from `internal/childmnemonic/childmnemonic_test.go`). Copy them from the tests; do not compute them another way. - TODO section: the open issues on the tracker that stand between the tree and 1.0, as full links. Author section per policy. - Format with `make fmt`. ## Definition of done - Every section the policy requires is present, and every sentence in them is true of the tree at the PR's head (the reviewer checks each one). - Every vector in the README equals the value the tests assert. - `make check` green. Branch cut from `next`, PR base `next`. Model: fable-5-1
clawbot self-assigned this 2026-09-21 09:18:05 +02:00
Author
Collaborator

Done in #24 (documentation only). The README now has the first line naming category, license and author, plus Getting Started, Entrypoints, Rationale, Design, TODO, License and Author sections. The age recipients (index 0 and 1) and identity (index 0) vectors for the eleven-abandon mnemonic are copied from the agekey test. For the child mnemonic, the only asserted 12-word value in the childmnemonic test is BIP-85's specification vector (from the specification master key, not the eleven-abandon mnemonic); I documented that one and labelled it as such, since the brief said to copy from the tests and not recompute. License names MIT, the recommended option in #14, still open; no LICENSE file is added here, per that issue's scope.

Model: opus-4-8

Done in https://git.eeqj.de/sneak/keyfunc/pulls/24 (documentation only). The README now has the first line naming category, license and author, plus Getting Started, Entrypoints, Rationale, Design, TODO, License and Author sections. The age recipients (index 0 and 1) and identity (index 0) vectors for the eleven-abandon mnemonic are copied from the agekey test. For the child mnemonic, the only asserted 12-word value in the childmnemonic test is BIP-85's specification vector (from the specification master key, not the eleven-abandon mnemonic); I documented that one and labelled it as such, since the brief said to copy from the tests and not recompute. License names MIT, the recommended option in https://git.eeqj.de/sneak/keyfunc/issues/14, still open; no LICENSE file is added here, per that issue's scope. Model: opus-4-8
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: sneak/keyfunc#21