docguard-cli 0.23.0__tar.gz → 0.25.0__tar.gz

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 (403) hide show
  1. {docguard_cli-0.23.0/extensions/spec-kit-docguard → docguard_cli-0.25.0/.agent}/skills/docguard-fix/SKILL.md +2 -2
  2. {docguard_cli-0.23.0/extensions/spec-kit-docguard → docguard_cli-0.25.0/.agent}/skills/docguard-guard/SKILL.md +2 -2
  3. {docguard_cli-0.23.0/extensions/spec-kit-docguard → docguard_cli-0.25.0/.agent}/skills/docguard-review/SKILL.md +2 -2
  4. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/skills/docguard-score/SKILL.md +2 -2
  5. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/skills/docguard-sync/SKILL.md +2 -1
  6. docguard_cli-0.25.0/.claude/rules/openwolf.md +15 -0
  7. docguard_cli-0.25.0/.claude/settings.json +72 -0
  8. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.docguardignore +0 -3
  9. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.github/scripts/patch-catalog.py +2 -2
  10. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.github/workflows/ci.yml +16 -0
  11. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.github/workflows/release.yml +17 -10
  12. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.github/workflows/sync-speckit-catalog.yml +1 -1
  13. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.gitignore +1 -1
  14. docguard_cli-0.25.0/.jules-setup.sh +41 -0
  15. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.npmignore +0 -1
  16. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.specify/memory/constitution.md +4 -2
  17. docguard_cli-0.25.0/.wolf/OPENWOLF.md +135 -0
  18. docguard_cli-0.25.0/.wolf/anatomy.md +922 -0
  19. docguard_cli-0.25.0/.wolf/buglog.json +465 -0
  20. docguard_cli-0.25.0/.wolf/cerebrum.md +26 -0
  21. docguard_cli-0.25.0/.wolf/config.json +73 -0
  22. docguard_cli-0.25.0/.wolf/cron-manifest.json +97 -0
  23. docguard_cli-0.25.0/.wolf/cron-state.json +62 -0
  24. docguard_cli-0.25.0/.wolf/daemon.log +156 -0
  25. docguard_cli-0.25.0/.wolf/designqc-report.json +6 -0
  26. docguard_cli-0.25.0/.wolf/hooks/_session.json +12 -0
  27. docguard_cli-0.25.0/.wolf/hooks/_wrap_up_nudged +1 -0
  28. docguard_cli-0.25.0/.wolf/hooks/package.json +3 -0
  29. docguard_cli-0.25.0/.wolf/hooks/post-read.js +69 -0
  30. docguard_cli-0.25.0/.wolf/hooks/post-write.js +503 -0
  31. docguard_cli-0.25.0/.wolf/hooks/pre-read.js +80 -0
  32. docguard_cli-0.25.0/.wolf/hooks/pre-write.js +121 -0
  33. docguard_cli-0.25.0/.wolf/hooks/session-start.js +77 -0
  34. docguard_cli-0.25.0/.wolf/hooks/shared.js +614 -0
  35. docguard_cli-0.25.0/.wolf/hooks/stop.js +147 -0
  36. docguard_cli-0.25.0/.wolf/identity.md +9 -0
  37. docguard_cli-0.25.0/.wolf/memory.md +175 -0
  38. docguard_cli-0.25.0/.wolf/reframe-frameworks.md +597 -0
  39. docguard_cli-0.25.0/.wolf/suggestions.json +4 -0
  40. docguard_cli-0.25.0/.wolf/token-ledger.json +2654 -0
  41. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/AGENTS.md +26 -23
  42. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/CHANGELOG.md +285 -0
  43. docguard_cli-0.25.0/CLAUDE.md +5 -0
  44. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/CONTRIBUTING.md +1 -2
  45. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/PKG-INFO +2 -2
  46. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/README.md +1 -1
  47. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/ROADMAP.md +9 -8
  48. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/SECURITY.md +1 -1
  49. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/action.yml +65 -24
  50. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/diff.mjs +1 -1
  51. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/explain.mjs +178 -17
  52. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/fix.mjs +17 -2
  53. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/generate.mjs +69 -3
  54. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/guard.mjs +86 -11
  55. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/hooks.mjs +12 -7
  56. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/init.mjs +24 -8
  57. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/score.mjs +147 -61
  58. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/setup.mjs +2 -2
  59. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/sync.mjs +6 -0
  60. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/trace.mjs +3 -3
  61. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/upgrade.mjs +61 -13
  62. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/config.mjs +18 -1
  63. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/docguard.mjs +156 -2
  64. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/ensure-skills.mjs +24 -26
  65. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/scanners/api-doc.mjs +17 -3
  66. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/scanners/doc-tools.mjs +32 -15
  67. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/scanners/frontend.mjs +24 -8
  68. docguard_cli-0.25.0/cli/scanners/js-ast.mjs +432 -0
  69. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/scanners/memory-plan.mjs +1 -1
  70. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/scanners/project-type.mjs +11 -4
  71. docguard_cli-0.25.0/cli/scanners/py-ast.mjs +213 -0
  72. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/scanners/routes.mjs +194 -69
  73. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/scanners/schemas.mjs +97 -51
  74. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/shared-git.mjs +0 -0
  75. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/shared-ignore.mjs +23 -2
  76. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/shared-source.mjs +59 -2
  77. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/shared-trace-patterns.mjs +13 -0
  78. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/shared.mjs +92 -1
  79. docguard_cli-0.25.0/cli/validator-markers.mjs +91 -0
  80. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/api-surface.mjs +37 -3
  81. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/canonical-sync.mjs +22 -19
  82. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/doc-quality.mjs +2 -42
  83. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/docs-coverage.mjs +13 -0
  84. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/docs-sync.mjs +4 -3
  85. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/drift.mjs +3 -2
  86. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/freshness.mjs +47 -15
  87. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/generated-staleness.mjs +16 -1
  88. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/metadata-sync.mjs +21 -11
  89. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/metrics-consistency.mjs +45 -17
  90. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/security.mjs +13 -5
  91. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/structure.mjs +6 -5
  92. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/surface-sync.mjs +7 -5
  93. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/test-spec.mjs +76 -51
  94. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/todo-tracking.mjs +4 -2
  95. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/traceability.mjs +11 -3
  96. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/writers/sections.mjs +32 -19
  97. docguard_cli-0.25.0/commands/docguard.fix.md +81 -0
  98. docguard_cli-0.25.0/commands/docguard.guard.md +61 -0
  99. docguard_cli-0.25.0/commands/docguard.review.md +53 -0
  100. docguard_cli-0.25.0/commands/docguard.score.md +61 -0
  101. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/docguard_cli/wrapper.py +22 -12
  102. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/docs/commands.md +1 -1
  103. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/docs/configuration.md +11 -0
  104. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/docs/faq.md +1 -1
  105. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/docs-canonical/ARCHITECTURE.md +9 -9
  106. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/docs-canonical/DATA-MODEL.md +2 -2
  107. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/docs-canonical/ENVIRONMENT.md +12 -7
  108. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/docs-canonical/SECURITY.md +12 -12
  109. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/docs-canonical/TEST-SPEC.md +3 -3
  110. docguard_cli-0.25.0/examples/03-spec-kit-project/tasks.json +8 -0
  111. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/README.md +1 -1
  112. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/extension.yml +2 -2
  113. {docguard_cli-0.23.0/.agent → docguard_cli-0.25.0/extensions/spec-kit-docguard}/skills/docguard-fix/SKILL.md +2 -2
  114. {docguard_cli-0.23.0/.agent → docguard_cli-0.25.0/extensions/spec-kit-docguard}/skills/docguard-guard/SKILL.md +2 -2
  115. {docguard_cli-0.23.0/.agent → docguard_cli-0.25.0/extensions/spec-kit-docguard}/skills/docguard-review/SKILL.md +2 -2
  116. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/skills/docguard-score/SKILL.md +2 -2
  117. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/skills/docguard-sync/SKILL.md +2 -1
  118. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/templates/github-workflows/docguard-autofix.yml +3 -2
  119. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/templates/github-workflows/docguard-guard.yml +2 -2
  120. docguard_cli-0.25.0/package-lock.json +68 -0
  121. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/package.json +5 -3
  122. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/pyproject.toml +1 -1
  123. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/api-doc.test.mjs +24 -0
  124. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/canonical-sync.test.mjs +14 -4
  125. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/changed-only.test.mjs +33 -1
  126. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/commands.test.mjs +137 -0
  127. docguard_cli-0.25.0/tests/doc-section-synonyms.test.mjs +52 -0
  128. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/docguardignore.test.mjs +42 -0
  129. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/docs-coverage.test.mjs +0 -0
  130. docguard_cli-0.25.0/tests/ensure-skills-idempotent.test.mjs +89 -0
  131. docguard_cli-0.25.0/tests/env-schema-detection.test.mjs +77 -0
  132. docguard_cli-0.25.0/tests/explain-coverage.test.mjs +101 -0
  133. docguard_cli-0.25.0/tests/field-report-2-cli.test.mjs +147 -0
  134. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/freshness.test.mjs +61 -1
  135. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/generated-staleness.test.mjs +30 -0
  136. docguard_cli-0.25.0/tests/js-ast.test.mjs +224 -0
  137. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/metadata-sync.test.mjs +22 -4
  138. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/metrics-consistency.test.mjs +38 -0
  139. docguard_cli-0.25.0/tests/openapi-parse-honesty.test.mjs +69 -0
  140. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/project-type.test.mjs +21 -0
  141. docguard_cli-0.25.0/tests/py-ast.test.mjs +99 -0
  142. docguard_cli-0.25.0/tests/routes-express-mounts.test.mjs +85 -0
  143. docguard_cli-0.25.0/tests/routes-fastify.test.mjs +40 -0
  144. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/routes-nextjs-app-router.test.mjs +26 -0
  145. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/schemas.test.mjs +18 -0
  146. docguard_cli-0.25.0/tests/score-suggestions.test.mjs +94 -0
  147. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/sections.test.mjs +46 -0
  148. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/security.test.mjs +20 -0
  149. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/severity.test.mjs +60 -0
  150. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/shared-git.test.mjs +17 -0
  151. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/shared-source.test.mjs +32 -0
  152. docguard_cli-0.25.0/tests/starter-scaffold.test.mjs +50 -0
  153. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/sync.test.mjs +16 -0
  154. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/test-spec.test.mjs +66 -0
  155. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/traceability.test.mjs +20 -0
  156. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/upgrade.test.mjs +47 -1
  157. docguard_cli-0.25.0/tests/validator-markers.test.mjs +108 -0
  158. docguard_cli-0.23.0/vscode-extension/.vscodeignore +0 -4
  159. docguard_cli-0.23.0/vscode-extension/LICENSE +0 -21
  160. docguard_cli-0.23.0/vscode-extension/README.md +0 -49
  161. docguard_cli-0.23.0/vscode-extension/extension.js +0 -530
  162. docguard_cli-0.23.0/vscode-extension/icon.png +0 -0
  163. docguard_cli-0.23.0/vscode-extension/package.json +0 -93
  164. {docguard_cli-0.23.0 → docguard_cli-0.25.0/.agent}/commands/docguard.fix.md +0 -0
  165. {docguard_cli-0.23.0 → docguard_cli-0.25.0/.agent}/commands/docguard.guard.md +0 -0
  166. {docguard_cli-0.23.0 → docguard_cli-0.25.0/.agent}/commands/docguard.review.md +0 -0
  167. {docguard_cli-0.23.0 → docguard_cli-0.25.0/.agent}/commands/docguard.score.md +0 -0
  168. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/commands/speckit.analyze.md +0 -0
  169. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/commands/speckit.checklist.md +0 -0
  170. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/commands/speckit.clarify.md +0 -0
  171. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/commands/speckit.constitution.md +0 -0
  172. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/commands/speckit.implement.md +0 -0
  173. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/commands/speckit.plan.md +0 -0
  174. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/commands/speckit.specify.md +0 -0
  175. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/commands/speckit.tasks.md +0 -0
  176. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/commands/speckit.taskstoissues.md +0 -0
  177. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/skills/speckit-analyze/SKILL.md +0 -0
  178. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/skills/speckit-checklist/SKILL.md +0 -0
  179. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/skills/speckit-clarify/SKILL.md +0 -0
  180. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/skills/speckit-constitution/SKILL.md +0 -0
  181. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/skills/speckit-implement/SKILL.md +0 -0
  182. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/skills/speckit-plan/SKILL.md +0 -0
  183. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/skills/speckit-specify/SKILL.md +0 -0
  184. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/skills/speckit-tasks/SKILL.md +0 -0
  185. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.agent/skills/speckit-taskstoissues/SKILL.md +0 -0
  186. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.docguard.json +0 -0
  187. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  188. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  189. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.github/dependabot.yml +0 -0
  190. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.github/workflows/supply-chain.yml +0 -0
  191. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.jules/bolt.md +0 -0
  192. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.jules/palette.md +0 -0
  193. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.jules/sentinel.md +0 -0
  194. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.npmrc +0 -0
  195. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.specify/extensions/.cache/catalog-ebf165086500aab1-metadata.json +0 -0
  196. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.specify/extensions/.cache/catalog-ebf165086500aab1.json +0 -0
  197. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.specify/extensions/.cache/catalog-metadata.json +0 -0
  198. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.specify/extensions/.cache/catalog.json +0 -0
  199. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.specify/init-options.json +0 -0
  200. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.specify/scripts/bash/check-prerequisites.sh +0 -0
  201. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.specify/scripts/bash/common.sh +0 -0
  202. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.specify/scripts/bash/create-new-feature.sh +0 -0
  203. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.specify/scripts/bash/setup-plan.sh +0 -0
  204. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.specify/scripts/bash/update-agent-context.sh +0 -0
  205. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.specify/templates/agent-file-template.md +0 -0
  206. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.specify/templates/checklist-template.md +0 -0
  207. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.specify/templates/constitution-template.md +0 -0
  208. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.specify/templates/plan-template.md +0 -0
  209. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.specify/templates/spec-template.md +0 -0
  210. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/.specify/templates/tasks-template.md +0 -0
  211. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/CODE_OF_CONDUCT.md +0 -0
  212. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/COMPARISONS.md +0 -0
  213. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/DRIFT-LOG.md +0 -0
  214. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/LICENSE +0 -0
  215. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/PHILOSOPHY.md +0 -0
  216. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/STANDARD.md +0 -0
  217. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/SUPPLY-CHAIN-AUDIT.md +0 -0
  218. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/SUPPORT.md +0 -0
  219. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/assets/bin/docguard +0 -0
  220. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/assets/demo.gif +0 -0
  221. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/assets/demo.tape +0 -0
  222. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/assets/docguard-logo.png +0 -0
  223. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/agents.mjs +0 -0
  224. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/badge.mjs +0 -0
  225. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/ci.mjs +0 -0
  226. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/demo.mjs +0 -0
  227. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/diagnose.mjs +0 -0
  228. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/impact.mjs +0 -0
  229. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/llms.mjs +0 -0
  230. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/memory.mjs +0 -0
  231. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/publish.mjs +0 -0
  232. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/commands/watch.mjs +0 -0
  233. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/scanners/cdk.mjs +0 -0
  234. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/scanners/iac.mjs +0 -0
  235. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/scanners/integrations.mjs +0 -0
  236. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/scanners/speckit.mjs +0 -0
  237. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/architecture.mjs +0 -0
  238. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/changelog.mjs +0 -0
  239. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/cross-reference.mjs +0 -0
  240. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/docs-diff.mjs +0 -0
  241. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/environment.mjs +0 -0
  242. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/schema-sync.mjs +0 -0
  243. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/validators/spec-kit.mjs +0 -0
  244. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/writers/api-reference.mjs +0 -0
  245. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/writers/fix-memory.mjs +0 -0
  246. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/cli/writers/mechanical.mjs +0 -0
  247. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/configs/fastify.json +0 -0
  248. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/configs/generic.json +0 -0
  249. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/configs/nextjs.json +0 -0
  250. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/configs/python.json +0 -0
  251. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/docguard_cli/__init__.py +0 -0
  252. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/docs/ai-integration.md +0 -0
  253. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/docs/doc-sections.md +0 -0
  254. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/docs/installation.md +0 -0
  255. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/docs/profiles.md +0 -0
  256. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/docs/quickstart.md +0 -0
  257. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/docs-canonical/CI-RECIPES.md +0 -0
  258. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/docs-canonical/REQUIREMENTS.md +0 -0
  259. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/docs-canonical/SURFACE-AUDIT.md +0 -0
  260. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/docs-implementation/MIGRATION-v0.20.md +0 -0
  261. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/examples/01-express-api/README.md +0 -0
  262. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/examples/01-express-api/package.json +0 -0
  263. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/examples/01-express-api/server.js +0 -0
  264. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/examples/02-python-flask/README.md +0 -0
  265. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/examples/02-python-flask/app.py +0 -0
  266. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/examples/02-python-flask/docs-canonical/ARCHITECTURE.md +0 -0
  267. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/examples/02-python-flask/requirements.txt +0 -0
  268. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/examples/03-spec-kit-project/CHANGELOG.md +0 -0
  269. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/examples/03-spec-kit-project/README.md +0 -0
  270. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/examples/03-spec-kit-project/docs-canonical/ARCHITECTURE.md +0 -0
  271. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/examples/03-spec-kit-project/docs-canonical/TEST-SPEC.md +0 -0
  272. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/examples/03-spec-kit-project/package.json +0 -0
  273. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/examples/03-spec-kit-project/src/index.js +0 -0
  274. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/examples/03-spec-kit-project/tests/basic.test.js +0 -0
  275. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/examples/README.md +0 -0
  276. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/LICENSE +0 -0
  277. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/commands/diagnose.md +0 -0
  278. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/commands/fix.md +0 -0
  279. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/commands/generate.md +0 -0
  280. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/commands/guard.md +0 -0
  281. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/commands/init.md +0 -0
  282. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/commands/score.md +0 -0
  283. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/commands/sync.md +0 -0
  284. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/commands/trace.md +0 -0
  285. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/scripts/bash/common.sh +0 -0
  286. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/scripts/bash/docguard-check-docs.sh +0 -0
  287. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/scripts/bash/docguard-init-doc.sh +0 -0
  288. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/scripts/bash/docguard-suggest-fix.sh +0 -0
  289. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/extensions/spec-kit-docguard/templates/extensions.yml +0 -0
  290. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/pr_description.md +0 -0
  291. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/schemas/docguard-config.schema.json +0 -0
  292. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/specs/001-fix-ignore-validators/plan.md +0 -0
  293. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/specs/001-fix-ignore-validators/spec.md +0 -0
  294. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/specs/001-fix-ignore-validators/tasks.md +0 -0
  295. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/specs/002-fix-test-discovery/plan.md +0 -0
  296. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/specs/002-fix-test-discovery/spec.md +0 -0
  297. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/specs/002-fix-test-discovery/tasks.md +0 -0
  298. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/specs/003-v011-false-positives/plan.md +0 -0
  299. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/specs/003-v011-false-positives/spec.md +0 -0
  300. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/specs/003-v011-false-positives/tasks.md +0 -0
  301. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/specs/004-v020-env-var-false-negative/spec.md +0 -0
  302. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/specs/005-hugocross-next-bugs/spec.md +0 -0
  303. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/ADR.md.template +0 -0
  304. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/AGENTS.md.template +0 -0
  305. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/ARCHITECTURE.md.template +0 -0
  306. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/CHANGELOG.md.template +0 -0
  307. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/CURRENT-STATE.md.template +0 -0
  308. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/DATA-MODEL.md.template +0 -0
  309. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/DEPLOYMENT.md.template +0 -0
  310. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/DRIFT-LOG.md.template +0 -0
  311. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/ENVIRONMENT.md.template +0 -0
  312. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/KNOWN-GOTCHAS.md.template +0 -0
  313. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/REQUIREMENTS.md.template +0 -0
  314. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/ROADMAP.md.template +0 -0
  315. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/RUNBOOKS.md.template +0 -0
  316. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/SECURITY.md.template +0 -0
  317. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/TEST-SPEC.md.template +0 -0
  318. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/TROUBLESHOOTING.md.template +0 -0
  319. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/VENDOR-BUGS.md.template +0 -0
  320. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/ci/github-actions.yml +0 -0
  321. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/commands/docguard.fix.md +0 -0
  322. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/commands/docguard.guard.md +0 -0
  323. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/commands/docguard.init.md +0 -0
  324. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/commands/docguard.review.md +0 -0
  325. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/commands/docguard.update.md +0 -0
  326. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/demo-fixture/.docguard.json +0 -0
  327. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/demo-fixture/.env.example +0 -0
  328. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/demo-fixture/AGENTS.md +0 -0
  329. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/demo-fixture/CHANGELOG.md +0 -0
  330. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/demo-fixture/DRIFT-LOG.md +0 -0
  331. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/demo-fixture/README.md +0 -0
  332. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/demo-fixture/docs-canonical/API-REFERENCE.md +0 -0
  333. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/demo-fixture/docs-canonical/ARCHITECTURE.md +0 -0
  334. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/demo-fixture/docs-canonical/DATA-MODEL.md +0 -0
  335. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/demo-fixture/docs-canonical/ENVIRONMENT.md +0 -0
  336. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/demo-fixture/docs-canonical/SECURITY.md +0 -0
  337. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/demo-fixture/docs-canonical/TEST-SPEC.md +0 -0
  338. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/demo-fixture/package.json +0 -0
  339. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/demo-fixture/src/api.mjs +0 -0
  340. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/demo-fixture/src/notifier.mjs +0 -0
  341. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/demo-fixture/src/scheduler.mjs +0 -0
  342. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/templates/demo-fixture/src/worker.mjs +0 -0
  343. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/test-draft.js +0 -0
  344. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/test-metrics.js +0 -0
  345. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/anchor-autofix.test.mjs +0 -0
  346. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/api-surface.test.mjs +0 -0
  347. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/api-write.test.mjs +0 -0
  348. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/architecture.test.mjs +0 -0
  349. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/b7-node-env-symmetry.test.mjs +0 -0
  350. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/backup-failure.test.mjs +0 -0
  351. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/cdk-detection.test.mjs +0 -0
  352. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/changed-only-scoping.test.mjs +0 -0
  353. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/changelog.test.mjs +0 -0
  354. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/cross-reference.test.mjs +0 -0
  355. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/demo-command.test.mjs +0 -0
  356. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/doc-quality.test.mjs +0 -0
  357. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/docs-diff.test.mjs +0 -0
  358. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/docs-sync.test.mjs +0 -0
  359. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/drift.test.mjs +0 -0
  360. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/environment.test.mjs +0 -0
  361. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/fix-memory.test.mjs +0 -0
  362. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/fix-suppression.test.mjs +0 -0
  363. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/fixture-projects.test.mjs +0 -0
  364. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/frontend-deep.test.mjs +0 -0
  365. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/frontend.test.mjs +0 -0
  366. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/guard-classify.test.mjs +0 -0
  367. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/guard-no-throw.test.mjs +0 -0
  368. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/hooks.test.mjs +0 -0
  369. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/i18n.test.mjs +0 -0
  370. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/impact.test.mjs +0 -0
  371. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/init-smart-detection.test.mjs +0 -0
  372. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/integrations.test.mjs +0 -0
  373. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/mechanical.test.mjs +0 -0
  374. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/memory-plan.test.mjs +0 -0
  375. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/metrics-dedup.test.mjs +0 -0
  376. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/monorepo-scanning.test.mjs +0 -0
  377. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/multi-spec.test.mjs +0 -0
  378. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/npm-pack-smoke.test.mjs +0 -0
  379. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/patch-0.11.2.test.mjs +0 -0
  380. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/plan-disk-cache.test.mjs +0 -0
  381. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/profile-flag.test.mjs +0 -0
  382. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/regenerate-section.test.mjs +0 -0
  383. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/routes-multilang.test.mjs +0 -0
  384. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/schema-sync.test.mjs +0 -0
  385. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/schemas-multilang.test.mjs +0 -0
  386. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/scoping-extended.test.mjs +0 -0
  387. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/section-na-markers.test.mjs +0 -0
  388. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/security-init-injection.test.mjs +0 -0
  389. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/speckit-bugfix.test.mjs +0 -0
  390. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/stress-test.test.mjs +0 -0
  391. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/structure.test.mjs +0 -0
  392. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/surface-sync.test.mjs +0 -0
  393. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/sweep-nudge.test.mjs +0 -0
  394. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/sync-since.test.mjs +0 -0
  395. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/todo-tracking.test.mjs +0 -0
  396. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/trace-multilang.test.mjs +0 -0
  397. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/trace-reverse.test.mjs +0 -0
  398. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/upgrade-pr-e2e.test.mjs +0 -0
  399. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/upgrade-pr.test.mjs +0 -0
  400. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/v020-consolidation.test.mjs +0 -0
  401. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/validator-naming.test.mjs +0 -0
  402. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/version-pin.test.mjs +0 -0
  403. {docguard_cli-0.23.0 → docguard_cli-0.25.0}/tests/whats-new.test.mjs +0 -0
@@ -6,10 +6,10 @@ description: AI-driven documentation repair with structured research workflow, t
6
6
  compatibility: Requires DocGuard CLI installed (npm i -g docguard-cli or npx docguard-cli)
7
7
  metadata:
8
8
  author: docguard
9
- version: 0.23.0
9
+ version: 0.25.0
10
10
  source: extensions/spec-kit-docguard/skills/docguard-fix
11
11
  ---
12
- <!-- docguard:version: 0.23.0 -->
12
+ <!-- docguard:version: 0.25.0 -->
13
13
 
14
14
  # DocGuard Fix Skill
15
15
 
@@ -7,10 +7,10 @@ description: Run DocGuard guard validation against Canonical-Driven Development
7
7
  compatibility: Requires DocGuard CLI installed (npm i -g docguard-cli or npx docguard-cli)
8
8
  metadata:
9
9
  author: docguard
10
- version: 0.23.0
10
+ version: 0.25.0
11
11
  source: extensions/spec-kit-docguard/skills/docguard-guard
12
12
  ---
13
- <!-- docguard:version: 0.23.0 -->
13
+ <!-- docguard:version: 0.25.0 -->
14
14
 
15
15
  # DocGuard Guard Skill
16
16
 
@@ -6,10 +6,10 @@ description: Cross-document consistency analysis and quality assessment. Perform
6
6
  compatibility: Requires DocGuard CLI installed (npm i -g docguard-cli or npx docguard-cli)
7
7
  metadata:
8
8
  author: docguard
9
- version: 0.23.0
9
+ version: 0.25.0
10
10
  source: extensions/spec-kit-docguard/skills/docguard-review
11
11
  ---
12
- <!-- docguard:version: 0.23.0 -->
12
+ <!-- docguard:version: 0.25.0 -->
13
13
 
14
14
  # DocGuard Review Skill
15
15
 
@@ -6,10 +6,10 @@ description: CDD maturity assessment with category-aware improvement roadmap. Ru
6
6
  compatibility: Requires DocGuard CLI installed (npm i -g docguard-cli or npx docguard-cli)
7
7
  metadata:
8
8
  author: docguard
9
- version: 0.23.0
9
+ version: 0.25.0
10
10
  source: extensions/spec-kit-docguard/skills/docguard-score
11
11
  ---
12
- <!-- docguard:version: 0.23.0 -->
12
+ <!-- docguard:version: 0.25.0 -->
13
13
 
14
14
  # DocGuard Score Skill
15
15
 
@@ -4,9 +4,10 @@ description: Keep canonical documentation ALWAYS UP TO DATE. Refreshes code-trut
4
4
  compatibility: Requires DocGuard CLI installed (npm i -g docguard-cli or npx docguard-cli)
5
5
  metadata:
6
6
  author: docguard
7
- version: 0.23.0
7
+ version: 0.25.0
8
8
  source: extensions/spec-kit-docguard/skills/docguard-sync
9
9
  ---
10
+ <!-- docguard:version: 0.25.0 -->
10
11
 
11
12
  # DocGuard Sync Skill
12
13
 
@@ -0,0 +1,15 @@
1
+ ---
2
+ description: OpenWolf protocol enforcement — active on all files
3
+ globs: **/*
4
+ ---
5
+
6
+ - Check .wolf/anatomy.md before reading any project file
7
+ - Check .wolf/cerebrum.md Do-Not-Repeat list before generating code
8
+ - After writing or editing files, update .wolf/anatomy.md and append to .wolf/memory.md
9
+ - After receiving a user correction, update .wolf/cerebrum.md immediately (Preferences, Learnings, or Do-Not-Repeat)
10
+ - LEARN from every interaction: if you discover a convention, user preference, or project pattern, add it to .wolf/cerebrum.md. Low threshold — when in doubt, log it.
11
+ - BEFORE fixing any bug or error: read .wolf/buglog.json for known fixes
12
+ - AFTER fixing any bug, error, failed test, failed build, or user-reported problem: ALWAYS log to .wolf/buglog.json with error_message, root_cause, fix, and tags
13
+ - If you edit a file more than twice in a session, that likely indicates a bug — log it to .wolf/buglog.json
14
+ - When the user asks to check/evaluate UI design: run `openwolf designqc` to capture screenshots, then read them from .wolf/designqc-captures/
15
+ - When the user asks to change/pick/migrate UI framework: read .wolf/reframe-frameworks.md, ask decision questions, recommend a framework, then execute with the framework's prompt
@@ -0,0 +1,72 @@
1
+ {
2
+ "hooks": {
3
+ "SessionStart": [
4
+ {
5
+ "matcher": "",
6
+ "hooks": [
7
+ {
8
+ "type": "command",
9
+ "command": "node \"$CLAUDE_PROJECT_DIR/.wolf/hooks/session-start.js\"",
10
+ "timeout": 5
11
+ }
12
+ ]
13
+ }
14
+ ],
15
+ "PreToolUse": [
16
+ {
17
+ "matcher": "Read",
18
+ "hooks": [
19
+ {
20
+ "type": "command",
21
+ "command": "node \"$CLAUDE_PROJECT_DIR/.wolf/hooks/pre-read.js\"",
22
+ "timeout": 5
23
+ }
24
+ ]
25
+ },
26
+ {
27
+ "matcher": "Write|Edit|MultiEdit",
28
+ "hooks": [
29
+ {
30
+ "type": "command",
31
+ "command": "node \"$CLAUDE_PROJECT_DIR/.wolf/hooks/pre-write.js\"",
32
+ "timeout": 5
33
+ }
34
+ ]
35
+ }
36
+ ],
37
+ "PostToolUse": [
38
+ {
39
+ "matcher": "Read",
40
+ "hooks": [
41
+ {
42
+ "type": "command",
43
+ "command": "node \"$CLAUDE_PROJECT_DIR/.wolf/hooks/post-read.js\"",
44
+ "timeout": 5
45
+ }
46
+ ]
47
+ },
48
+ {
49
+ "matcher": "Write|Edit|MultiEdit",
50
+ "hooks": [
51
+ {
52
+ "type": "command",
53
+ "command": "node \"$CLAUDE_PROJECT_DIR/.wolf/hooks/post-write.js\"",
54
+ "timeout": 10
55
+ }
56
+ ]
57
+ }
58
+ ],
59
+ "Stop": [
60
+ {
61
+ "matcher": "",
62
+ "hooks": [
63
+ {
64
+ "type": "command",
65
+ "command": "node \"$CLAUDE_PROJECT_DIR/.wolf/hooks/stop.js\"",
66
+ "timeout": 10
67
+ }
68
+ ]
69
+ }
70
+ ]
71
+ }
72
+ }
@@ -5,9 +5,6 @@
5
5
  Research/
6
6
  Research/**
7
7
 
8
- # VS Code extension build artifacts
9
- vscode-extension/out/
10
-
11
8
  # Python distribution artifacts
12
9
  dist/
13
10
  build/
@@ -37,11 +37,11 @@ old_entry_updated = dg["updated_at"]
37
37
  old_desc = dg["description"]
38
38
  top_updated = data["updated_at"]
39
39
 
40
- # Correct description (matches our constitution: "Zero NPM runtime dependencies")
40
+ # Correct description (matches our constitution: minimal, vetted dependencies)
41
41
  new_desc = (
42
42
  "Canonical-Driven Development enforcement. "
43
43
  "Validates, scores, and traces project documentation with automated checks, "
44
- "AI-driven workflows, and spec-kit hooks. Zero NPM runtime dependencies."
44
+ "AI-driven workflows, and spec-kit hooks. One pinned runtime dependency; pure Node.js otherwise."
45
45
  )
46
46
 
47
47
  # Surgical string replacements — only touch specific values
@@ -23,6 +23,22 @@ jobs:
23
23
  with:
24
24
  node-version: ${{ matrix.node-version }}
25
25
 
26
+ # ── Install the one runtime dependency (@babel/parser) from the lockfile.
27
+ # Required: without it the AST-tier tests run with Babel absent. ──
28
+ - name: Install dependencies
29
+ run: npm ci
30
+
31
+ # ── Syntax-check EVERY CLI source, not just the files the entry point
32
+ # eagerly imports (a lazily/dynamically loaded module's syntax error
33
+ # would otherwise slip through). This is the lint gate that would have
34
+ # caught the VS Code extension shipping with a parse error. ──
35
+ - name: Syntax-check all CLI sources
36
+ run: find cli -name '*.mjs' -print0 | xargs -0 -n1 node --check
37
+
38
+ # ── Python wrapper import smoke (PyPI distribution surface) ──
39
+ - name: Python wrapper imports
40
+ run: python3 -c "import docguard_cli.wrapper; print('docguard_cli.wrapper OK')"
41
+
26
42
  # ── Automated Test Suite ──
27
43
  - name: Run Tests
28
44
  run: npm test
@@ -21,23 +21,28 @@ jobs:
21
21
  steps:
22
22
  - uses: actions/checkout@v6
23
23
  with:
24
- fetch-depth: 2 # Need previous commit to compare
24
+ fetch-depth: 1 # only need HEAD's package.json; the tag check hits the remote
25
25
 
26
- - name: Check if version changed
26
+ - name: Check if this version needs releasing
27
27
  id: check
28
28
  run: |
29
29
  CURRENT=$(node -p "require('./package.json').version")
30
- # Get version from previous commit
31
- PREVIOUS=$(git show HEAD~1:package.json 2>/dev/null | node -p "JSON.parse(require('fs').readFileSync('/dev/stdin','utf-8')).version" 2>/dev/null || echo "0.0.0")
30
+ TAG="v${CURRENT}"
32
31
  echo "current=$CURRENT"
33
- echo "previous=$PREVIOUS"
34
- if [ "$CURRENT" != "$PREVIOUS" ]; then
32
+ # TAG-DRIVEN gate (not HEAD~1): a version needs releasing iff no tag
33
+ # v$CURRENT exists yet. The old HEAD~1 comparison skipped the release
34
+ # whenever a push carried commits AFTER the version-bump commit (the
35
+ # bump wasn't the tip) — e.g. a batched push of several commits. It saw
36
+ # HEAD and HEAD~1 both already carrying the new version and wrongly
37
+ # concluded "unchanged", silently skipping npm/PyPI/GitHub-Release.
38
+ # Checking the tag is also idempotent: a re-run won't double-publish.
39
+ if git ls-remote --tags origin "refs/tags/$TAG" | grep -q "refs/tags/$TAG$"; then
40
+ echo "changed=false" >> "$GITHUB_OUTPUT"
41
+ echo "⏭️ $TAG already released — nothing to do"
42
+ else
35
43
  echo "version=$CURRENT" >> "$GITHUB_OUTPUT"
36
44
  echo "changed=true" >> "$GITHUB_OUTPUT"
37
- echo "✅ Version changed: $PREVIOUS $CURRENT"
38
- else
39
- echo "changed=false" >> "$GITHUB_OUTPUT"
40
- echo "⏭️ Version unchanged ($CURRENT), skipping release"
45
+ echo "✅ $TAG is not yet released — releasing"
41
46
  fi
42
47
 
43
48
  # ── Step 2: Run full test suite ────────────────────────────────────────
@@ -55,6 +60,8 @@ jobs:
55
60
  - uses: actions/setup-node@v6
56
61
  with:
57
62
  node-version: ${{ matrix.node-version }}
63
+ - name: Install dependencies
64
+ run: npm ci
58
65
  - name: Run Tests
59
66
  run: npm test
60
67
  - name: Guard (self-check)
@@ -43,7 +43,7 @@ jobs:
43
43
  echo "updated_at=$(date -u +%Y-%m-%dT%H:%M:%SZ)" >> "$GITHUB_OUTPUT"
44
44
 
45
45
  # Extract short description (avoid multiline output issues)
46
- DESC="Canonical-Driven Development enforcement with automated checks, AI skills, and spec-kit hooks. Zero NPM runtime dependencies."
46
+ DESC="Canonical-Driven Development enforcement with automated checks, AI skills, and spec-kit hooks. One pinned runtime dependency; pure Node.js otherwise."
47
47
  echo "description=$DESC" >> "$GITHUB_OUTPUT"
48
48
 
49
49
  # Count commands
@@ -29,7 +29,7 @@ dist/
29
29
  build/
30
30
  coverage/
31
31
 
32
- # SpecGuard generated docs (for THIS project testing)
32
+ # DocGuard generated docs (for THIS project testing)
33
33
  # Note: In real projects, docs-canonical/ SHOULD be committed.
34
34
  # These are excluded here because they're template-generated test files.
35
35
  docguard_cli/__pycache__/
@@ -0,0 +1,41 @@
1
+ #!/bin/bash
2
+ # ==========================================
3
+ # Google Jules Environment Startup Script
4
+ # ==========================================
5
+ # Use this configuration in the Jules Dashboard:
6
+ # Repo -> Configuration -> Initial Setup
7
+
8
+ set -e
9
+
10
+ # ------------------------------------------
11
+ # 1. Inject Headless Dummy Credentials
12
+ # ------------------------------------------
13
+ # Mocking AI provider keys in case tests or agent integrations require them
14
+ export GEMINI_API_KEY="dummy-jules-key"
15
+ export ANTHROPIC_API_KEY="dummy-anthropic-key"
16
+ export OPENAI_API_KEY="dummy-openai-key"
17
+
18
+ # ------------------------------------------
19
+ # 2. Ecosystem-Specific Dependency Installation
20
+ # ------------------------------------------
21
+ echo "📦 === Installing Dependencies ==="
22
+ # Note: DocGuard has zero production dependencies, but we run npm install
23
+ # in case devDependencies are added in the future.
24
+ npm install
25
+
26
+ # ------------------------------------------
27
+ # 3. Ecosystem-Specific Tests & Build Checks
28
+ # ------------------------------------------
29
+ echo "🧪 === Running Initial Test & Validation ==="
30
+ # Execute the native Node.js tests
31
+ npm test || echo "⚠️ Tests failed, but continuing..."
32
+
33
+ echo "🏗️ === Verifying Build Integrity ==="
34
+ # Test the primary CLI entrypoint to ensure it is executable
35
+ node cli/docguard.mjs --version
36
+
37
+ echo "🧹 === Enforcing Git Tree Integrity ==="
38
+ # Jules requires the working directory to be clean after this script runs
39
+ git clean -fd || true
40
+
41
+ echo "✅ Jules VM Local Environment is Ready!"
@@ -1,7 +1,6 @@
1
1
  # Development
2
2
  .git/
3
3
  .github/
4
- .specguard.json
5
4
  Research/
6
5
  docs-canonical/
7
6
  docs-implementation/
@@ -15,9 +15,11 @@
15
15
 
16
16
  DocGuard is built for AI coding agents. Every feature MUST be designed for LLM consumption first, with CLI as a secondary interface. Skills (behavior protocols) take priority over CLI commands (step-lists). When DocGuard detects an AI agent environment, it MUST surface skill-based instructions. CLI output MUST be machine-parseable (JSON mode) alongside human-readable text.
17
17
 
18
- ### II. Zero NPM Runtime Dependencies (NON-NEGOTIABLE)
18
+ ### II. Minimal, Vetted Dependencies (NON-NEGOTIABLE)
19
19
 
20
- DocGuard has zero `node_modules` at runtime. All Node.js functionality uses built-in modules only (`node:fs`, `node:path`, `node:child_process`, `node:test`, `node:url`, `node:readline`, `node:os`, `node:assert`). This maximizes portability, eliminates supply chain risk, and ensures instant `npx` usage. Dev dependencies are also zero tests use `node:test`. DocGuard depends on spec-kit as a **framework convention** (`.specify/` directory structure, skill architecture, constitution pattern). This is an integration, not a code dependency. When the `specify` CLI is available, DocGuard MUST leverage it for initialization and skill management.
20
+ DocGuard ships with exactly **one** runtime dependency: `@babel/parser` (exact-pinned), which powers AST-accurate JavaScript/TypeScript parsing for the full-support language tier. Regex-only extraction silently truncated any nested structure (`z.object({ ... })` inside another, a Mongoose field object), and a scanner that returns too little makes the doc validators falsely pass — so a real parser earns its place. Everything else uses Node.js built-ins only (`node:fs`, `node:path`, `node:child_process`, `node:test`, `node:url`, `node:readline`, `node:os`, `node:assert`, `node:module`). The parser loads **optionally**: if it's ever absent the CLI degrades to the regex (beta) tier rather than crashing, so `npx` stays robust.
21
+
22
+ Any NEW dependency is governed (NON-NEGOTIABLE): it MUST be justified against built-ins, exact-pinned (no `^`/`~`/`>=`), pass supply-chain vetting (>10k weekly downloads, >1 maintainer, first-published >30 days ago), and degrade gracefully if missing. Dev dependencies remain zero — tests use `node:test`. DocGuard also depends on spec-kit as a **framework convention** (`.specify/` structure, skills, constitution pattern); that is an integration, not a code dependency. When the `specify` CLI is available, DocGuard MUST leverage it for initialization and skill management.
21
23
 
22
24
  ### III. Documentation as Source of Truth
23
25
 
@@ -0,0 +1,135 @@
1
+ # OpenWolf Operating Protocol
2
+
3
+ You are working in an OpenWolf-managed project. These rules apply every turn.
4
+
5
+ ## File Navigation
6
+
7
+ 1. Check `.wolf/anatomy.md` BEFORE reading any file. It has a 2-3 line description and token estimate for every file in the project.
8
+ 2. If the description in anatomy.md is sufficient for your task, do NOT read the full file.
9
+ 3. If a file is not in anatomy.md, search with Grep/Glob, then update anatomy.md with the new entry.
10
+
11
+ ## Code Generation
12
+
13
+ 1. Before generating code, read `.wolf/cerebrum.md` and respect every entry.
14
+ 2. Check the `## Do-Not-Repeat` section — these are past mistakes that must not recur.
15
+ 3. Follow all conventions in `## Key Learnings` and `## User Preferences`.
16
+
17
+ ## After Actions
18
+
19
+ 1. After every significant action, append a one-line entry to `.wolf/memory.md`:
20
+ `| HH:MM | description | file(s) | outcome | ~tokens |`
21
+ 2. After creating, deleting, or renaming files: update `.wolf/anatomy.md`.
22
+
23
+ ## Cerebrum Learning (MANDATORY — every session)
24
+
25
+ OpenWolf's value comes from learning across sessions. You MUST update `.wolf/cerebrum.md` whenever you learn something useful. This is not optional.
26
+
27
+ **Update `## User Preferences` when the user:**
28
+ - Corrects your approach ("no, do it this way instead")
29
+ - Expresses a style preference (naming, structure, formatting)
30
+ - Shows a preferred workflow or tool choice
31
+ - Rejects a suggestion — record what they preferred instead
32
+ - Asks for more/less detail, verbosity, explanation
33
+
34
+ **Update `## Key Learnings` when you discover:**
35
+ - A project convention not obvious from the code (e.g., "tests go in __tests__/ not test/")
36
+ - A framework-specific pattern this project uses
37
+ - An API behavior that surprised you
38
+ - A dependency quirk or version constraint
39
+ - How modules connect or data flows through the system
40
+
41
+ **Update `## Do-Not-Repeat` (with date) when:**
42
+ - The user corrects a mistake you made
43
+ - You try something that fails and find the right approach
44
+ - You discover a gotcha that would trip up a fresh session
45
+
46
+ **Update `## Decision Log` when:**
47
+ - A significant architectural or technical choice is made
48
+ - The user explains why they chose approach A over B
49
+ - A trade-off is explicitly discussed
50
+
51
+ **The bar is LOW.** If in doubt, add it. A cerebrum entry that's slightly redundant costs nothing. A missing entry means the next session repeats the same discovery process.
52
+
53
+ ## Bug Logging (MANDATORY)
54
+
55
+ **Log a bug to `.wolf/buglog.json` whenever ANY of these happen:**
56
+ - The user reports an error, bug, or problem
57
+ - A test fails or a command produces an error
58
+ - You fix something that was broken
59
+ - You edit a file more than twice to get it right
60
+ - An import, module, or dependency is missing or wrong
61
+ - A runtime error, type error, or syntax error occurs
62
+ - A build or lint command fails
63
+ - A feature doesn't work as expected
64
+ - You change error handling, try/catch blocks, or validation logic
65
+ - The user says something "doesn't work", "is broken", or "shows wrong X"
66
+
67
+ **Before fixing:** Read `.wolf/buglog.json` first — the fix may already be known.
68
+
69
+ **After fixing:** ALWAYS append to `.wolf/buglog.json` with this structure:
70
+ ```json
71
+ {
72
+ "id": "bug-NNN",
73
+ "timestamp": "ISO date",
74
+ "error_message": "exact error or user complaint",
75
+ "file": "file that was fixed",
76
+ "root_cause": "why it broke",
77
+ "fix": "what you changed to fix it",
78
+ "tags": ["relevant", "keywords"],
79
+ "related_bugs": [],
80
+ "occurrences": 1,
81
+ "last_seen": "ISO date"
82
+ }
83
+ ```
84
+
85
+ **The threshold is LOW.** When in doubt, log it. A false positive in the bug log costs nothing. A missed bug means repeating the same mistake later.
86
+
87
+ ## Token Discipline
88
+
89
+ - Never re-read a file already read this session unless it was modified since.
90
+ - Prefer anatomy.md descriptions over full file reads when possible.
91
+ - Prefer targeted Grep over full file reads when searching for specific code.
92
+ - If appending to a file, do not read the entire file first.
93
+
94
+ ## Design QC
95
+
96
+ When the user asks you to check, evaluate, or improve the design/UI of their app:
97
+
98
+ 1. Run `openwolf designqc` via Bash to capture screenshots.
99
+ - The command auto-detects a running dev server, or starts one from package.json if needed
100
+ - Use `--url <url>` only if auto-detection fails
101
+ - The command saves compressed JPEG screenshots to `.wolf/designqc-captures/`
102
+ - Full pages are captured as sectioned viewport-height images (top, section2, ..., bottom)
103
+ 2. Read the captured screenshot images from `.wolf/designqc-captures/` using the Read tool.
104
+ 3. Evaluate the design against modern standards (Shadcn UI, Tailwind, clean React patterns):
105
+ - Spacing and whitespace consistency
106
+ - Typography hierarchy and readability
107
+ - Color contrast and accessibility (WCAG)
108
+ - Visual hierarchy and focal points
109
+ - Component consistency
110
+ - Whether the design looks "dull" or "white-coded" (generic, no personality)
111
+ 4. Provide specific, actionable feedback with fix suggestions.
112
+ 5. If the user approves, implement the fixes directly in their code.
113
+ 6. After fixes, re-run `openwolf designqc` to capture new screenshots and verify improvement.
114
+
115
+ **Token awareness:** Each screenshot costs ~2500 tokens. The command compresses images (JPEG quality 70, max width 1200px) to minimize cost. For large apps, use `--routes / /specific-page` to limit captures.
116
+
117
+ ## Reframe — UI Framework Selection
118
+
119
+ When the user asks to change, pick, migrate, or "reframe" their project's UI framework:
120
+
121
+ 1. Read `.wolf/reframe-frameworks.md` for the full framework knowledge base.
122
+ 2. Ask the user the decision questions from the file (current stack, priority, Tailwind usage, theme preference, app type). Stop early once the choice narrows to 1-2 options.
123
+ 3. Present a recommendation with reasoning based on the comparison matrix.
124
+ 4. Once the user confirms, use the selected framework's prompt from the file — **adapted to the actual project** using `.wolf/anatomy.md` for real file paths, routes, and components.
125
+ 5. Execute the migration: install dependencies, update config, refactor components.
126
+ 6. After migration, run `openwolf designqc` to verify the new look.
127
+
128
+ **Do NOT read the entire reframe-frameworks.md into context upfront.** Read the decision questions and comparison matrix first (~50 lines). Only read the specific framework's prompt section after the user chooses.
129
+
130
+ ## Session End
131
+
132
+ Before ending or when asked to wrap up:
133
+
134
+ 1. Write a session summary to `.wolf/memory.md`.
135
+ 2. Review the session: did you learn anything? Did the user correct you? Did you fix a bug? If yes, update `.wolf/cerebrum.md` and/or `.wolf/buglog.json`.