@massa-ai/cursor-plugin 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (172) hide show
  1. package/.cursor-plugin/plugin.json +5 -0
  2. package/README.md +87 -0
  3. package/agents/massa-ai-architecture-specialist.md +65 -0
  4. package/agents/massa-ai-audit-specialist.md +81 -0
  5. package/agents/massa-ai-builder.md +67 -0
  6. package/agents/massa-ai-context-curator.md +67 -0
  7. package/agents/massa-ai-documentation-agent.md +65 -0
  8. package/agents/massa-ai-furps-analyst.md +71 -0
  9. package/agents/massa-ai-investigator.md +68 -0
  10. package/agents/massa-ai-mobile-specialist.md +82 -0
  11. package/agents/massa-ai-navigator.md +75 -0
  12. package/agents/massa-ai-plan-critic.md +90 -0
  13. package/agents/massa-ai-planner.md +65 -0
  14. package/agents/massa-ai-requirements-analyst.md +64 -0
  15. package/agents/massa-ai-reviewer.md +66 -0
  16. package/agents/massa-ai-test-engineer.md +66 -0
  17. package/agents/massa-ai-verification-agent.md +65 -0
  18. package/hooks/hooks.json +26 -0
  19. package/hooks/massa-ai-hook +298 -0
  20. package/install.sh +413 -0
  21. package/package.json +30 -0
  22. package/skills/agents/architecture-specialist/SKILL.md +69 -0
  23. package/skills/agents/audit-specialist/SKILL.md +85 -0
  24. package/skills/agents/builder/SKILL.md +71 -0
  25. package/skills/agents/context-curator/SKILL.md +71 -0
  26. package/skills/agents/documentation-agent/SKILL.md +69 -0
  27. package/skills/agents/furps-analyst/SKILL.md +74 -0
  28. package/skills/agents/investigator/SKILL.md +72 -0
  29. package/skills/agents/mobile-specialist/SKILL.md +86 -0
  30. package/skills/agents/navigator/SKILL.md +79 -0
  31. package/skills/agents/plan-critic/SKILL.md +93 -0
  32. package/skills/agents/planner/SKILL.md +69 -0
  33. package/skills/agents/requirements-analyst/SKILL.md +68 -0
  34. package/skills/agents/reviewer/SKILL.md +70 -0
  35. package/skills/agents/test-engineer/SKILL.md +70 -0
  36. package/skills/agents/verification-agent/SKILL.md +69 -0
  37. package/skills/def/SKILL.md +17 -0
  38. package/skills/find/SKILL.md +19 -0
  39. package/skills/graph/SKILL.md +16 -0
  40. package/skills/index/SKILL.md +19 -0
  41. package/skills/map/SKILL.md +24 -0
  42. package/skills/massa-ai/SKILL.md +315 -0
  43. package/skills/massa-ai/personas/README.md +35 -0
  44. package/skills/massa-ai/personas/ai-native-nodejs-cli-architect.md +76 -0
  45. package/skills/massa-ai/personas/catalog.json +157 -0
  46. package/skills/massa-ai/personas/context-skill-harness-engineer-architect.md +74 -0
  47. package/skills/massa-ai/personas/product-manager.md +67 -0
  48. package/skills/massa-ai/personas/senior-mobile-engineer.md +74 -0
  49. package/skills/massa-ai/personas/senior-mobile-qa-automation-engineer.md +75 -0
  50. package/skills/massa-ai/references/adr-authoring.md +189 -0
  51. package/skills/massa-ai/references/agent-orchestration.md +221 -0
  52. package/skills/massa-ai/references/architecture-coupling-lens.md +239 -0
  53. package/skills/massa-ai/references/architecture-deepening-lens.md +136 -0
  54. package/skills/massa-ai/references/architecture-domain-lens.md +186 -0
  55. package/skills/massa-ai/references/architecture-lenses.md +108 -0
  56. package/skills/massa-ai/references/audit-report-io.md +459 -0
  57. package/skills/massa-ai/references/audit-scope.md +103 -0
  58. package/skills/massa-ai/references/code-annotation.md +111 -0
  59. package/skills/massa-ai/references/codebase-investigation.md +96 -0
  60. package/skills/massa-ai/references/context-firewall.md +62 -0
  61. package/skills/massa-ai/references/conversation-feedback.md +104 -0
  62. package/skills/massa-ai/references/debug-diagnosis-loop.md +140 -0
  63. package/skills/massa-ai/references/decision-engine.md +73 -0
  64. package/skills/massa-ai/references/evidence-gate.md +53 -0
  65. package/skills/massa-ai/references/furps/analyst-role.md +49 -0
  66. package/skills/massa-ai/references/furps/checklist.md +92 -0
  67. package/skills/massa-ai/references/furps/intake.md +104 -0
  68. package/skills/massa-ai/references/furps/report-contract.md +140 -0
  69. package/skills/massa-ai/references/hook-enforcement.md +137 -0
  70. package/skills/massa-ai/references/implementation-delivery.md +101 -0
  71. package/skills/massa-ai/references/installation.md +110 -0
  72. package/skills/massa-ai/references/lessons.md +119 -0
  73. package/skills/massa-ai/references/maestro/artifacts-reports.md +69 -0
  74. package/skills/massa-ai/references/maestro/cli-device.md +65 -0
  75. package/skills/massa-ai/references/maestro/cloud.md +67 -0
  76. package/skills/massa-ai/references/maestro/config-env-output.md +76 -0
  77. package/skills/massa-ai/references/maestro/fact-ledger.md +71 -0
  78. package/skills/massa-ai/references/maestro/js-scripting.md +70 -0
  79. package/skills/massa-ai/references/maestro/mcp.md +59 -0
  80. package/skills/massa-ai/references/maestro/patterns.md +96 -0
  81. package/skills/massa-ai/references/maestro/selectors.md +91 -0
  82. package/skills/massa-ai/references/maestro/workspace-execution.md +81 -0
  83. package/skills/massa-ai/references/maestro/yaml-commands.md +203 -0
  84. package/skills/massa-ai/references/maestro.md +47 -0
  85. package/skills/massa-ai/references/mcp-tools.md +296 -0
  86. package/skills/massa-ai/references/memory-policy.md +103 -0
  87. package/skills/massa-ai/references/mobile-context.md +113 -0
  88. package/skills/massa-ai/references/mobile-diagnosis.md +106 -0
  89. package/skills/massa-ai/references/mobile-figma-matcher/ATTRIBUTION.md +5 -0
  90. package/skills/massa-ai/references/mobile-figma-matcher/android-compose.md +13 -0
  91. package/skills/massa-ai/references/mobile-figma-matcher/android-views.md +13 -0
  92. package/skills/massa-ai/references/mobile-figma-matcher/core.md +117 -0
  93. package/skills/massa-ai/references/mobile-figma-matcher/ios-swiftui.md +12 -0
  94. package/skills/massa-ai/references/mobile-figma-matcher/ios-uikit.md +12 -0
  95. package/skills/massa-ai/references/mobile-figma-matcher/kmp-compose-multiplatform.md +14 -0
  96. package/skills/massa-ai/references/mobile-figma-matcher/repository-detection.md +77 -0
  97. package/skills/massa-ai/references/naming-standards.md +47 -0
  98. package/skills/massa-ai/references/pr-task-fix.md +80 -0
  99. package/skills/massa-ai/references/project-context.md +76 -0
  100. package/skills/massa-ai/references/rfc/ATTRIBUTION.md +5 -0
  101. package/skills/massa-ai/references/rfc/discovery-and-sizing.md +120 -0
  102. package/skills/massa-ai/references/rfc/document-contract.md +85 -0
  103. package/skills/massa-ai/references/rfc/quality-and-lifecycle.md +101 -0
  104. package/skills/massa-ai/references/root-cause-scripts.md +97 -0
  105. package/skills/massa-ai/references/spec-driven/artifact-store.md +98 -0
  106. package/skills/massa-ai/references/spec-driven/code-analysis.md +119 -0
  107. package/skills/massa-ai/references/spec-driven/coding-principles.md +80 -0
  108. package/skills/massa-ai/references/spec-driven/context-limits.md +64 -0
  109. package/skills/massa-ai/references/spec-driven/design.md +257 -0
  110. package/skills/massa-ai/references/spec-driven/discuss.md +182 -0
  111. package/skills/massa-ai/references/spec-driven/execute.md +471 -0
  112. package/skills/massa-ai/references/spec-driven/lessons.md +5 -0
  113. package/skills/massa-ai/references/spec-driven/memory.md +214 -0
  114. package/skills/massa-ai/references/spec-driven/specify.md +283 -0
  115. package/skills/massa-ai/references/spec-driven/sub-agents.md +151 -0
  116. package/skills/massa-ai/references/spec-driven/tasks.md +494 -0
  117. package/skills/massa-ai/references/spec-driven/validate.md +397 -0
  118. package/skills/massa-ai/references/subagent-design.md +132 -0
  119. package/skills/massa-ai/references/synapse-policy.md +160 -0
  120. package/skills/massa-ai/references/tdd/calibrated-examples.md +54 -0
  121. package/skills/massa-ai/references/tdd/discovery-and-sizing.md +83 -0
  122. package/skills/massa-ai/references/tdd/document-contract.md +136 -0
  123. package/skills/massa-ai/references/tdd/quality-and-lifecycle.md +83 -0
  124. package/skills/massa-ai/references/the-fool/cognitive-bias-inventory.md +103 -0
  125. package/skills/massa-ai/references/the-fool/dialectic-synthesis.md +170 -0
  126. package/skills/massa-ai/references/the-fool/evidence-audit.md +202 -0
  127. package/skills/massa-ai/references/the-fool/mode-selection-guide.md +113 -0
  128. package/skills/massa-ai/references/the-fool/pre-mortem-analysis.md +200 -0
  129. package/skills/massa-ai/references/the-fool/red-team-adversarial.md +206 -0
  130. package/skills/massa-ai/references/the-fool/socratic-questioning.md +153 -0
  131. package/skills/massa-ai/references/ticket/atlassian-fix.md +130 -0
  132. package/skills/massa-ai/references/ticket/intake-and-sources.md +65 -0
  133. package/skills/massa-ai/references/ticket/templates-and-quality.md +129 -0
  134. package/skills/massa-ai/references/verification-ladder.md +62 -0
  135. package/skills/massa-ai/scripts/lessons.py +590 -0
  136. package/skills/massa-ai/workflows/adr.md +33 -0
  137. package/skills/massa-ai/workflows/architecture/architecture-audit.md +125 -0
  138. package/skills/massa-ai/workflows/architecture/architecture-fix.md +110 -0
  139. package/skills/massa-ai/workflows/bugs/bugs-audit.md +113 -0
  140. package/skills/massa-ai/workflows/bugs/bugs-fix.md +97 -0
  141. package/skills/massa-ai/workflows/code-quality/code-quality-audit.md +154 -0
  142. package/skills/massa-ai/workflows/code-quality/code-quality-fix.md +99 -0
  143. package/skills/massa-ai/workflows/commit.md +61 -0
  144. package/skills/massa-ai/workflows/debug.md +86 -0
  145. package/skills/massa-ai/workflows/design.md +54 -0
  146. package/skills/massa-ai/workflows/exploration.md +119 -0
  147. package/skills/massa-ai/workflows/feature.md +52 -0
  148. package/skills/massa-ai/workflows/general.md +46 -0
  149. package/skills/massa-ai/workflows/implementation/implementation-audit.md +87 -0
  150. package/skills/massa-ai/workflows/implementation/implementation-fix.md +90 -0
  151. package/skills/massa-ai/workflows/long-session.md +44 -0
  152. package/skills/massa-ai/workflows/maestro/maestro-audit.md +56 -0
  153. package/skills/massa-ai/workflows/maestro/maestro-fix.md +74 -0
  154. package/skills/massa-ai/workflows/maestro/maestro.md +68 -0
  155. package/skills/massa-ai/workflows/mobile-figma/mobile-figma-audit.md +68 -0
  156. package/skills/massa-ai/workflows/mobile-figma/mobile-figma-fix.md +74 -0
  157. package/skills/massa-ai/workflows/onboarding.md +23 -0
  158. package/skills/massa-ai/workflows/refactor.md +47 -0
  159. package/skills/massa-ai/workflows/refinement/furps-refinement.md +81 -0
  160. package/skills/massa-ai/workflows/requirements/requirements-audit.md +114 -0
  161. package/skills/massa-ai/workflows/requirements/requirements-fix.md +93 -0
  162. package/skills/massa-ai/workflows/rfc.md +55 -0
  163. package/skills/massa-ai/workflows/security/security-audit.md +113 -0
  164. package/skills/massa-ai/workflows/security/security-fix.md +97 -0
  165. package/skills/massa-ai/workflows/spec-driven.md +217 -0
  166. package/skills/massa-ai/workflows/tdd.md +71 -0
  167. package/skills/massa-ai/workflows/tests/tests-audit.md +114 -0
  168. package/skills/massa-ai/workflows/tests/tests-fix.md +96 -0
  169. package/skills/massa-ai/workflows/the-fool.md +82 -0
  170. package/skills/massa-ai/workflows/ticket.md +42 -0
  171. package/skills/persona-router/SKILL.md +158 -0
  172. package/skills/status/SKILL.md +15 -0
@@ -0,0 +1,186 @@
1
+ # Architecture Domain Lens
2
+
3
+ Use this detail reference when an architecture audit or execution task needs domain boundaries, bounded contexts, subdomain classification, ubiquitous language, or cohesion analysis.
4
+
5
+ ## Contents
6
+
7
+ - Inputs
8
+ - Concept Inventory
9
+ - Language Grouping
10
+ - Subdomain Classification
11
+ - Cohesion Score
12
+ - Rubric Anchors
13
+ - Worked Examples
14
+ - Low-Cohesion Rules
15
+ - Bounded Context Size
16
+ - Findings To Report
17
+ - Integration Pattern Selection
18
+ - Anti-Patterns
19
+ - Guardrails
20
+
21
+ ## Inputs
22
+
23
+ Prefer current project evidence in this order:
24
+
25
+ - `CONTEXT.md`, glossary files, product docs, issue/spec text, and user-provided business context
26
+ - ADRs and architecture docs for accepted boundaries or rejected refactors
27
+ - code names, route names, schemas, tests, fixtures, and use-case names
28
+ - git history only as supporting evidence for change cohesion
29
+
30
+ Code vocabulary is evidence, not truth. Mark conclusions as `suspect` when business intent is inferred only from names.
31
+
32
+ ## Concept Inventory
33
+
34
+ Extract business concepts, not technical plumbing:
35
+
36
+ - Entities: domain models with identity or lifecycle
37
+ - Services: business operations, not generic helpers
38
+ - Use cases: workflows, commands, handlers, jobs, or policies
39
+ - Entry points: routes, resolvers, CLIs, events, screens, or cron jobs that expose business capabilities
40
+ - Contracts: DTOs, events, schemas, published language, or anti-corruption layers
41
+
42
+ Skip pure infrastructure unless it is mixed into core business behavior.
43
+
44
+ ## Language Grouping
45
+
46
+ Group concepts by ubiquitous language:
47
+
48
+ - same terms with the same meaning usually belong together
49
+ - same term with different meanings signals separate bounded contexts
50
+ - different vocabularies in one module signal a possible boundary mismatch
51
+ - generic terms such as `User`, `Account`, `Customer`, `Order`, or `Policy` need local definitions before judging
52
+
53
+ When a domain term is unclear, report the ambiguity instead of inventing a context.
54
+
55
+ ## Subdomain Classification
56
+
57
+ Use this decision rule:
58
+
59
+ ```text
60
+ Competitive advantage or fast-evolving proprietary business logic -> Core
61
+ Business-specific but not differentiating -> Supporting
62
+ Commodity or replaceable capability -> Generic
63
+ ```
64
+
65
+ Static indicators:
66
+
67
+ - Core: complex business rules, frequent domain changes, domain expert language, differentiating algorithms
68
+ - Supporting: CRUD or workflow support with business-specific vocabulary
69
+ - Generic: auth, logging, email, storage, payment gateway plumbing, metrics, generic notification transport
70
+
71
+ Do not classify something as Core just because it is central in the import graph.
72
+
73
+ ## Cohesion Score
74
+
75
+ Use scoring only when enough evidence exists:
76
+
77
+ ```text
78
+ Linguistic cohesion: 0-3
79
+ Usage cohesion: 0-3
80
+ Data cohesion: 0-2
81
+ Change cohesion: 0-2
82
+ Total: 0-10
83
+ ```
84
+
85
+ Interpretation:
86
+
87
+ - 8-10: strong subdomain candidate
88
+ - 5-7: mixed or evolving boundary
89
+ - 0-4: likely wrong grouping or generic utility cluster
90
+
91
+ If git history is absent or too expensive, score change cohesion as `unknown` and explain the gap.
92
+
93
+ ### Rubric Anchors
94
+
95
+ Score each axis against these anchors (highest row that fits):
96
+
97
+ | Axis | 3 | 2 | 1 | 0 |
98
+ |---|---|---|---|---|
99
+ | Linguistic | one shared ubiquitous term, one meaning | mostly shared terms | some shared terms | unrelated vocabularies |
100
+ | Usage | all concepts used in the same use cases | most concepts co-used | partly co-used | rarely co-used |
101
+ | Data | shared identity or aggregate root | shared attributes | read-only overlap | no shared data |
102
+ | Change | always change together | usually change together | sometimes change together | change independently |
103
+
104
+ Data and Change max at 2; Linguistic and Usage max at 3. The anchors make the
105
+ 0-10 total reproducible across auditors.
106
+
107
+ ### Worked Examples
108
+
109
+ - Same term, three contexts: `Patient` in scheduling (availability), billing
110
+ (invoice line), and clinical (record) is three bounded contexts sharing a
111
+ published language — not one `Patient` model. Score linguistic 1 (shared term)
112
+ but usage 0 and change 0; the total flags a boundary, not a single aggregate.
113
+ - Identity-leak fix: an order DTO field `user: User` leaks the auth context's
114
+ model into billing. Replace it with `customerId: CustomerId`, a value object
115
+ owned by billing, so billing no longer depends on `User`'s shape or lifecycle.
116
+
117
+ ## Low-Cohesion Rules
118
+
119
+ A grouping is likely wrong when:
120
+
121
+ 1. Mixed vocabulary: one module speaks two or more ubiquitous languages (for
122
+ example `Invoice` beside `RenderFrame`). Action: split by language.
123
+ 2. Shotgun change: one business change edits many modules that share no domain
124
+ term. Action: find the missing boundary, or merge the co-changing parts.
125
+ 3. God aggregate: one root owns unrelated data (orders + notifications + audit).
126
+ Action: split into per-language aggregates.
127
+ 4. Technical grouping: modules clustered by layer ("all controllers", "all
128
+ repositories") instead of by language. Action: re-group vertically.
129
+ 5. Cross-context ownership: one context reads or writes another's tables or
130
+ invariants directly. Action: expose an owned contract or anti-corruption layer.
131
+
132
+ ## Bounded Context Size
133
+
134
+ | Signal | Meaning |
135
+ |---|---|
136
+ | 1-2 aggregates, single use-case family | too small — likely a layer, not a context; merge or drop |
137
+ | coherent language, 3-8 aggregates, clear integration contract | right-sized |
138
+ | 12+ aggregates or multiple unrelated languages | too large — split along the next language boundary |
139
+
140
+ ## Findings To Report
141
+
142
+ Report domain findings when evidence shows:
143
+
144
+ - mixed vocabularies in one module create change friction
145
+ - one context directly owns another context's model, persistence, or invariants
146
+ - generic/supporting infrastructure is embedded in core business logic
147
+ - a bounded context lacks an explicit integration contract
148
+ - a term has colliding meanings across modules and causes bugs or coordination cost
149
+
150
+ Useful integration directions:
151
+
152
+ - Published Language: documented DTO/event/schema shared across contexts
153
+ - Anti-Corruption Layer: translation when upstream language should not leak downstream
154
+ - Open Host Service: stable public interface for multiple consumers
155
+ - Shared Kernel: shared model only when ownership is explicit and scope is tiny
156
+ - Customer/Supplier or Conformist: acceptable only when dependency direction and ownership are intentional
157
+
158
+ ## Integration Pattern Selection
159
+
160
+ Pick the integration pattern from the need, not from familiarity:
161
+
162
+ | Need | Pattern |
163
+ |---|---|
164
+ | upstream is legacy or external; its language must not leak downstream | Anti-Corruption Layer |
165
+ | upstream publishes a stable API many consumers depend on | Open Host Service / Published Language |
166
+ | many consumers need the same domain occurrence | Domain Events (published language) |
167
+ | two contexts must share a tiny, co-owned slice | Shared Kernel (only with explicit shared ownership) |
168
+ | downstream must conform to an upstream it cannot influence | Conformist |
169
+
170
+ ## Anti-Patterns
171
+
172
+ - ❌ Grouping by technical layer ("all controllers", "all services", "all
173
+ repositories") instead of by ubiquitous language — hides boundaries and
174
+ causes shotgun change.
175
+ - ❌ One bounded context per directory — boundaries follow language, not folders.
176
+ - ❌ Service extraction from language evidence alone — requires change and
177
+ ownership evidence.
178
+ - ❌ Re-litigating an ADR-backed boundary without new concrete friction.
179
+
180
+ ## Guardrails
181
+
182
+ - Do not force one bounded context per directory.
183
+ - Do not propose service extraction from language evidence alone.
184
+ - Do not relitigate ADR-backed boundaries unless current friction is concrete.
185
+ - Do not mutate `CONTEXT.md`, ADRs, or docs during an audit.
186
+ - Prefer move, rename, or contract clarification before new layers.
@@ -0,0 +1,108 @@
1
+ # Architecture Lenses
2
+
3
+ Use this reference for architecture audits, architecture-focused reviews, and refactor planning. It is the shared index and vocabulary guard; load the detail references only when a workflow needs that lens:
4
+
5
+ - `references/architecture-domain-lens.md` for bounded contexts, ubiquitous language, subdomain classification, cohesion, and integration patterns.
6
+ - `references/architecture-coupling-lens.md` for dependency graphs, strength/distance/volatility, dependency direction, and contract health.
7
+ - `references/architecture-deepening-lens.md` for module depth, seams, adapters, deletion tests, locality, and interface-as-test-surface analysis.
8
+
9
+ Do not load all detail references by default. Pick the smallest lens set that can prove or disprove the architecture claim.
10
+
11
+ ## Domain Lens
12
+
13
+ Map problem-space boundaries before proposing structural changes.
14
+
15
+ Load `references/architecture-domain-lens.md` when the audit target includes domain language, bounded contexts, subdomain classification, cross-domain ownership, or integration pattern choices.
16
+
17
+ Check:
18
+
19
+ - subdomains: Core, Supporting, Generic
20
+ - bounded contexts and ubiquitous language
21
+ - concept cohesion: language, usage, data, change
22
+ - cross-domain dependencies
23
+ - generic functionality mixed into core logic
24
+
25
+ Report:
26
+
27
+ - domain or subdomain
28
+ - type: Core, Supporting, or Generic
29
+ - key terms and concepts
30
+ - cohesion score when useful
31
+ - dependency direction
32
+ - boundary or language mismatch
33
+ - simplest corrective direction
34
+ - mark as `suspect` when business intent is inferred only from code names
35
+
36
+ ## Coupling Lens
37
+
38
+ Analyze dependency cost with strength, distance, and volatility.
39
+
40
+ Load `references/architecture-coupling-lens.md` when the audit target includes dependencies, imports, service calls, shared schemas/models, direct persistence access, co-change, or contract leakage.
41
+
42
+ Strength levels:
43
+
44
+ - Intrusive: downstream depends on internals not designed for integration.
45
+ - Functional: sequential, transactional, or duplicated symmetric business rules.
46
+ - Model: upstream exposes internal domain model to downstream.
47
+ - Contract: integration-specific DTO/protocol hides internals.
48
+
49
+ Distance levels:
50
+
51
+ - same function or class
52
+ - same package
53
+ - same module/library
54
+ - different service
55
+ - external system or team
56
+
57
+ Volatility signals:
58
+
59
+ - core business logic
60
+ - frequent git changes or co-change
61
+ - TODO/FIXME clusters
62
+ - evolving API versions
63
+ - fragile tests or recurring regressions
64
+
65
+ Flag highest risk when high strength, high distance, and high volatility combine.
66
+
67
+ Do not flag strong local coupling as bad when the modules change together and locality is better than separation.
68
+
69
+ ## Deepening Lens
70
+
71
+ Use these terms exactly:
72
+
73
+ - Module: anything with an interface and implementation.
74
+ - Interface: everything a caller must know, including invariants, ordering, errors, config, and performance.
75
+ - Seam: where an interface lives.
76
+ - Adapter: concrete thing satisfying an interface at a seam.
77
+ - Depth: leverage at the interface.
78
+ - Leverage: capability callers get per unit of interface learned.
79
+ - Locality: change, bugs, and verification concentrated in one place.
80
+
81
+ Load `references/architecture-deepening-lens.md` when the audit target includes shallow modules, pass-through abstractions, seams, adapters, tests that reach past interfaces, or AI-navigability concerns.
82
+
83
+ Check:
84
+
85
+ - shallow modules whose interface is nearly as complex as implementation
86
+ - pass-through wrappers
87
+ - seams with only one adapter and no actual variation
88
+ - test-only extraction that loses locality
89
+ - concepts split across many files without leverage
90
+
91
+ Use the deletion test:
92
+
93
+ - If deleting a module removes complexity, it was probably shallow.
94
+ - If deleting it spreads complexity across callers, it was probably earning its keep.
95
+
96
+ Only recommend a new seam when variation, dependency direction, external I/O, or test substitution is real.
97
+
98
+ ## Findings Format
99
+
100
+ ```md
101
+ Severity: Critical | High | Medium | Low | Suspect
102
+ Lens: Domain | Coupling | Deepening
103
+ Location: path:line or module
104
+ Evidence: concrete source, dependency, or history signal
105
+ Impact: maintenance, change-risk, testability, or AI-navigability cost
106
+ Recommendation: simplest sufficient action
107
+ Tradeoff: what improves and what gets worse
108
+ ```