module-bound-check

Run all 5 decomposition validators (req-has-module, code-annotation-maps-to-module, visibility-rule-enforcement, anaemic-context-detection, granularity-match) on the project, reporting violations.

SKILL.md

GitHub
<!-- implements: DES-assured-skills-004 -->

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

  1. Load the decomposition. Read programs.yaml (or use default_decomposition if absent).

  2. Build the spec_module_lookup. Walk all docs/specs/**/*.md artefacts; map each declared ID → module (from frontmatter or positional ID prefix).

  3. 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.

  4. Run each validator.

    • req_has_module_assignment
    • code_annotation_maps_to_module
    • visibility_rule_enforcement (mode from team-config: strict for regulated, advisory otherwise)
    • anaemic_context_detection
    • granularity_match
  5. 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       3
    
  6. Report 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).