Repository navigation
node-repo-module-pack: a floor-only module bundle is built but not tested - #2690
Merged
Merged
Conversation
…sted The always-modules floor (#2685) keeps the AI engine and the collaboration module in every narrowed selection so the caller's gates can compose them — but building them is all the gates need. Running the AI engine's suite (~13 min, 1,600 tests) on every PR that never touched AI answers a question nobody asked; the maintainer's directive (2026-08-29): the AI test suite is executed once, and only when AI is touched. The selection now marks each entry test=true/false — false exactly when the entry is in the selection only because of the floor; a diff that reaches it and every full run keep test=true — and the pack job's test step is conditioned on it. Three self-test cases pin the flag. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01ETgRRMRVzYMg1WU4pMywed
Contributor
There was a problem hiding this comment.
Pull request overview
This PR refines the node-repo module packing workflow so that modules pulled into a narrowed selection only due to an “always-modules” floor are still built (so downstream gates can compose them), but their test suites are skipped unless the diff actually reaches them (or the run is a full run).
Changes:
- Extend
.github/scripts/node-repo-scope.pyto emittest: true|falseper selected module entry, withfalsereserved for “floor-only” selections. - Condition the “Run the module’s tests” step in
.github/workflows/node-repo-module-pack.ymlonmatrix.entry.test != falseso floor-only modules don’t run their suites on narrowed PR runs. - Add
--self-testcases covering floor-only vs diff-reachable vs full-run behavior.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| .github/workflows/node-repo-module-pack.yml | Skips module test execution when the selection marks the module as floor-only (test == false). |
| .github/scripts/node-repo-scope.py | Annotates selected module entries with test so workflows can distinguish floor-only modules from diff-reachable ones; adds self-tests. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Contributor
Contributor
Contributor
Contributor
Contributor
Contributor
Contributor
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.
Follow-up to #2685. The
always-modulesfloor keeps the AI engine and the collaboration module in every narrowed selection so a caller's gates can compose them — but building them is all the gates need. Running the AI engine's suite (~13 min, 1,600 tests, measured on Plugins run 33267448431) on every PR that never touched AI answers a question nobody asked. Maintainer directive (2026-08-29): "the ai test suite should be executed once. obviously. And only when we touch AI."node-repo-scope.py: each selected module entry now carriestest: true|false—falseexactly when the entry is in the selection only because of the floor; a diff that reaches it, and every full run, keeptrue. Three--self-testcases added (56 green).node-repo-module-pack.yml: the "Run the module's tests" step is conditioned onmatrix.entry.test != false.The Plugins half (dropping the second execution of
MeshWeaver.AI.Testfrom its portal-hosts job) is a separate one-line PR there.🤖 Generated with Claude Code
https://claude.ai/code/session_01ETgRRMRVzYMg1WU4pMywed