docguard-cli 0.29.0__tar.gz → 0.30.1__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 (441) hide show
  1. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.github/scripts/speckit-submission.py +5 -4
  2. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.github/workflows/ci.yml +8 -3
  3. docguard_cli-0.30.1/.github/workflows/jules-triage.yml +85 -0
  4. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.github/workflows/release.yml +10 -8
  5. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.github/workflows/sync-speckit-catalog.yml +1 -1
  6. docguard_cli-0.30.1/.jules/bolt.md +24 -0
  7. docguard_cli-0.30.1/.jules/palette.md +11 -0
  8. docguard_cli-0.30.1/.jules/sentinel.md +24 -0
  9. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.jules-setup.sh +18 -5
  10. docguard_cli-0.30.1/.npmrc +13 -0
  11. docguard_cli-0.30.1/.pre-commit-hooks.yaml +49 -0
  12. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/anatomy.md +54 -18
  13. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/buglog.json +155 -0
  14. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/cerebrum.md +11 -0
  15. docguard_cli-0.30.1/.wolf/hooks/_session.json +137 -0
  16. docguard_cli-0.30.1/.wolf/hooks/_wrap_up_nudged +1 -0
  17. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/memory.md +135 -0
  18. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/token-ledger.json +9721 -8
  19. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/AGENTS.md +15 -1
  20. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/CHANGELOG.md +72 -0
  21. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/DRIFT-LOG.md +1 -0
  22. docguard_cli-0.30.1/Dockerfile +26 -0
  23. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/PKG-INFO +19 -2
  24. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/README.md +18 -1
  25. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/mcp.mjs +20 -0
  26. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/score.mjs +9 -4
  27. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/setup.mjs +0 -13
  28. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/trace.mjs +364 -1
  29. docguard_cli-0.30.1/cli/commands/verify.mjs +154 -0
  30. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/docguard.mjs +11 -3
  31. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/findings.mjs +12 -0
  32. docguard_cli-0.30.1/cli/scanners/instruction-audit.mjs +320 -0
  33. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/scanners/speckit.mjs +346 -1
  34. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/shared-git.mjs +8 -1
  35. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/docs-canonical/ARCHITECTURE.md +4 -0
  36. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/extensions/spec-kit-docguard/extension.yml +1 -1
  37. {docguard_cli-0.29.0/.agent → docguard_cli-0.30.1/extensions/spec-kit-docguard}/skills/docguard-fix/SKILL.md +2 -2
  38. {docguard_cli-0.29.0/.agent → docguard_cli-0.30.1/extensions/spec-kit-docguard}/skills/docguard-guard/SKILL.md +2 -2
  39. {docguard_cli-0.29.0/.agent → docguard_cli-0.30.1/extensions/spec-kit-docguard}/skills/docguard-review/SKILL.md +2 -2
  40. {docguard_cli-0.29.0/.agent → docguard_cli-0.30.1/extensions/spec-kit-docguard}/skills/docguard-score/SKILL.md +2 -2
  41. {docguard_cli-0.29.0/.agent → docguard_cli-0.30.1/extensions/spec-kit-docguard}/skills/docguard-sync/SKILL.md +2 -2
  42. docguard_cli-0.30.1/glama.json +6 -0
  43. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/package.json +2 -1
  44. docguard_cli-0.30.1/packaging/homebrew/docguard.rb +36 -0
  45. docguard_cli-0.30.1/packaging/submissions.md +159 -0
  46. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/pyproject.toml +1 -1
  47. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/schemas/docguard-config.schema.json +11 -0
  48. docguard_cli-0.30.1/server.json +32 -0
  49. docguard_cli-0.30.1/smithery.yaml +30 -0
  50. docguard_cli-0.30.1/templates/ci/gitlab-component.yml +90 -0
  51. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/field-report-3.test.mjs +26 -1
  52. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/hooks.test.mjs +40 -0
  53. docguard_cli-0.30.1/tests/instruction-audit.test.mjs +187 -0
  54. docguard_cli-0.30.1/tests/speckit-phantom.test.mjs +238 -0
  55. docguard_cli-0.30.1/tests/trace-features.test.mjs +201 -0
  56. docguard_cli-0.29.0/.jules/bolt.md +0 -10
  57. docguard_cli-0.29.0/.jules/palette.md +0 -11
  58. docguard_cli-0.29.0/.jules/sentinel.md +0 -4
  59. docguard_cli-0.29.0/.npmrc +0 -7
  60. docguard_cli-0.29.0/.wolf/hooks/_session.json +0 -362
  61. docguard_cli-0.29.0/.wolf/hooks/_wrap_up_nudged +0 -1
  62. docguard_cli-0.29.0/cli/commands/verify.mjs +0 -67
  63. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/commands/docguard.fix.md +0 -0
  64. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/commands/docguard.guard.md +0 -0
  65. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/commands/docguard.review.md +0 -0
  66. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/commands/docguard.score.md +0 -0
  67. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/commands/speckit.analyze.md +0 -0
  68. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/commands/speckit.checklist.md +0 -0
  69. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/commands/speckit.clarify.md +0 -0
  70. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/commands/speckit.constitution.md +0 -0
  71. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/commands/speckit.implement.md +0 -0
  72. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/commands/speckit.plan.md +0 -0
  73. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/commands/speckit.specify.md +0 -0
  74. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/commands/speckit.tasks.md +0 -0
  75. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/commands/speckit.taskstoissues.md +0 -0
  76. {docguard_cli-0.29.0/extensions/spec-kit-docguard → docguard_cli-0.30.1/.agent}/skills/docguard-fix/SKILL.md +0 -0
  77. {docguard_cli-0.29.0/extensions/spec-kit-docguard → docguard_cli-0.30.1/.agent}/skills/docguard-guard/SKILL.md +0 -0
  78. {docguard_cli-0.29.0/extensions/spec-kit-docguard → docguard_cli-0.30.1/.agent}/skills/docguard-review/SKILL.md +0 -0
  79. {docguard_cli-0.29.0/extensions/spec-kit-docguard → docguard_cli-0.30.1/.agent}/skills/docguard-score/SKILL.md +0 -0
  80. {docguard_cli-0.29.0/extensions/spec-kit-docguard → docguard_cli-0.30.1/.agent}/skills/docguard-sync/SKILL.md +0 -0
  81. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/skills/speckit-analyze/SKILL.md +0 -0
  82. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/skills/speckit-checklist/SKILL.md +0 -0
  83. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/skills/speckit-clarify/SKILL.md +0 -0
  84. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/skills/speckit-constitution/SKILL.md +0 -0
  85. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/skills/speckit-implement/SKILL.md +0 -0
  86. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/skills/speckit-plan/SKILL.md +0 -0
  87. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/skills/speckit-specify/SKILL.md +0 -0
  88. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/skills/speckit-tasks/SKILL.md +0 -0
  89. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.agent/skills/speckit-taskstoissues/SKILL.md +0 -0
  90. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.claude/rules/openwolf.md +0 -0
  91. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.claude/settings.json +0 -0
  92. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.docguard.json +0 -0
  93. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.docguardignore +0 -0
  94. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  95. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.github/ISSUE_TEMPLATE/docguard-feedback.md +0 -0
  96. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  97. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  98. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.github/dependabot.yml +0 -0
  99. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.github/workflows/supply-chain.yml +0 -0
  100. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.gitignore +0 -0
  101. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.npmignore +0 -0
  102. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.specify/extensions/.cache/catalog-ebf165086500aab1-metadata.json +0 -0
  103. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.specify/extensions/.cache/catalog-ebf165086500aab1.json +0 -0
  104. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.specify/extensions/.cache/catalog-metadata.json +0 -0
  105. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.specify/extensions/.cache/catalog.json +0 -0
  106. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.specify/init-options.json +0 -0
  107. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.specify/memory/constitution.md +0 -0
  108. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.specify/scripts/bash/check-prerequisites.sh +0 -0
  109. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.specify/scripts/bash/common.sh +0 -0
  110. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.specify/scripts/bash/create-new-feature.sh +0 -0
  111. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.specify/scripts/bash/setup-plan.sh +0 -0
  112. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.specify/scripts/bash/update-agent-context.sh +0 -0
  113. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.specify/templates/agent-file-template.md +0 -0
  114. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.specify/templates/checklist-template.md +0 -0
  115. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.specify/templates/constitution-template.md +0 -0
  116. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.specify/templates/plan-template.md +0 -0
  117. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.specify/templates/spec-template.md +0 -0
  118. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.specify/templates/tasks-template.md +0 -0
  119. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/OPENWOLF.md +0 -0
  120. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/config.json +0 -0
  121. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/cron-manifest.json +0 -0
  122. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/cron-state.json +0 -0
  123. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/daemon.log +0 -0
  124. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/designqc-report.json +0 -0
  125. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/hooks/package.json +0 -0
  126. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/hooks/post-read.js +0 -0
  127. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/hooks/post-write.js +0 -0
  128. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/hooks/pre-read.js +0 -0
  129. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/hooks/pre-write.js +0 -0
  130. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/hooks/session-start.js +0 -0
  131. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/hooks/shared.js +0 -0
  132. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/hooks/stop.js +0 -0
  133. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/identity.md +0 -0
  134. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/reframe-frameworks.md +0 -0
  135. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/.wolf/suggestions.json +0 -0
  136. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/CLAUDE.md +0 -0
  137. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/CODE_OF_CONDUCT.md +0 -0
  138. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/COMPARISONS.md +0 -0
  139. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/CONTRIBUTING.md +0 -0
  140. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/LICENSE +0 -0
  141. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/PHILOSOPHY.md +0 -0
  142. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/README.es.md +0 -0
  143. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/README.pt-BR.md +0 -0
  144. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/ROADMAP.md +0 -0
  145. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/SECURITY.md +0 -0
  146. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/STANDARD.md +0 -0
  147. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/SUPPLY-CHAIN-AUDIT.md +0 -0
  148. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/SUPPORT.md +0 -0
  149. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/action.yml +0 -0
  150. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/assets/bin/docguard +0 -0
  151. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/assets/demo.gif +0 -0
  152. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/assets/demo.tape +0 -0
  153. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/assets/docguard-logo.png +0 -0
  154. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/agent.mjs +0 -0
  155. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/agents.mjs +0 -0
  156. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/badge.mjs +0 -0
  157. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/ci.mjs +0 -0
  158. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/demo.mjs +0 -0
  159. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/diagnose.mjs +0 -0
  160. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/diff.mjs +0 -0
  161. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/explain.mjs +0 -0
  162. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/feedback.mjs +0 -0
  163. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/fix.mjs +0 -0
  164. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/generate.mjs +0 -0
  165. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/guard.mjs +0 -0
  166. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/hooks.mjs +0 -0
  167. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/impact.mjs +0 -0
  168. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/init.mjs +0 -0
  169. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/llms.mjs +0 -0
  170. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/memory.mjs +0 -0
  171. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/publish.mjs +0 -0
  172. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/sync-tests.mjs +0 -0
  173. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/sync.mjs +0 -0
  174. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/upgrade.mjs +0 -0
  175. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/commands/watch.mjs +0 -0
  176. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/config.mjs +0 -0
  177. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/ensure-skills.mjs +0 -0
  178. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/scanners/agent-readability.mjs +0 -0
  179. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/scanners/api-doc.mjs +0 -0
  180. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/scanners/cdk.mjs +0 -0
  181. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/scanners/doc-tools.mjs +0 -0
  182. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/scanners/frontend.mjs +0 -0
  183. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/scanners/iac.mjs +0 -0
  184. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/scanners/integrations.mjs +0 -0
  185. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/scanners/inventory.mjs +0 -0
  186. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/scanners/js-ast.mjs +0 -0
  187. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/scanners/memory-plan.mjs +0 -0
  188. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/scanners/project-type.mjs +0 -0
  189. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/scanners/py-ast.mjs +0 -0
  190. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/scanners/routes.mjs +0 -0
  191. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/scanners/schemas.mjs +0 -0
  192. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/scanners/semantic-claims.mjs +0 -0
  193. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/shared-ignore.mjs +0 -0
  194. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/shared-source.mjs +0 -0
  195. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/shared-trace-patterns.mjs +0 -0
  196. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/shared.mjs +0 -0
  197. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validator-markers.mjs +0 -0
  198. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/api-surface.mjs +0 -0
  199. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/architecture.mjs +0 -0
  200. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/canonical-sync.mjs +0 -0
  201. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/changelog.mjs +0 -0
  202. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/cross-reference.mjs +0 -0
  203. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/doc-quality.mjs +0 -0
  204. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/docs-coverage.mjs +0 -0
  205. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/docs-diff.mjs +0 -0
  206. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/docs-sync.mjs +0 -0
  207. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/drift.mjs +0 -0
  208. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/environment.mjs +0 -0
  209. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/freshness.mjs +0 -0
  210. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/generated-staleness.mjs +0 -0
  211. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/metadata-sync.mjs +0 -0
  212. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/metrics-consistency.mjs +0 -0
  213. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/schema-sync.mjs +0 -0
  214. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/security.mjs +0 -0
  215. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/spec-kit.mjs +0 -0
  216. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/structure.mjs +0 -0
  217. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/surface-sync.mjs +0 -0
  218. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/test-spec.mjs +0 -0
  219. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/todo-tracking.mjs +0 -0
  220. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/validators/traceability.mjs +0 -0
  221. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/writers/api-reference.mjs +0 -0
  222. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/writers/doc-generators.mjs +0 -0
  223. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/writers/fix-memory.mjs +0 -0
  224. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/writers/generate-io.mjs +0 -0
  225. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/writers/mechanical.mjs +0 -0
  226. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/writers/sarif.mjs +0 -0
  227. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/cli/writers/sections.mjs +0 -0
  228. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/commands/docguard.fix.md +0 -0
  229. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/commands/docguard.guard.md +0 -0
  230. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/commands/docguard.review.md +0 -0
  231. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/commands/docguard.score.md +0 -0
  232. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/configs/fastify.json +0 -0
  233. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/configs/generic.json +0 -0
  234. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/configs/nextjs.json +0 -0
  235. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/configs/python.json +0 -0
  236. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/docguard_cli/__init__.py +0 -0
  237. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/docguard_cli/wrapper.py +0 -0
  238. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/docs/ai-integration.md +0 -0
  239. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/docs/commands.md +0 -0
  240. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/docs/configuration.md +0 -0
  241. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/docs/doc-sections.md +0 -0
  242. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/docs/faq.md +0 -0
  243. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/docs/installation.md +0 -0
  244. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/docs/profiles.md +0 -0
  245. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/docs/quickstart.md +0 -0
  246. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/docs-canonical/CI-RECIPES.md +0 -0
  247. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/docs-canonical/DATA-MODEL.md +0 -0
  248. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/docs-canonical/ENVIRONMENT.md +0 -0
  249. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/docs-canonical/REQUIREMENTS.md +0 -0
  250. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/docs-canonical/SECURITY.md +0 -0
  251. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/docs-canonical/SURFACE-AUDIT.md +0 -0
  252. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/docs-canonical/TEST-SPEC.md +0 -0
  253. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/docs-implementation/MIGRATION-v0.20.md +0 -0
  254. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/examples/01-express-api/README.md +0 -0
  255. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/examples/01-express-api/package.json +0 -0
  256. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/examples/01-express-api/server.js +0 -0
  257. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/examples/02-python-flask/README.md +0 -0
  258. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/examples/02-python-flask/app.py +0 -0
  259. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/examples/02-python-flask/docs-canonical/ARCHITECTURE.md +0 -0
  260. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/examples/02-python-flask/requirements.txt +0 -0
  261. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/examples/03-spec-kit-project/CHANGELOG.md +0 -0
  262. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/examples/03-spec-kit-project/README.md +0 -0
  263. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/examples/03-spec-kit-project/docs-canonical/ARCHITECTURE.md +0 -0
  264. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/examples/03-spec-kit-project/docs-canonical/TEST-SPEC.md +0 -0
  265. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/examples/03-spec-kit-project/package.json +0 -0
  266. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/examples/03-spec-kit-project/src/index.js +0 -0
  267. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/examples/03-spec-kit-project/tasks.json +0 -0
  268. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/examples/03-spec-kit-project/tests/basic.test.js +0 -0
  269. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/examples/README.md +0 -0
  270. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/extensions/spec-kit-docguard/LICENSE +0 -0
  271. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/extensions/spec-kit-docguard/README.md +0 -0
  272. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/extensions/spec-kit-docguard/commands/diagnose.md +0 -0
  273. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/extensions/spec-kit-docguard/commands/fix.md +0 -0
  274. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/extensions/spec-kit-docguard/commands/generate.md +0 -0
  275. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/extensions/spec-kit-docguard/commands/guard.md +0 -0
  276. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/extensions/spec-kit-docguard/commands/init.md +0 -0
  277. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/extensions/spec-kit-docguard/commands/score.md +0 -0
  278. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/extensions/spec-kit-docguard/commands/sync.md +0 -0
  279. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/extensions/spec-kit-docguard/commands/trace.md +0 -0
  280. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/extensions/spec-kit-docguard/scripts/bash/common.sh +0 -0
  281. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/extensions/spec-kit-docguard/scripts/bash/docguard-check-docs.sh +0 -0
  282. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/extensions/spec-kit-docguard/scripts/bash/docguard-init-doc.sh +0 -0
  283. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/extensions/spec-kit-docguard/scripts/bash/docguard-suggest-fix.sh +0 -0
  284. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/extensions/spec-kit-docguard/templates/extensions.yml +0 -0
  285. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/extensions/spec-kit-docguard/templates/github-workflows/docguard-autofix.yml +0 -0
  286. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/extensions/spec-kit-docguard/templates/github-workflows/docguard-guard.yml +0 -0
  287. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/llms-full.txt +0 -0
  288. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/llms.txt +0 -0
  289. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/package-lock.json +0 -0
  290. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/specs/001-fix-ignore-validators/plan.md +0 -0
  291. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/specs/001-fix-ignore-validators/spec.md +0 -0
  292. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/specs/001-fix-ignore-validators/tasks.md +0 -0
  293. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/specs/002-fix-test-discovery/plan.md +0 -0
  294. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/specs/002-fix-test-discovery/spec.md +0 -0
  295. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/specs/002-fix-test-discovery/tasks.md +0 -0
  296. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/specs/003-v011-false-positives/plan.md +0 -0
  297. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/specs/003-v011-false-positives/spec.md +0 -0
  298. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/specs/003-v011-false-positives/tasks.md +0 -0
  299. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/specs/004-v020-env-var-false-negative/spec.md +0 -0
  300. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/specs/005-hugocross-next-bugs/spec.md +0 -0
  301. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/ADR.md.template +0 -0
  302. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/AGENTS.md.template +0 -0
  303. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/ARCHITECTURE.md.template +0 -0
  304. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/CHANGELOG.md.template +0 -0
  305. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/CURRENT-STATE.md.template +0 -0
  306. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/DATA-MODEL.md.template +0 -0
  307. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/DEPLOYMENT.md.template +0 -0
  308. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/DRIFT-LOG.md.template +0 -0
  309. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/ENVIRONMENT.md.template +0 -0
  310. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/KNOWN-GOTCHAS.md.template +0 -0
  311. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/REQUIREMENTS.md.template +0 -0
  312. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/ROADMAP.md.template +0 -0
  313. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/RUNBOOKS.md.template +0 -0
  314. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/SECURITY.md.template +0 -0
  315. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/TEST-SPEC.md.template +0 -0
  316. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/TROUBLESHOOTING.md.template +0 -0
  317. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/VENDOR-BUGS.md.template +0 -0
  318. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/ci/github-actions.yml +0 -0
  319. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/commands/docguard.fix.md +0 -0
  320. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/commands/docguard.guard.md +0 -0
  321. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/commands/docguard.init.md +0 -0
  322. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/commands/docguard.review.md +0 -0
  323. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/commands/docguard.update.md +0 -0
  324. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/demo-fixture/.docguard.json +0 -0
  325. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/demo-fixture/.env.example +0 -0
  326. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/demo-fixture/AGENTS.md +0 -0
  327. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/demo-fixture/CHANGELOG.md +0 -0
  328. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/demo-fixture/DRIFT-LOG.md +0 -0
  329. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/demo-fixture/README.md +0 -0
  330. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/demo-fixture/docs-canonical/API-REFERENCE.md +0 -0
  331. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/demo-fixture/docs-canonical/ARCHITECTURE.md +0 -0
  332. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/demo-fixture/docs-canonical/DATA-MODEL.md +0 -0
  333. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/demo-fixture/docs-canonical/ENVIRONMENT.md +0 -0
  334. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/demo-fixture/docs-canonical/SECURITY.md +0 -0
  335. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/demo-fixture/docs-canonical/TEST-SPEC.md +0 -0
  336. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/demo-fixture/package.json +0 -0
  337. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/demo-fixture/src/api.mjs +0 -0
  338. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/demo-fixture/src/notifier.mjs +0 -0
  339. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/demo-fixture/src/scheduler.mjs +0 -0
  340. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/templates/demo-fixture/src/worker.mjs +0 -0
  341. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/agent-readability.test.mjs +0 -0
  342. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/agent.test.mjs +0 -0
  343. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/agents-sync.test.mjs +0 -0
  344. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/anchor-autofix.test.mjs +0 -0
  345. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/api-doc.test.mjs +0 -0
  346. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/api-surface.test.mjs +0 -0
  347. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/api-write.test.mjs +0 -0
  348. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/architecture.test.mjs +0 -0
  349. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/b7-node-env-symmetry.test.mjs +0 -0
  350. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/backup-failure.test.mjs +0 -0
  351. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/canonical-sync.test.mjs +0 -0
  352. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/cdk-detection.test.mjs +0 -0
  353. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/changed-only-scoping.test.mjs +0 -0
  354. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/changed-only.test.mjs +0 -0
  355. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/changelog.test.mjs +0 -0
  356. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/commands.test.mjs +0 -0
  357. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/cross-reference.test.mjs +0 -0
  358. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/demo-command.test.mjs +0 -0
  359. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/doc-quality.test.mjs +0 -0
  360. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/doc-section-synonyms.test.mjs +0 -0
  361. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/docguardignore.test.mjs +0 -0
  362. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/docs-coverage.test.mjs +0 -0
  363. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/docs-diff.test.mjs +0 -0
  364. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/docs-sync.test.mjs +0 -0
  365. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/drift.test.mjs +0 -0
  366. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/ensure-skills-idempotent.test.mjs +0 -0
  367. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/env-schema-detection.test.mjs +0 -0
  368. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/environment.test.mjs +0 -0
  369. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/explain-coverage.test.mjs +0 -0
  370. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/field-report-2-cli.test.mjs +0 -0
  371. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/field-report-3-deferred.test.mjs +0 -0
  372. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/fix-memory.test.mjs +0 -0
  373. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/fix-suppression.test.mjs +0 -0
  374. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/fixture-projects.test.mjs +0 -0
  375. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/freshness.test.mjs +0 -0
  376. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/frontend-deep.test.mjs +0 -0
  377. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/frontend.test.mjs +0 -0
  378. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/generated-staleness.test.mjs +0 -0
  379. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/guard-classify.test.mjs +0 -0
  380. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/guard-no-throw.test.mjs +0 -0
  381. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/i18n.test.mjs +0 -0
  382. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/impact.test.mjs +0 -0
  383. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/init-smart-detection.test.mjs +0 -0
  384. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/integrations.test.mjs +0 -0
  385. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/inventory.test.mjs +0 -0
  386. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/js-ast.test.mjs +0 -0
  387. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/llms-full-pack.test.mjs +0 -0
  388. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/mcp.test.mjs +0 -0
  389. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/mechanical.test.mjs +0 -0
  390. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/memory-plan.test.mjs +0 -0
  391. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/metadata-sync.test.mjs +0 -0
  392. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/metrics-consistency.test.mjs +0 -0
  393. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/metrics-dedup.test.mjs +0 -0
  394. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/monorepo-scanning.test.mjs +0 -0
  395. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/multi-spec.test.mjs +0 -0
  396. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/npm-pack-smoke.test.mjs +0 -0
  397. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/openapi-parse-honesty.test.mjs +0 -0
  398. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/patch-0.11.2.test.mjs +0 -0
  399. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/plan-disk-cache.test.mjs +0 -0
  400. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/profile-flag.test.mjs +0 -0
  401. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/project-type.test.mjs +0 -0
  402. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/py-ast.test.mjs +0 -0
  403. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/regenerate-section.test.mjs +0 -0
  404. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/routes-express-mounts.test.mjs +0 -0
  405. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/routes-fastify.test.mjs +0 -0
  406. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/routes-multilang.test.mjs +0 -0
  407. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/routes-nextjs-app-router.test.mjs +0 -0
  408. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/sarif.test.mjs +0 -0
  409. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/schema-sync.test.mjs +0 -0
  410. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/schemas-multilang.test.mjs +0 -0
  411. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/schemas.test.mjs +0 -0
  412. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/scoping-extended.test.mjs +0 -0
  413. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/score-suggestions.test.mjs +0 -0
  414. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/section-na-markers.test.mjs +0 -0
  415. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/sections.test.mjs +0 -0
  416. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/security-init-injection.test.mjs +0 -0
  417. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/security.test.mjs +0 -0
  418. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/severity.test.mjs +0 -0
  419. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/shared-git.test.mjs +0 -0
  420. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/shared-source.test.mjs +0 -0
  421. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/speckit-bugfix.test.mjs +0 -0
  422. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/starter-scaffold.test.mjs +0 -0
  423. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/stress-test.test.mjs +0 -0
  424. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/structure.test.mjs +0 -0
  425. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/surface-sync.test.mjs +0 -0
  426. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/sweep-nudge.test.mjs +0 -0
  427. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/sync-since.test.mjs +0 -0
  428. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/sync.test.mjs +0 -0
  429. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/test-spec.test.mjs +0 -0
  430. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/todo-tracking.test.mjs +0 -0
  431. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/trace-multilang.test.mjs +0 -0
  432. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/trace-reverse.test.mjs +0 -0
  433. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/traceability.test.mjs +0 -0
  434. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/upgrade-pr-e2e.test.mjs +0 -0
  435. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/upgrade-pr.test.mjs +0 -0
  436. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/upgrade.test.mjs +0 -0
  437. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/v020-consolidation.test.mjs +0 -0
  438. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/validator-markers.test.mjs +0 -0
  439. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/validator-naming.test.mjs +0 -0
  440. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/version-pin.test.mjs +0 -0
  441. {docguard_cli-0.29.0 → docguard_cli-0.30.1}/tests/whats-new.test.mjs +0 -0
@@ -61,10 +61,11 @@ def build(version: str, download_url: str):
61
61
  "name": "DocGuard — CDD Enforcement",
62
62
  "id": "docguard",
63
63
  "description": (
64
- "Canonical-Driven Development enforcement. Validates, scores, "
65
- "and traces project documentation with automated checks, "
66
- "AI-driven workflows, and spec-kit hooks. One pinned runtime "
67
- "dependency; pure Node.js otherwise."
64
+ "The only doc-integrity engine with an MCP server, SARIF "
65
+ "output, and a deterministic zero-LLM core. Validates, "
66
+ "scores, and traces documentation against code — 24 "
67
+ "validators, stable finding codes, GitHub Action with PR "
68
+ "annotations, spec-kit hooks. Pure Node.js, one pinned dep."
68
69
  ),
69
70
  "author": "raccioly",
70
71
  "version": version,
@@ -12,10 +12,15 @@ jobs:
12
12
  runs-on: ubuntu-latest
13
13
  strategy:
14
14
  matrix:
15
- node-version: [18, 20, 22]
15
+ # 24 ships npm 11 — keep it in the matrix so `npm ci` exercises the newer
16
+ # npm that older Nodes (18/20/22 → npm 10) do NOT. This is what catches
17
+ # config/install incompatibilities that npm 10 silently accepts but npm 11
18
+ # treats as fatal (e.g. bug-198: `.npmrc` min-release-age broke the Glama
19
+ # build on npm 11 while all local/CI installs passed). Do not drop 24.
20
+ node-version: [18, 20, 22, 24]
16
21
 
17
22
  steps:
18
- - uses: actions/checkout@v6
23
+ - uses: actions/checkout@v7
19
24
  with:
20
25
  fetch-depth: 0 # Full git history for freshness validator
21
26
 
@@ -97,7 +102,7 @@ jobs:
97
102
  if: startsWith(github.ref, 'refs/tags/v')
98
103
  needs: test
99
104
  steps:
100
- - uses: actions/checkout@v6
105
+ - uses: actions/checkout@v7
101
106
  - uses: actions/setup-node@v6
102
107
  with:
103
108
  node-version: 20
@@ -0,0 +1,85 @@
1
+ name: Jules PR Triage
2
+
3
+ # Auto-triage PRs opened by the Google Jules agents (Sentinel/Bolt/Palette).
4
+ # Keeps Jules ON (it stays useful for genuinely-new work) while automatically
5
+ # clearing the duplicate/already-resolved noise it tends to produce, and giving
6
+ # it per-PR feedback (a comment mentioning @jules) so it learns.
7
+ #
8
+ # SECURITY: uses pull_request_target (needs write to comment/close/label on the
9
+ # PR), but reads only PR METADATA (title, author) via the API and NEVER checks
10
+ # out or runs the PR's code — so the elevated token is never exposed to
11
+ # PR-controlled content. (Matches the AGENTS.md CI rule.)
12
+
13
+ on:
14
+ pull_request_target:
15
+ types: [opened, reopened]
16
+
17
+ permissions:
18
+ pull-requests: write
19
+ issues: write
20
+ contents: read
21
+
22
+ jobs:
23
+ triage:
24
+ # Only act on the Jules bot's PRs; everything else is untouched.
25
+ if: github.event.pull_request.user.login == 'google-labs-jules[bot]'
26
+ runs-on: ubuntu-latest
27
+ steps:
28
+ - name: Triage the Jules PR
29
+ uses: actions/github-script@v9
30
+ with:
31
+ script: |
32
+ const pr = context.payload.pull_request;
33
+ const num = pr.number;
34
+ const title = pr.title || '';
35
+ const owner = context.repo.owner;
36
+ const repo = context.repo.repo;
37
+
38
+ // Known-noise classes for THIS repo (see .jules/*.md RESOLVED markers).
39
+ const NOISE = [
40
+ /command injection|exec(File)?Sync/i, // Sentinel — fixed v0.21.1 + #296
41
+ /performance|optimi[sz]e|precompute|pre-?compile|O\(N|single-pass|\bset\b.*comparison|tolowercase|basenames?/i, // Bolt — applied + refactored
42
+ /no (web )?ui|no changes? (needed|required)|no ux|no-op/i, // Palette — no UI in this repo
43
+ ];
44
+ const isNoise = NOISE.some((re) => re.test(title));
45
+
46
+ // Duplicate detection: another OPEN Jules PR with an equivalent title.
47
+ const norm = (s) => (s || '')
48
+ .toLowerCase()
49
+ .replace(/[^a-z0-9]+/g, ' ')
50
+ .replace(/\b(sentinel|bolt|palette|critical|high|medium|low|fix|the|a|an|via|in|of|for|to|and)\b/g, ' ')
51
+ .replace(/\s+/g, ' ')
52
+ .trim();
53
+ const mine = norm(title);
54
+ const { data: open } = await github.rest.pulls.list({ owner, repo, state: 'open', per_page: 100 });
55
+ const dup = mine && open.find((p) => p.number !== num && norm(p.title) === mine);
56
+
57
+ const addLabel = async (name) => {
58
+ try {
59
+ await github.rest.issues.addLabels({ owner, repo, issue_number: num, labels: [name] });
60
+ } catch (e) { core.info(`label "${name}" skipped: ${e.message}`); }
61
+ };
62
+
63
+ if (isNoise || dup) {
64
+ const reason = dup
65
+ ? `a duplicate of #${dup.number}`
66
+ : 'a class already resolved or not applicable in this repo';
67
+ await github.rest.issues.createComment({
68
+ owner, repo, issue_number: num,
69
+ body:
70
+ `🤖 **Auto-triaged as stale** — ${reason}.\n\n` +
71
+ `@jules please stop opening PRs for this topic: it is covered by the RESOLVED markers in \`.jules/sentinel.md\` / \`.jules/bolt.md\` / \`.jules/palette.md\` and the **Automated agents** rule in \`AGENTS.md\` (search open **and** closed PRs first; never duplicate; only open a new PR for a genuinely-new finding with evidence — an exploit/failing test for security, or a >20% real-workload benchmark for performance). Closing to keep the queue clean.`,
72
+ });
73
+ await addLabel('jules-autoclosed');
74
+ await github.rest.pulls.update({ owner, repo, pull_number: num, state: 'closed' });
75
+ core.notice(`Closed #${num} (${reason}).`);
76
+ } else {
77
+ await addLabel('jules-review');
78
+ await github.rest.issues.createComment({
79
+ owner, repo, issue_number: num,
80
+ body:
81
+ `🔎 **Flagged for human review** — this looks like a *new, non-duplicate* change from @jules. ` +
82
+ `A maintainer should verify it against \`docguard guard\` + the test suite before merge.`,
83
+ });
84
+ core.notice(`#${num} flagged for human review.`);
85
+ }
@@ -19,7 +19,7 @@ jobs:
19
19
  version: ${{ steps.check.outputs.version }}
20
20
  changed: ${{ steps.check.outputs.changed }}
21
21
  steps:
22
- - uses: actions/checkout@v6
22
+ - uses: actions/checkout@v7
23
23
  with:
24
24
  fetch-depth: 1 # only need HEAD's package.json; the tag check hits the remote
25
25
 
@@ -52,9 +52,11 @@ jobs:
52
52
  runs-on: ubuntu-latest
53
53
  strategy:
54
54
  matrix:
55
- node-version: [18, 20, 22]
55
+ # 24 = npm 11 coverage (18/20/22 ship npm 10). Gates releases on the
56
+ # newer npm so a version-incompatible .npmrc / install can't ship (bug-198).
57
+ node-version: [18, 20, 22, 24]
56
58
  steps:
57
- - uses: actions/checkout@v6
59
+ - uses: actions/checkout@v7
58
60
  with:
59
61
  fetch-depth: 0
60
62
  - uses: actions/setup-node@v6
@@ -75,7 +77,7 @@ jobs:
75
77
  outputs:
76
78
  tag: v${{ needs.detect-version.outputs.version }}
77
79
  steps:
78
- - uses: actions/checkout@v6
80
+ - uses: actions/checkout@v7
79
81
  with:
80
82
  fetch-depth: 0 # Fetch all history + tags for reliable tag detection
81
83
 
@@ -132,7 +134,7 @@ jobs:
132
134
  needs: [detect-version, create-release]
133
135
  runs-on: ubuntu-latest
134
136
  steps:
135
- - uses: actions/checkout@v6
137
+ - uses: actions/checkout@v7
136
138
 
137
139
  - name: Build extension ZIP
138
140
  run: |
@@ -157,7 +159,7 @@ jobs:
157
159
  needs: [detect-version, test, create-release]
158
160
  runs-on: ubuntu-latest
159
161
  steps:
160
- - uses: actions/checkout@v6
162
+ - uses: actions/checkout@v7
161
163
  - uses: actions/setup-node@v6
162
164
  with:
163
165
  node-version: 20
@@ -173,7 +175,7 @@ jobs:
173
175
  needs: [detect-version, test, create-release]
174
176
  runs-on: ubuntu-latest
175
177
  steps:
176
- - uses: actions/checkout@v6
178
+ - uses: actions/checkout@v7
177
179
  - uses: actions/setup-python@v6
178
180
  with:
179
181
  python-version: '3.12'
@@ -215,7 +217,7 @@ jobs:
215
217
  issues: write # reminder issue in THIS repo only — never github/spec-kit
216
218
  steps:
217
219
  - name: Checkout docguard repo
218
- uses: actions/checkout@v6
220
+ uses: actions/checkout@v7
219
221
 
220
222
  - name: Get version and metadata
221
223
  id: meta
@@ -30,7 +30,7 @@ jobs:
30
30
 
31
31
  steps:
32
32
  - name: Checkout docguard repo
33
- uses: actions/checkout@v6
33
+ uses: actions/checkout@v7
34
34
 
35
35
  - name: Get version and metadata
36
36
  id: meta
@@ -0,0 +1,24 @@
1
+ # Bolt — performance learnings
2
+
3
+ > ⛔ **STOP / DO-NOT-DUPLICATE.** Before opening ANY PR, search existing **open
4
+ > AND closed** PRs. Dozens of duplicate "optimize diffTests / Set cross-compare
5
+ > / precompute toLowerCase / pre-compile RegExp" PRs were closed as noise.
6
+ > **Do NOT open another micro-optimization PR** unless you include a **benchmark
7
+ > showing >20% wall-clock improvement on a realistic workload** (a real repo,
8
+ > not a synthetic loop). A theoretical Big-O note is NOT sufficient justification.
9
+
10
+ ## ✅ APPLIED / EVALUATED — the recurring diff & scan optimizations (do NOT re-open)
11
+
12
+ The learnings below have already been applied where they helped, and the
13
+ affected code (`cli/commands/diff.mjs`, `cli/validators/*`, the scanners) was
14
+ substantially **refactored in v0.29–v0.30** — PRs written against the old shape
15
+ no longer apply and just create merge noise.
16
+
17
+ - **Early-return in `checkUntrackedTodos`** — already in place.
18
+ - **Precompute `.toLowerCase()` / `.substring()` outside loops** — applied where
19
+ it mattered; the remaining cases are not hot paths.
20
+ - **Pre-compile `RegExp` outside nested loops** — applied in the scanners.
21
+
22
+ These are recorded as historical context, **not** as standing mandates to
23
+ re-scan for on every run. The DocGuard test suite (898 tests) and CI already
24
+ guard against regressions here.
@@ -0,0 +1,11 @@
1
+ # Palette — UX learnings
2
+
3
+ > ⛔ **STOP.** This repository has **no user-facing UI**: it is a Node.js CLI
4
+ > plus config/docs. There is **no web frontend** (no HTML/CSS/React/Vue) and
5
+ > **no VS Code extension** (it was removed). Palette therefore has nothing to
6
+ > act on here. **Do NOT open UX PRs** — the past "No web UI components" /
7
+ > "No changes required" no-op PRs were closed as noise. Skip this repo.
8
+
9
+ Historical note: earlier learnings referenced a VS Code extension (status-bar
10
+ tooltips, loading spinners). That extension no longer exists in this repo, so
11
+ those notes are obsolete and must not be acted on.
@@ -0,0 +1,24 @@
1
+ # Sentinel — security learnings
2
+
3
+ > ⛔ **STOP / DO-NOT-DUPLICATE.** Before opening ANY PR, search existing **open
4
+ > AND closed** PRs and issues. If the topic below is already covered, do NOT
5
+ > open another PR — dozens of duplicate command-injection PRs were closed as
6
+ > noise. Only open a PR for a **new, unaddressed** finding, with a concrete
7
+ > exploit path or failing test as evidence.
8
+
9
+ ## ✅ RESOLVED — Command Injection via execSync (do NOT re-open)
10
+
11
+ **Status: FIXED and CLOSED. Do not open further PRs about `execSync` / command injection.**
12
+
13
+ - The real vulnerability (issue #190) was fixed in **v0.21.1** by switching the
14
+ `specify`-spawning path to `execFileSync` (arguments as an array — no shell
15
+ interpolation).
16
+ - The last shell-interpolated `execSync` (dead code in `setup.mjs`'s unused
17
+ `isCliAvailable`) was removed in **PR #296**.
18
+ - Every remaining `execSync` in `cli/` uses a **static string literal**
19
+ (`git rev-parse …`, `git rev-list --count HEAD`, `git log … | wc -l`) with
20
+ **no variable interpolation** — not injectable. Leave them as-is; do not "fix" them.
21
+
22
+ Historical note (kept for context, not for re-application): interpolating
23
+ `projectDir`/`filePath` into a shell string allowed `;`/`&&`/`||` injection;
24
+ `execFileSync` with an args array prevents it. Lesson recorded — already applied.
@@ -19,9 +19,12 @@ export OPENAI_API_KEY="dummy-openai-key"
19
19
  # 2. Ecosystem-Specific Dependency Installation
20
20
  # ------------------------------------------
21
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
22
+ # DocGuard has one exact-pinned runtime dep (@babel/parser). Use `npm ci`, NOT
23
+ # `npm install`: `npm ci` installs strictly from package-lock.json and never
24
+ # rewrites it, so it leaves the working tree clean. `npm install` can re-resolve
25
+ # and rewrite package-lock.json, which dirties the tree and makes Jules abort
26
+ # with "Working tree is dirty" after setup.
27
+ npm ci
25
28
 
26
29
  # ------------------------------------------
27
30
  # 3. Ecosystem-Specific Tests & Build Checks
@@ -31,11 +34,21 @@ echo "🧪 === Running Initial Test & Validation ==="
31
34
  npm test || echo "⚠️ Tests failed, but continuing..."
32
35
 
33
36
  echo "🏗️ === Verifying Build Integrity ==="
34
- # Test the primary CLI entrypoint to ensure it is executable
37
+ # Test the primary CLI entrypoint to ensure it is executable.
38
+ # Note: `--version` triggers ensureSkills, which regenerates the tracked
39
+ # `.agent/skills/*.md` files (their `version:` frontmatter tracks the release),
40
+ # so the tree is expected to be dirty right after this — the reset below
41
+ # discards that regeneration.
35
42
  node cli/docguard.mjs --version
36
43
 
37
44
  echo "🧹 === Enforcing Git Tree Integrity ==="
38
- # Jules requires the working directory to be clean after this script runs
45
+ # Jules requires the working directory to be clean after this script runs, and
46
+ # ignores any changes setup makes. `git clean -fd` alone is INSUFFICIENT — it
47
+ # only removes UNTRACKED files, but our churn is in TRACKED files (regenerated
48
+ # .agent/skills). Hard-reset discards tracked modifications; clean -fd sweeps
49
+ # any stray untracked files. `-fd` respects .gitignore, so node_modules (which
50
+ # we just installed) is preserved.
51
+ git reset --hard HEAD
39
52
  git clean -fd || true
40
53
 
41
54
  echo "✅ Jules VM Local Environment is Ready!"
@@ -0,0 +1,13 @@
1
+ # Supply-Chain Security Hardening
2
+ # Applied: 2026-05-14T14:19:27Z
3
+ # ignore-scripts: never run a dependency's install/postinstall scripts (the main
4
+ # supply-chain attack vector). Universally supported across npm versions.
5
+ # audit-level: surface moderate-and-above advisories.
6
+ #
7
+ # NOTE: `min-release-age=7d` was removed 2026-07-06 — newer npm (Node 22+/npm 11+,
8
+ # as used by the Glama MCP build image) rejects the "7d" value ("must be numeric")
9
+ # and HARD-FAILS `npm install` in clean environments (Glama, CI, fresh clones).
10
+ # DocGuard's single runtime dependency is exact-pinned, so the maturity window
11
+ # added little; the exact pin + ignore-scripts + audit-level remain the controls.
12
+ ignore-scripts=true
13
+ audit-level=moderate
@@ -0,0 +1,49 @@
1
+ # DocGuard hooks for the pre-commit framework (https://pre-commit.com).
2
+ #
3
+ # How this works: `language: node` tells pre-commit to install THIS repo with
4
+ # npm into an isolated nodeenv. package.json's `"bin": { "docguard": ... }`
5
+ # is what makes the `docguard` executable in `entry` resolvable — no global
6
+ # install needed on the consumer's machine.
7
+ #
8
+ # ### pre-commit
9
+ # Consumers add this to their project's .pre-commit-config.yaml:
10
+ #
11
+ # repos:
12
+ # - repo: https://github.com/raccioly/docguard
13
+ # rev: v0.29.0
14
+ # hooks:
15
+ # - id: docguard-guard
16
+ #
17
+ # For the full (slower) validator run on push instead of commit:
18
+ #
19
+ # repos:
20
+ # - repo: https://github.com/raccioly/docguard
21
+ # rev: v0.29.0
22
+ # hooks:
23
+ # - id: docguard-guard-full
24
+ #
25
+ # # and install the push-stage hook once per clone:
26
+ # # pre-commit install --hook-type pre-push
27
+ #
28
+ # Both hooks validate the project as a whole (docs vs code), so filenames are
29
+ # never passed and the hooks always run (`pass_filenames: false` +
30
+ # `always_run: true`).
31
+
32
+ - id: docguard-guard
33
+ name: DocGuard guard (changed-only)
34
+ description: Fast doc-drift gate — validates only the docs/code touched in the working tree.
35
+ entry: docguard guard --changed-only --quiet
36
+ language: node
37
+ pass_filenames: false
38
+ always_run: true
39
+
40
+ - id: docguard-guard-full
41
+ name: DocGuard guard (full)
42
+ description: Full DocGuard validator run — every enabled validator, intended for the pre-push stage.
43
+ entry: docguard guard --quiet
44
+ language: node
45
+ pass_filenames: false
46
+ always_run: true
47
+ stages: [pre-push]
48
+ # `pre-push` (vs the legacy `push`) stage name requires pre-commit >= 3.2.
49
+ minimum_pre_commit_version: '3.2.0'
@@ -1,42 +1,51 @@
1
1
  # anatomy.md
2
2
 
3
- > Auto-maintained by OpenWolf. Last scanned: 2026-07-03T20:32:09.442Z
4
- > Files: 649 tracked | Anatomy hits: 0 | Misses: 0
3
+ > Auto-maintained by OpenWolf. Last scanned: 2026-07-06T14:46:58.012Z
4
+ > Files: 670 tracked | Anatomy hits: 0 | Misses: 0
5
5
 
6
6
  ## ../../../../../../../tmp/
7
7
 
8
8
  - `append-buglog.mjs` — Declares path (~1335 tok)
9
9
 
10
+ ## ../../../../../.claude/projects/-Users-ricardoaccioly-Repo-claude-canonical-spec-kit/memory/
11
+
12
+ - `keep-local-main-synced.md` (~276 tok)
13
+
10
14
  ## ./
11
15
 
12
16
  - `.docguard.json` (~526 tok)
13
17
  - `.docguardignore` — # Python distribution artifacts (~199 tok)
14
18
  - `.DS_Store` (~3818 tok)
15
19
  - `.gitignore` — Git ignore rules (~167 tok)
16
- - `.jules-setup.sh` — Google Jules Environment Startup Script (~429 tok)
20
+ - `.jules-setup.sh` — ========================================== (~631 tok)
17
21
  - `.npmignore` — Development (~76 tok)
18
22
  - `.npmrc` — Supply-Chain Security Hardening (~59 tok)
23
+ - `.pre-commit-hooks.yaml` — DocGuard hooks for the pre-commit framework (https://pre-commit.com). (~490 tok)
19
24
  - `action.yml` — Declares fs (~7591 tok)
20
- - `AGENTS.md` — AI Agent Instructions — DocGuard (~1582 tok)
21
- - `CHANGELOG.md` — Changelog (~44379 tok)
25
+ - `AGENTS.md` — AI Agent Instructions — DocGuard (~1827 tok)
26
+ - `CHANGELOG.md` — Changelog (~45081 tok)
22
27
  - `CLAUDE.md` — OpenWolf (~57 tok)
23
28
  - `CODE_OF_CONDUCT.md` — Contributor Covenant Code of Conduct (~532 tok)
24
29
  - `COMPARISONS.md` — Comparisons & Honest Limitations (~3053 tok)
25
30
  - `CONTRIBUTING.md` — Contributing to DocGuard (~1780 tok)
26
31
  - `docguard-cli-0.22.0.tgz` (~80828 tok)
27
32
  - `docguard-cli-0.23.0.tgz` (~81238 tok)
28
- - `DRIFT-LOG.md` — Drift Log (~711 tok)
33
+ - `Dockerfile` — Docker container definition (~204 tok)
34
+ - `DRIFT-LOG.md` — Drift Log (~802 tok)
35
+ - `glama.json` (~29 tok)
29
36
  - `LICENSE` — Project license (~286 tok)
30
37
  - `package-lock.json` — npm lock file (~617 tok)
31
- - `package.json` — Node.js package manifest (~446 tok)
38
+ - `package.json` — Node.js package manifest (~459 tok)
32
39
  - `PHILOSOPHY.md` — The Philosophy of Canonical-Driven Development (~1757 tok)
33
40
  - `pr_description.md` (~260 tok)
34
41
  - `pyproject.toml` — The enforcement tool for Canonical-Driven Development (CDD). Audit, generate, and guard your project (~358 tok)
35
42
  - `README.es.md` — 🛡️ DocGuard (~1098 tok)
36
- - `README.md` — Project documentation (~8061 tok)
43
+ - `README.md` — Project documentation (~8436 tok)
37
44
  - `README.pt-BR.md` — 🛡️ DocGuard (~1075 tok)
38
45
  - `ROADMAP.md` — DocGuard Roadmap (~2432 tok)
39
46
  - `SECURITY.md` — Security Policy (~357 tok)
47
+ - `server.json` (~272 tok)
48
+ - `smithery.yaml` — Smithery configuration for the DocGuard MCP server. (~283 tok)
40
49
  - `STANDARD.md` — DocGuard Standard v0.1 (~6533 tok)
41
50
  - `SUPPLY-CHAIN-AUDIT.md` — Supply-Chain Security Audit (~726 tok)
42
51
  - `SUPPORT.md` — Support (~335 tok)
@@ -938,18 +947,26 @@
938
947
  ## .github/scripts/
939
948
 
940
949
  - `speckit-submission-body.sh` — Build the body for a spec-kit "Extension Submission" issue. (~1482 tok)
941
- - `speckit-submission.py` — Build a spec-kit "Extension Submission" for DocGuard. (~2590 tok)
950
+ - `speckit-submission.py` — Build a spec-kit "Extension Submission" for DocGuard. (~2905 tok)
942
951
 
943
952
  ## .github/workflows/
944
953
 
945
- - `release.yml` — CI: Auto Release — Tag, GitHub Release, npm, PyPI (~3386 tok)
954
+ - `ci.yml` — CI: DocGuard CI (~1041 tok)
955
+ - `release.yml` — CI: Auto Release — Tag, GitHub Release, npm, PyPI (~3434 tok)
946
956
  - `sync-speckit-catalog.yml` — CI: Prepare Spec Kit Catalog Submission (Manual) (~1385 tok)
947
957
 
958
+ ## .jules/
959
+
960
+ - `bolt.md` — Bolt — performance learnings (~333 tok)
961
+ - `palette.md` — Palette — UX learnings (~153 tok)
962
+ - `sentinel.md` — Sentinel — security learnings (~329 tok)
963
+
948
964
  ## cli/
949
965
 
950
966
  - `config.mjs` — DocGuard — configuration loading. (~3265 tok)
951
- - `docguard.mjs` — DocGuard CLI — The enforcement tool for Canonical-Driven Development (CDD) (~9439 tok)
952
- - `findings.mjs` — Findings — the structured, LLM-addressable result unit (v0.27). (~9378 tok)
967
+ - `docguard.mjs` — DocGuard CLI — The enforcement tool for Canonical-Driven Development (CDD) (~9606 tok)
968
+ - `findings.mjs` — Findings — the structured, LLM-addressable result unit (v0.27). (~9698 tok)
969
+ - `shared-git.mjs` — Shared Git Utilities — single source of truth for `git log` plumbing (~1851 tok)
953
970
  - `shared-ignore.mjs` — Shared Ignore Utility — Unified file filtering for all validators. (~4132 tok)
954
971
  - `shared-source.mjs` — Shared Source Resolution — Monorepo-aware source discovery. (~4655 tok)
955
972
  - `shared.mjs` — Shared constants for DocGuard CLI — colors, profiles, version. (~3496 tok)
@@ -965,22 +982,25 @@
965
982
  - `guard.mjs` — Guard Command — Validate project against its canonical documentation (~11608 tok)
966
983
  - `init.mjs` — Init Command — Initialize CDD documentation from templates (~7278 tok)
967
984
  - `llms.mjs` — llms Command — Generate llms.txt from canonical documentation (~2137 tok)
968
- - `mcp.mjs` — MCP Command — DocGuard as a Model Context Protocol server (stdio). (~2902 tok)
985
+ - `mcp.mjs` — MCP Command — DocGuard as a Model Context Protocol server (stdio). (~3098 tok)
969
986
  - `memory.mjs` — Memory Command — v0.17-P2. (~2957 tok)
970
- - `score.mjs` — Score Command — Calculate CDD maturity score (0-100) (~12136 tok)
987
+ - `score.mjs` — Score Command — Calculate CDD maturity score (0-100) (~12221 tok)
988
+ - `setup.mjs` — Setup Command — Interactive onboarding wizard for DocGuard (~5280 tok)
971
989
  - `sync-tests.mjs` — `docguard sync --tests` — reconcile the TEST-SPEC Source-to-Test Map from disk. (~3191 tok)
972
990
  - `sync.mjs` — Sync Command — keep the documentation memory ALWAYS UP TO DATE. (~2371 tok)
973
- - `verify.mjs` — Verify Command — `docguard verify --semantic` (LLM field report #5). (~833 tok)
991
+ - `trace.mjs` — Trace Command — Generate a requirements traceability matrix (~7746 tok)
992
+ - `verify.mjs` — Verify Command — `docguard verify` (LLM field reports #5, #11). (~2118 tok)
974
993
 
975
994
  ## cli/scanners/
976
995
 
977
996
  - `agent-readability.mjs` — Agent Readability scanner — how well do this repo's docs serve an AI agent? (~2228 tok)
997
+ - `instruction-audit.mjs` — Instruction Audit scanner — drift/conflict audit WITHIN agent instruction (~3668 tok)
978
998
  - `inventory.mjs` — Inventory scanners — code-truth the generator PRE-FILLS instead of leaving (~1699 tok)
979
999
  - `memory-plan.mjs` — Memory Plan — the orchestration artifact behind AI-powered Generate. (~5744 tok)
980
1000
  - `project-type.mjs` — Project-Type Detection — the language-agnostic spine. (~4190 tok)
981
1001
  - `routes.mjs` — Deep Route Scanner (~7712 tok)
982
1002
  - `semantic-claims.mjs` — Semantic claim extractor (LLM field report #5). (~1998 tok)
983
- - `speckit.mjs` — Spec Kit Scanner — Detect, validate, and integrate with GitHub Spec Kit (~4785 tok)
1003
+ - `speckit.mjs` — Spec Kit Scanner — Detect, validate, and integrate with GitHub Spec Kit (~8882 tok)
984
1004
 
985
1005
  ## cli/validators/
986
1006
 
@@ -1015,7 +1035,7 @@
1015
1035
 
1016
1036
  ## docs-canonical/
1017
1037
 
1018
- - `ARCHITECTURE.md` — Architecture (~2883 tok)
1038
+ - `ARCHITECTURE.md` — Architecture (~3029 tok)
1019
1039
  - `DATA-MODEL.md` — Data Model (~1668 tok)
1020
1040
  - `REQUIREMENTS.md` — Requirements (~673 tok)
1021
1041
  - `SURFACE-AUDIT.md` — DocGuard Surface Audit (~5703 tok)
@@ -1031,9 +1051,17 @@
1031
1051
 
1032
1052
  - `extension.yml` (~1026 tok)
1033
1053
 
1054
+ ## packaging/
1055
+
1056
+ - `submissions.md` — DocGuard — Distribution-Channel Submissions (v0.29.0) (~1728 tok)
1057
+
1058
+ ## packaging/homebrew/
1059
+
1060
+ - `docguard.rb` — typed: false (~373 tok)
1061
+
1034
1062
  ## schemas/
1035
1063
 
1036
- - `docguard-config.schema.json` — behavior: docs (~2889 tok)
1064
+ - `docguard-config.schema.json` — behavior: docs (~3015 tok)
1037
1065
 
1038
1066
  ## templates/
1039
1067
 
@@ -1042,6 +1070,10 @@
1042
1070
  - `SECURITY.md.template` — Security (~342 tok)
1043
1071
  - `TEST-SPEC.md.template` — /*.ts --> | <!-- e.g. tests/unit/**/*.test.ts --> | Unit | (~771 tok)
1044
1072
 
1073
+ ## templates/ci/
1074
+
1075
+ - `gitlab-component.yml` — DocGuard — GitLab CI/CD component (CI/CD Catalog style, spec:inputs syntax). (~906 tok)
1076
+
1045
1077
  ## templates/commands/
1046
1078
 
1047
1079
  - `docguard.fix.md` — /docguard.fix — Find and Fix CDD Documentation Issues (~771 tok)
@@ -1061,6 +1093,8 @@
1061
1093
  - `field-report-3-deferred.test.mjs` — v0.28 — the detection-gap items deferred from LLM field report #3. (~3122 tok)
1062
1094
  - `field-report-3.test.mjs` — v0.27 — LLM field report #3. (~3315 tok)
1063
1095
  - `freshness.test.mjs` — runGit: commitOldCode (~3536 tok)
1096
+ - `hooks.test.mjs` — Declares afterFirst (~2420 tok)
1097
+ - `instruction-audit.test.mjs` — Instruction Audit scanner tests (field report #11 — MemoryLint-inspired). (~2387 tok)
1064
1098
  - `inventory.test.mjs` — Declares make (~1048 tok)
1065
1099
  - `llms-full-pack.test.mjs` — CLI: run (~1304 tok)
1066
1100
  - `mcp.test.mjs` — MCP Server Tests — `docguard mcp` over stdio. (~2138 tok)
@@ -1071,3 +1105,5 @@
1071
1105
  - `project-type.test.mjs` — Declares make (~2140 tok)
1072
1106
  - `sarif.test.mjs` — Declares CLI (~1455 tok)
1073
1107
  - `shared-source.test.mjs` — API routes: GET (4 endpoints) (~1714 tok)
1108
+ - `speckit-phantom.test.mjs` — Exports users, fetchUserRecords, retry, adapter + 2 more (~2500 tok)
1109
+ - `trace-features.test.mjs` — `trace --features` — per-feature spec-kit adherence scoring. (~2423 tok)