Skill: module-bound-check
Use this skill to verify the project's decomposition is sound. Aggregates results from all 5 module-bound validators and reports a single pass/fail with per-validator detail. Run this before pushing a substantial change to a regulated-context project.
Steps
Load the decomposition. Read
programs.yaml(or usedefault_decompositionif absent).Build the spec_module_lookup. Walk all
docs/specs/**/*.mdartefacts; map each declared ID → module (from frontmatter or positional ID prefix).Build the import-edge graph. Walk source files; for each import, determine the from-module and to-module by mapping the file path to declared module paths.
Run each validator.
req_has_module_assignmentcode_annotation_maps_to_modulevisibility_rule_enforcement(mode from team-config: strict for regulated, advisory otherwise)anaemic_context_detectiongranularity_match
Aggregate results. Print a table:
Validator Status Errors Warnings req_has_module_assignment PASS 0 0 code_annotation_maps_to_module FAIL 2 0 visibility_rule_enforcement PASS 0 1 anaemic_context_detection PASS 0 0 granularity_match PASS 0 3Report each error and warning with file path and line number.
Done criteria
- All 5 validators ran.
- Result table printed.
- Exit code: 0 if all pass; 1 if any error; 0 if only warnings (warnings don't block).