renma 0.16.0 → 0.18.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 (182) hide show
  1. package/CHANGELOG.md +157 -1
  2. package/README.md +219 -748
  3. package/architecture.md +533 -0
  4. package/design.md +469 -0
  5. package/dist/agent-skills.d.ts +1 -1
  6. package/dist/agent-skills.d.ts.map +1 -1
  7. package/dist/agent-skills.js +28 -8
  8. package/dist/agent-skills.js.map +1 -1
  9. package/dist/catalog.d.ts +1 -1
  10. package/dist/catalog.d.ts.map +1 -1
  11. package/dist/catalog.js +120 -12
  12. package/dist/catalog.js.map +1 -1
  13. package/dist/cli-help.d.ts +15 -9
  14. package/dist/cli-help.d.ts.map +1 -1
  15. package/dist/cli-help.js +32 -9
  16. package/dist/cli-help.js.map +1 -1
  17. package/dist/cli.d.ts.map +1 -1
  18. package/dist/cli.js +162 -40
  19. package/dist/cli.js.map +1 -1
  20. package/dist/commands/bom.d.ts +6 -3
  21. package/dist/commands/bom.d.ts.map +1 -1
  22. package/dist/commands/bom.js +27 -7
  23. package/dist/commands/bom.js.map +1 -1
  24. package/dist/commands/catalog.d.ts +1 -1
  25. package/dist/commands/catalog.d.ts.map +1 -1
  26. package/dist/commands/catalog.js +11 -4
  27. package/dist/commands/catalog.js.map +1 -1
  28. package/dist/commands/ci-report.d.ts.map +1 -1
  29. package/dist/commands/ci-report.js +18 -5
  30. package/dist/commands/ci-report.js.map +1 -1
  31. package/dist/commands/diff.js +8 -2
  32. package/dist/commands/diff.js.map +1 -1
  33. package/dist/commands/graph.d.ts +6 -2
  34. package/dist/commands/graph.d.ts.map +1 -1
  35. package/dist/commands/graph.js +30 -14
  36. package/dist/commands/graph.js.map +1 -1
  37. package/dist/commands/inspect.d.ts.map +1 -1
  38. package/dist/commands/inspect.js +2 -0
  39. package/dist/commands/inspect.js.map +1 -1
  40. package/dist/commands/ownership.d.ts +4 -3
  41. package/dist/commands/ownership.d.ts.map +1 -1
  42. package/dist/commands/ownership.js +27 -23
  43. package/dist/commands/ownership.js.map +1 -1
  44. package/dist/commands/readiness.d.ts +2 -1
  45. package/dist/commands/readiness.d.ts.map +1 -1
  46. package/dist/commands/readiness.js +105 -36
  47. package/dist/commands/readiness.js.map +1 -1
  48. package/dist/commands/scaffold.d.ts +3 -0
  49. package/dist/commands/scaffold.d.ts.map +1 -1
  50. package/dist/commands/scaffold.js +28 -2
  51. package/dist/commands/scaffold.js.map +1 -1
  52. package/dist/commands/suggest-metadata.d.ts.map +1 -1
  53. package/dist/commands/suggest-metadata.js +56 -8
  54. package/dist/commands/suggest-metadata.js.map +1 -1
  55. package/dist/commands/suggest-semantic-split.js +3 -3
  56. package/dist/commands/suggest-semantic-split.js.map +1 -1
  57. package/dist/commands/trust-graph.d.ts.map +1 -1
  58. package/dist/commands/trust-graph.js +12 -0
  59. package/dist/commands/trust-graph.js.map +1 -1
  60. package/dist/config.d.ts.map +1 -1
  61. package/dist/config.js +10 -3
  62. package/dist/config.js.map +1 -1
  63. package/dist/dependency-resolution.d.ts +6 -0
  64. package/dist/dependency-resolution.d.ts.map +1 -0
  65. package/dist/dependency-resolution.js +11 -0
  66. package/dist/dependency-resolution.js.map +1 -0
  67. package/dist/diagnostic-ids.d.ts +8 -0
  68. package/dist/diagnostic-ids.d.ts.map +1 -1
  69. package/dist/diagnostic-ids.js +8 -0
  70. package/dist/diagnostic-ids.js.map +1 -1
  71. package/dist/discovery.d.ts +33 -0
  72. package/dist/discovery.d.ts.map +1 -1
  73. package/dist/discovery.js +178 -80
  74. package/dist/discovery.js.map +1 -1
  75. package/dist/markdown.d.ts.map +1 -1
  76. package/dist/markdown.js +15 -0
  77. package/dist/markdown.js.map +1 -1
  78. package/dist/model.d.ts +17 -1
  79. package/dist/model.d.ts.map +1 -1
  80. package/dist/model.js +4 -1
  81. package/dist/model.js.map +1 -1
  82. package/dist/quality-profile.d.ts +91 -0
  83. package/dist/quality-profile.d.ts.map +1 -0
  84. package/dist/quality-profile.js +91 -0
  85. package/dist/quality-profile.js.map +1 -0
  86. package/dist/repeated-context.d.ts.map +1 -1
  87. package/dist/repeated-context.js +38 -83
  88. package/dist/repeated-context.js.map +1 -1
  89. package/dist/repository-boundary.d.ts +30 -0
  90. package/dist/repository-boundary.d.ts.map +1 -0
  91. package/dist/repository-boundary.js +116 -0
  92. package/dist/repository-boundary.js.map +1 -0
  93. package/dist/repository-evidence.d.ts +2 -0
  94. package/dist/repository-evidence.d.ts.map +1 -1
  95. package/dist/repository-evidence.js +6 -4
  96. package/dist/repository-evidence.js.map +1 -1
  97. package/dist/repository-paths.d.ts +19 -2
  98. package/dist/repository-paths.d.ts.map +1 -1
  99. package/dist/repository-paths.js +123 -14
  100. package/dist/repository-paths.js.map +1 -1
  101. package/dist/rules.d.ts +2 -0
  102. package/dist/rules.d.ts.map +1 -1
  103. package/dist/rules.js +322 -256
  104. package/dist/rules.js.map +1 -1
  105. package/dist/scanner.d.ts.map +1 -1
  106. package/dist/scanner.js +5 -1
  107. package/dist/scanner.js.map +1 -1
  108. package/dist/security-diagnostics.d.ts.map +1 -1
  109. package/dist/security-diagnostics.js +95 -30
  110. package/dist/security-diagnostics.js.map +1 -1
  111. package/dist/security-diff.d.ts +5 -2
  112. package/dist/security-diff.d.ts.map +1 -1
  113. package/dist/security-diff.js +20 -4
  114. package/dist/security-diff.js.map +1 -1
  115. package/dist/security-policy-inventory.d.ts +15 -3
  116. package/dist/security-policy-inventory.d.ts.map +1 -1
  117. package/dist/security-policy-inventory.js +123 -26
  118. package/dist/security-policy-inventory.js.map +1 -1
  119. package/dist/security-policy.d.ts +7 -0
  120. package/dist/security-policy.d.ts.map +1 -1
  121. package/dist/security-policy.js +70 -7
  122. package/dist/security-policy.js.map +1 -1
  123. package/dist/security-posture.d.ts.map +1 -1
  124. package/dist/security-posture.js +2 -1
  125. package/dist/security-posture.js.map +1 -1
  126. package/dist/skill-migration.js +2 -0
  127. package/dist/skill-migration.js.map +1 -1
  128. package/dist/static-support.d.ts +13 -0
  129. package/dist/static-support.d.ts.map +1 -0
  130. package/dist/static-support.js +284 -0
  131. package/dist/static-support.js.map +1 -0
  132. package/dist/token-estimator.d.ts +21 -0
  133. package/dist/token-estimator.d.ts.map +1 -0
  134. package/dist/token-estimator.js +84 -0
  135. package/dist/token-estimator.js.map +1 -0
  136. package/dist/trust-graph.d.ts +3 -3
  137. package/dist/trust-graph.d.ts.map +1 -1
  138. package/dist/trust-graph.js +76 -21
  139. package/dist/trust-graph.js.map +1 -1
  140. package/dist/types.d.ts +7 -2
  141. package/dist/types.d.ts.map +1 -1
  142. package/docs/README.md +61 -0
  143. package/docs/advanced-skill-authoring.md +147 -0
  144. package/docs/agent-skills-compatibility.md +508 -0
  145. package/docs/authoring-guide.md +382 -0
  146. package/docs/context-conflict-diagnostics.md +32 -0
  147. package/docs/context-language-diagnostics.md +99 -0
  148. package/docs/context-lens.md +253 -0
  149. package/docs/context-lifecycle-diagnostics.md +55 -0
  150. package/docs/diagnostics.md +406 -0
  151. package/docs/metadata-budget.md +14 -0
  152. package/docs/quality-profile.md +123 -0
  153. package/docs/repository-context-bom.md +172 -0
  154. package/docs/schemas/repository-context-bom-v2.schema.json +648 -0
  155. package/docs/schemas/trust-graph-v2.schema.json +301 -0
  156. package/docs/security-policy.md +354 -0
  157. package/docs/trust-graph.md +47 -0
  158. package/docs/user-manual.md +842 -0
  159. package/examples/context-lens/README.md +101 -0
  160. package/examples/context-lens/contexts/testing/boundary-value-analysis.md +23 -0
  161. package/examples/context-lens/lenses/testing/spec-review-boundary-values.md +29 -0
  162. package/examples/context-lens/lenses/testing/test-design-boundary-values.md +29 -0
  163. package/examples/context-lens/skills/testing/spec-review/SKILL.md +49 -0
  164. package/examples/context-repo/README.md +148 -0
  165. package/examples/context-repo/contexts/domain/payment/idempotency.md +27 -0
  166. package/examples/context-repo/contexts/testing/boundary-value-analysis.md +26 -0
  167. package/examples/context-repo/contexts/testing/negative-testing.md +26 -0
  168. package/examples/context-repo/lenses/testing/spec-review-boundary-values.md +35 -0
  169. package/examples/context-repo/renma.config.json +12 -0
  170. package/examples/context-repo/skills/testing/spec-review/SKILL.md +71 -0
  171. package/examples/context-repo/tools/appium/README.md +14 -0
  172. package/examples/github-actions/renma-ci-report.yml +36 -0
  173. package/examples/interactive-placeholder/README.md +104 -0
  174. package/examples/interactive-placeholder/assets/template.txt +1 -0
  175. package/examples/interactive-placeholder/renma.config.json +6 -0
  176. package/examples/interactive-placeholder/skills/replace-placeholder/SKILL.md +54 -0
  177. package/examples/interactive-placeholder/tools/README.md +48 -0
  178. package/examples/interactive-placeholder/tools/placeholder-demo.mjs +99 -0
  179. package/package.json +10 -1
  180. package/plan-discovery.md +749 -0
  181. package/plan.md +90 -0
  182. package/scripts/verify-package.mjs +104 -0
package/CHANGELOG.md CHANGED
@@ -6,6 +6,160 @@ This project follows the spirit of [Keep a Changelog](https://keepachangelog.com
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [0.18.0] - 2026-07-12
10
+
11
+ ### Added
12
+
13
+ - Added the internal `renma-quality` profile family. The emitted profile
14
+ identifier is derived from the Renma package version as
15
+ `renma-quality@<package version>`. Added canonical threshold documentation
16
+ with units, provenance, rationale, false-positive risks, and
17
+ future-configurability status.
18
+ - Added one deterministic Unicode-aware `estimated_tokens` implementation for
19
+ Skill, content-asset, reuse-candidate, and repeated-context analysis.
20
+ - Added first-class `script` and `asset` artifact kinds under both supported
21
+ Skill roots, including original-byte hashes, sizes, text/binary
22
+ classification, Markdown eligibility, and catalog, graph, Trust Graph, and
23
+ BOM inventory.
24
+ - Added direct, one-index-hop, deep-chain, unreachable, and missing-path static
25
+ support reachability for references, scripts, assets, profiles, and examples.
26
+ - Added `renma scaffold skill --resources references,scripts,assets`; file mode
27
+ creates only selected empty directories, while prompt and JSON modes report
28
+ the selected resource contract without writing files.
29
+ - Added BOM and Trust Graph v2 as the first supported long-term schema
30
+ contracts. Renma 0.18.0 does not provide a v1 compatibility mode; the
31
+ earlier experimental v1 surface was removed before broader adoption.
32
+ - Added normalized ownership provenance and static local-resource relationship
33
+ edges across catalog, graph, readiness, BOM, and Trust Graph output.
34
+
35
+ ### Changed
36
+
37
+ - Replaced the thin-router model with focused workflow entrypoints. Ordered
38
+ procedures, completion criteria, and short command examples are valid in
39
+ `SKILL.md`; progressive disclosure is reviewed by semantic destination.
40
+ - Changed Skill body advisories to low above 2,000 and medium above 5,000
41
+ estimated tokens. Changed content advisories to Context 4,000, Reference
42
+ 5,000, Profile 2,000, and Example 2,500 estimated tokens.
43
+ - Changed metadata advisories to 48 frontmatter lines, 4,096 frontmatter
44
+ characters, and 256 characters per prose-like list item, with practical
45
+ exemptions for IDs, repository paths, and URLs.
46
+ - Changed reusable Context eligibility to 60 lines or 800 estimated tokens plus
47
+ four reusable signals. Changed shared-reference eligibility to 80 lines or
48
+ 1,200 estimated tokens plus three reusable headings and four reusable
49
+ phrases. Ordinary workflow headings and constraint words do not qualify.
50
+ - Changed repeated headings to require three files and token shingles to 40
51
+ estimated tokens in three files. Exact-section, exact-code, and per-category
52
+ caps retain their established defaults.
53
+ - Changed Readiness to `workflow.skills_focused`, removed the five-point
54
+ existence penalty for deprecated/archived assets, and reduced subjective
55
+ workflow advisory weights while preserving blocking graph and diagnostic
56
+ failures.
57
+ - Deprecated `metadata.renma.when-to-use` and
58
+ `metadata.renma.when-not-to-use` for new Skill authoring. They remain
59
+ recognized for governance and migration preservation; portable
60
+ `description` is the Skill discovery source of truth.
61
+
62
+ ### Fixed
63
+
64
+ - Stopped overcounting Japanese one character at a time in quality rules and
65
+ undercounting unspaced Japanese as one token in repeated-context analysis.
66
+ - Stopped decoding images, PDFs, fonts, and other opaque assets as UTF-8
67
+ Markdown or exposing binary bytes in diagnostic snippets.
68
+ - Stopped non-Markdown text scripts and assets from contributing frontmatter,
69
+ headings, links, fences, or repeated-context evidence.
70
+ - Fixed nearest-Skill support ownership, nested Skill boundaries, explicit path
71
+ reachability, extensionless and spaced paths, and oversized-file existence
72
+ evidence.
73
+ - Prevented script and asset bytes from declaring policy. Skill-local scripts
74
+ and assets inherit the nearest unambiguous Skill policy; text scripts may be
75
+ scanned under it, while binary files and ordinary output assets stay opaque.
76
+ - Rejected files reached through leaf or ancestor symbolic links, including
77
+ Skill-local directory links that point elsewhere inside or outside the
78
+ repository.
79
+ - Scanned non-Markdown scripts from line 1 even when they begin with `---`, and
80
+ added explicit local, inherited, effective, and missing-effective policy
81
+ inventory provenance.
82
+ - Added balanced-parenthesis Markdown destination parsing and single-pass
83
+ decoding for encoded filename characters.
84
+ - Stopped treating a command, Procedure/Steps/Setup headings, ordered workflow
85
+ wording, or 450/700-word counts as evidence of a bad Skill.
86
+ - Stopped recommending Context Assets as the default destination for
87
+ Skill-specific procedures, variants, edge cases, scripts, and output
88
+ resources.
89
+ - Stopped repeated links to the same specification or source from producing
90
+ maintenance findings by default.
91
+
92
+ ### Removed
93
+
94
+ - Removed default emission of `QUAL-SHORT-DESCRIPTION`,
95
+ `LAYOUT-SKILL-NOT-THIN`, `LAYOUT-SKILL-EXECUTABLE-COMMAND`, and
96
+ `MAINT-REPEATED-LINK`.
97
+ - Removed the Readiness `layout.skills_thin` contract and the unconditional
98
+ lifecycle-status penalty.
99
+
100
+ ### Compatibility
101
+
102
+ - No public quality-threshold configuration was added to
103
+ `renma.config.json`. The versioned internal profile is shaped for possible
104
+ later overrides after usage evidence.
105
+ - `ArtifactKind`, catalog entries, graph nodes, Trust Graph asset properties,
106
+ and Repository Context BOM assets add `script`/`asset` and binary-safety
107
+ evidence. Consumers that exhaustively match kinds or exact-normalize these
108
+ schemas must update for 0.18.0.
109
+ - Scaffold file, prompt, and JSON contracts add selected resource directories;
110
+ existing invocations without `--resources` create no extra directories.
111
+ - Agent Skills specification errors remain separate from Renma advisories:
112
+ `description` is required, a string, and 1-1,024 characters; 150 characters
113
+ is not an Agent Skills minimum.
114
+
115
+ ### Migration
116
+
117
+ - `LAYOUT-SKILL-NOT-THIN` -> `QUAL-SKILL-MIXED-RESPONSIBILITY` when reusable
118
+ knowledge evidence exists, otherwise no finding.
119
+ - `LAYOUT-SKILL-EXECUTABLE-COMMAND` -> no layout finding; security,
120
+ unresolved-helper, path-escape, and large-inline-implementation checks remain.
121
+ - `QUAL-SHORT-DESCRIPTION` -> Agent Skills description validity plus
122
+ `RN-SKILL-DESCRIPTION-MISSING-CAPABILITY`,
123
+ `RN-SKILL-DESCRIPTION-MISSING-USAGE-BOUNDARY`, and
124
+ `RN-SKILL-DESCRIPTION-OMITS-SELECTION-BOUNDARY` where applicable.
125
+ - `MAINT-REPEATED-LINK` -> no maintenance finding by default.
126
+ - Readiness `layout.skills_thin` -> `workflow.skills_focused`.
127
+ - Rebaseline exact catalog, graph, Trust Graph, BOM, Readiness, scaffold JSON,
128
+ and package-content fixtures against the 0.18.0 schemas before release.
129
+
130
+ ## [0.17.0] - 2026-07-11
131
+
132
+ ### Added
133
+
134
+ - Added platform-neutral, Skill-specific next steps to scaffold file and prompt output, including the authoring-review, scan, fix, rerun, and human-review loop.
135
+ - Added Skill-specific `suggest-metadata` prompt guidance that separates whole-Skill authoring review from metadata or one-way migration suggestions and keeps blocked migrations conservative.
136
+ - Added a documentation index with reading paths for workflows, format contracts, governance references, product design, architecture, and roadmap material.
137
+ - Added the interactive-placeholder onboarding example and package-content verification for version-matched README documentation and examples.
138
+
139
+ ### Changed
140
+
141
+ - Clarified that platform-native guidance owns general Skill design while Renma complements it with repository-specific governance and validation.
142
+ - Consolidated the README around product identity, boundaries, primary workflows, quick start, command orientation, a canonical example, and documentation navigation.
143
+ - Made the authoring guide the canonical new-Skill and existing-Skill workflow, including safe generator boundaries and an optional Codex `skill-creator` example.
144
+ - Reworked the user manual and compatibility guide around actual CLI behavior, review responsibilities, scan/fix/rerun validation, and blocked migration recovery.
145
+ - Rewrote the roadmap around the shipped 0.16.0 baseline, the 0.17.0 usability release, and proposed 0.18.0 graph-based Skill discovery; removed stale release sequencing from architecture and design.
146
+ - Made canonical nested Skills under both `skills/**` and `.agents/skills/**` participate consistently in Readiness, thin-Skill, graph, support, and parent-Skill checks.
147
+ - Allowed valid Skill-local Agent Skills support directories without path-only disallowed-layout findings; reusable Context and shared-helper promotion remains evidence-based and human-reviewed.
148
+ - Normalized expected CLI target and option errors, enforced command-specific options and positional arity, and rejected partial positive-integer values.
149
+ - Retained `layout.tool_namespace` and `layout.workflow_aliases` as validated compatibility-only input; they no longer force path-only migration of valid Skill-local support.
150
+
151
+ ### Fixed
152
+
153
+ - Corrected Readiness false-positive `ready` results for nested Skills with missing workflow guidance.
154
+ - Updated the Context Lens example to current 0.17.0 quality with conservative local policy, complete workflow guidance, and clean scan/readiness output.
155
+ - Included README-linked architecture, design, roadmap, documentation, and examples in the npm package.
156
+ - Stopped treating documented Skill-local support paths as stale and resolved `scripts/**` helper commands against an unambiguous owning Skill using repository snapshot evidence.
157
+
158
+ ### Compatibility
159
+
160
+ - Preserved scaffold and `suggest-metadata` JSON field shapes, stdout-only prompt behavior, and non-editing metadata suggestions.
161
+ - Kept Skill-specific guidance out of Context Asset and Context Lens scaffold and suggestion output.
162
+
9
163
  ## [0.16.0] - 2026-07-11
10
164
 
11
165
  ### Added
@@ -310,7 +464,9 @@ Tag-only release. No GitHub Release entry was published for this version.
310
464
  - Added metadata governance, advisory diagnostics, local path checks, and semantic split suggestions.
311
465
  - Added the initial project documentation, architecture notes, package metadata, tests, and license.
312
466
 
313
- [Unreleased]: https://github.com/KazuCocoa/renma/compare/v0.16.0...HEAD
467
+ [Unreleased]: https://github.com/KazuCocoa/renma/compare/v0.18.0...HEAD
468
+ [0.18.0]: https://github.com/KazuCocoa/renma/compare/v0.17.0...v0.18.0
469
+ [0.17.0]: https://github.com/KazuCocoa/renma/compare/v0.16.0...v0.17.0
314
470
  [0.16.0]: https://github.com/KazuCocoa/renma/compare/v0.15.2...v0.16.0
315
471
  [0.15.2]: https://github.com/KazuCocoa/renma/compare/v0.15.1...v0.15.2
316
472
  [0.15.1]: https://github.com/KazuCocoa/renma/compare/v0.15.0...v0.15.1