Repository navigation
Every program has a generated reference, and the build generates it - #905
Merged
Merged
Conversation
devlore-docs walked writ and lore; star and devlore-test, in scope for the convention since #743 and #776, had no reference. Star's root lived in package main, which nothing can import, so the generator could not build its tree the way it builds the others. Star's root is now an importable package, cmd/star/star, with NewRootCmd like writ's and lore's: the key and docs commands, the install hooks and the Starlark command registration move there, and main keeps main and run. The package that was cmd/star/star -- the extension host: Loader, Registry, Application, Command, Extension -- takes the name its types say, cmd/star/extension; every importer had been aliasing it starruntime for want of one. The embed of the bundled extensions becomes its own package beside the .star trees, bundled.FS, since an embed can only name paths under its package's directory. devlore-docs walks the four roots, star's with its extensions, and a test names the four so a fifth or a dropped one fails there rather than on the site. make build runs the generator after the tools, ruled 2026-09-21: a checkout that built has a current docs/cli. Section 12 of the specification says so. Closes #787
TestRun_EveryProgramHasATree asserted docs/cli/star/gh/issues/report.md, which exists where noblefactor-ops is deployed -- star's root loads the machine's deployed extensions beside the bundled ones -- and nowhere in CI. lint go is compiled into the binary, so its page is the proof that the tree carries the extensions.
This was referenced Sep 23, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Lane 16 of #887 — the last; the command line epic closes
with it.
cmd/star/star(package star,NewRootCmd) besidecmd/writ/writandcmd/lore/lore;main.gokeepsmainandrun. The extension host that held that name takes the name itstypes say,
cmd/star/extension(Loader,Registry,Application,Command,Extension); the bundledextensions' embed is its own package,
bundled.FS. Ruled 2026-09-21.(#787) —
devlore-docswalkswrit,lore,star(extensions included) and
devlore-test; a test names the four and asserts star's tree carries an extensioncommand's page.
make buildruns the generator after the tools, so a checkout that built has acurrent
docs/cli/;docsstays the standalone targetdocs-publish.yamlcalls. §12 says so.Test plan
make checkgreen;make test-scenariogreenmake buildleavesdocs/cli/{writ,lore,star,devlore-test}; installedstar --helpmatches its pagedanoble-ud24-1.local(linux/arm64), snapshotted first: self install;repo unset/setby URL and by path,git-named clones;
deploy common noblefactor-ops166 files understopand underreplace;upgrade0danoble-wd11-3.local(windows/arm64), snapshotted first: the samereposteps; deploy under--allow-dirty(that machine's personal checkout is dirty):
stoprefuses one occupant,replacedeploys 66 links;upgrade0Time
Computed by the algorithm of noblefactor-ops#188 at merge.
https://claude.ai/code/session_01SqQVFZz7AdiLZkGoAcUqRW