Skip to content

📚 docs: sdk: match the docs to the packages that M02 moved - #50

Merged
pascalandy merged 2 commits into
mainfrom
m02/docs
Oct 12, 2026
Merged

pascalandy merged 2 commits into
mainfrom
m02/docs

Conversation

@pascalandy

@pascalandy pascalandy commented Oct 12, 2026 •

Copy link
Copy Markdown
Owner

Problem

The stack moves the shared packages from internal/ to sdk/ (#45), gives the SDK its own catalog, and adds a lint rule that keeps sdk/ and extensions/ away from internal/ but lets tests import it (#46). The code layers already updated the code map, dev-preferences.md, the contract, and the M01 and M02 cards. Three docs still described the old layout:

  • AGENTS.md said to keep sdk/ and extensions/ free of any import from internal/. But sdk/contract/spec_test.go imports internal/specdoc, which the lint rule allows with !$test
  • The glossary said that core and each extension keep their own catalog, leaving out the SDK's catalog in sdk/i18n/locales/
  • D001 still named internal/tui as the package that styles text without Lip Gloss. That package is now sdk/tui. The decisions index allows fixing a decision in place until v0.0.1 ships

Solution

One docs commit on top of the stack, which changes no code:

  • AGENTS.md, Code: the rule covers the code of sdk/ and extensions/, as just lint checks, and names its one exception, a test that imports internal/specdoc to compare the code with the docs
  • glossary.md, Catalog: core, the SDK, and each extension keep their own
  • D001: internal/tui becomes sdk/tui. sdk/tui still styles text with x/ansi and colorprofile, without Lip Gloss

Checked and left unchanged:

  • README.md: it already describes what M01 lets a user do. M02 changes nothing a user sees, because cmd/ncly bundles no extension until skill arrives in M03
  • "Programs that ncly runs" in contract.md and the runner bullet of AGENTS.md: they match sdk/runner (process groups, cleanup and SIGKILL, the subreaper, and a drain limit that counts from the exit)
  • The prose of the cards that are already done, in M00 and M01, which still names internal/ packages: it records what each card built at the time. M02-T1 moves only their Proves lines, so that the plan check finds every proof
  • M01 and M02 are done with every card done, and just test accepts them

A second commit fixes D031 in place: the 2-second drain now counts from the exit that the SIGKILL of cleanup forces, as #44 made contract.md and sdk/runner say. Pascal approved #44's drain rule on 2026-10-12.

just check passes on this layer.

by Opus-5.5 via Claude Code

@pascalandy

Copy link
Copy Markdown
Owner Author

#47 changed, so I restacked the layers above it and reran just check on each layer head, on Linux and on macOS, on 2026-10-12:

PR Branch Head Linux macOS
#40 m01/t1-manifest 80bcdf4 ok ok
#41 m01/t2-dispatch 68c8db1 ok ok
#42 m01/t3-answer-check e13039f ok ok
#43 m01/t4-cancellation 2c51849 ok ok
#44 m01/t5-stubborn 7bf9d6f ok ok
#45 m02/t1-sdk-packages 6737fb2 ok ok
#46 m02/t2-import-boundary ce4e632 ok ok
#47 m02/t3-extension-entry da86277 ok ok
#48 m02/t4-bundled-transport 7c2b713 ok ok
#50 m02/docs 889a53c ok ok

The only change is the report bullet of the SDK section in contract.md, which #47 fixed (see its comment). #48 and this PR changed only by that rebase.

by Opus-5.5 via Claude Code

- Purpose: M02 moved the shared packages to sdk/, gave the SDK its own catalog, and let tests import internal/specdoc, but AGENTS.md, the glossary, and D001 still described the old layout
- Impact: AGENTS.md states the lint rule with its one test exception, the glossary lists the SDK's catalog, and D001 names sdk/tui

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Purpose: #44 changed Output streams in contract.md so that the 2-second drain counts from the exit that the SIGKILL of cleanup forces, and sdk/runner drains until that exit plus the limit, but D031 still stopped the drain at the SIGKILL
- Impact: D031 agrees with the contract and the runner, as Pascal approved on 2026-10-12

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant