Skip to content

Docs: refuse modules that depend on another module - #616

Merged
repeat98 merged 1 commit into
mainfrom
claude/no-module-dependencies
Oct 14, 2026
Merged

repeat98 merged 1 commit into
mainfrom
claude/no-module-dependencies

Conversation

@repeat98

Copy link
Copy Markdown
Owner
  • What was wrong or hard: nothing in the rules said a module may not depend on another. SY DRUM (SY DRUM 0.1.0: a new machine module (needs FM Synth; stacked on the FM Synth 0.1.5 PR) #558) runs on FM Synth's engine, is stacked on the FM Synth PR (FM Synth 0.1.5: scale quantizer on MIDI tracks (the author's 2.13 quantizer) #555) and adds a requires, a "needs FM Synth" selection rule and shared-code changes to make that work. Related to SY DRUM 0.1.0: a new machine module (needs FM Synth; stacked on the FM Synth 0.1.5 PR) #558.
  • What this changes: one rule, stated where authors and agents look: every module builds, installs and works when it is the only module chosen, on the stock OS, the base and the shared SDK. No calling, extending or hooking another module's code, engine, rows, tables or files; no requires; no "needs X" selection rule; no module PR stacked on another's. Shared code goes into the base or shared SDK first (its own owner-reviewed PR), or both features ship as one module. No exception entry covers it.
    • AGENTS.md: a "Refuse a module that depends on another module" bullet beside the protected-work one.
    • docs/module-guides/README.md: the full rule at the top of Cross-compatibility (the bullets link here).
    • docs/ADD_A_MODULE.md (Rules that always apply), CONTRIBUTING.md (what review expects), .github/pull_request_template.md (a checkbox).
    • Platform pieces (sdk/octabam/platform/*) still use requires among themselves; the rule is about modules. Conflicts (two modules that cannot be chosen together, for a named reason) stay allowed.
  • How I checked it: npm run check -- --base origin/main (documentation path): passed, 269 catalogue tests.

🤖 Generated with Claude Code

Every module must build, install and work when it is the only module
chosen. State it in AGENTS.md, the module guides' cross-compatibility
section, ADD_A_MODULE.md, CONTRIBUTING.md and the pull request
template: no requires, no hooks into another module, no "needs X"
selection rule, no stacked module pull requests, no exception.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions github-actions Bot added the documentation Improvements or additions to documentation label Oct 14, 2026
@repeat98
repeat98 merged commit 0d44a95 into main Oct 14, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant