docguard-cli 0.11.1__tar.gz → 0.12.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.
- {docguard_cli-0.11.1/extensions/spec-kit-docguard → docguard_cli-0.12.0/.agent}/skills/docguard-fix/SKILL.md +2 -2
- {docguard_cli-0.11.1/extensions/spec-kit-docguard → docguard_cli-0.12.0/.agent}/skills/docguard-guard/SKILL.md +2 -2
- {docguard_cli-0.11.1/extensions/spec-kit-docguard → docguard_cli-0.12.0/.agent}/skills/docguard-review/SKILL.md +2 -2
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/skills/docguard-score/SKILL.md +2 -2
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/skills/docguard-sync/SKILL.md +1 -1
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.docguard.json +7 -8
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/AGENTS.md +1 -1
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/CHANGELOG.md +73 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/PKG-INFO +35 -16
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/README.md +34 -15
- docguard_cli-0.12.0/action.yml +331 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/commands/diff.mjs +15 -17
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/commands/guard.mjs +124 -7
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/commands/init.mjs +52 -1
- docguard_cli-0.12.0/cli/commands/upgrade.mjs +250 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/docguard.mjs +32 -3
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/ensure-skills.mjs +8 -1
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/shared-ignore.mjs +50 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/shared-source.mjs +17 -6
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/shared.mjs +62 -0
- docguard_cli-0.12.0/cli/validators/cross-reference.mjs +281 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/validators/docs-coverage.mjs +4 -1
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/validators/environment.mjs +9 -3
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/commands/docguard.guard.md +2 -2
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/docs/quickstart.md +1 -1
- docguard_cli-0.12.0/docs-canonical/CI-RECIPES.md +216 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/extensions/spec-kit-docguard/README.md +1 -1
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/extensions/spec-kit-docguard/commands/guard.md +1 -1
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/extensions/spec-kit-docguard/extension.yml +11 -1
- {docguard_cli-0.11.1/.agent → docguard_cli-0.12.0/extensions/spec-kit-docguard}/skills/docguard-fix/SKILL.md +2 -2
- {docguard_cli-0.11.1/.agent → docguard_cli-0.12.0/extensions/spec-kit-docguard}/skills/docguard-guard/SKILL.md +3 -3
- {docguard_cli-0.11.1/.agent → docguard_cli-0.12.0/extensions/spec-kit-docguard}/skills/docguard-review/SKILL.md +2 -2
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/extensions/spec-kit-docguard/skills/docguard-score/SKILL.md +2 -2
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/extensions/spec-kit-docguard/skills/docguard-sync/SKILL.md +1 -1
- docguard_cli-0.12.0/extensions/spec-kit-docguard/templates/github-workflows/docguard-autofix.yml +51 -0
- docguard_cli-0.12.0/extensions/spec-kit-docguard/templates/github-workflows/docguard-guard.yml +48 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/package.json +1 -1
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/pyproject.toml +1 -1
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/commands/docguard.guard.md +2 -2
- docguard_cli-0.12.0/tests/changed-only.test.mjs +74 -0
- docguard_cli-0.12.0/tests/cross-reference.test.mjs +224 -0
- docguard_cli-0.12.0/tests/docguardignore.test.mjs +138 -0
- docguard_cli-0.12.0/tests/patch-0.11.2.test.mjs +103 -0
- docguard_cli-0.12.0/tests/severity.test.mjs +179 -0
- docguard_cli-0.12.0/tests/sweep-nudge.test.mjs +110 -0
- docguard_cli-0.12.0/tests/upgrade.test.mjs +131 -0
- docguard_cli-0.11.1/action.yml +0 -166
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/commands/speckit.analyze.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/commands/speckit.checklist.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/commands/speckit.clarify.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/commands/speckit.constitution.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/commands/speckit.implement.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/commands/speckit.plan.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/commands/speckit.specify.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/commands/speckit.tasks.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/commands/speckit.taskstoissues.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/skills/speckit-analyze/SKILL.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/skills/speckit-checklist/SKILL.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/skills/speckit-clarify/SKILL.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/skills/speckit-constitution/SKILL.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/skills/speckit-implement/SKILL.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/skills/speckit-plan/SKILL.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/skills/speckit-specify/SKILL.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/skills/speckit-tasks/SKILL.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.agent/skills/speckit-taskstoissues/SKILL.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.docguardignore +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.github/dependabot.yml +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.github/scripts/patch-catalog.py +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.github/workflows/ci.yml +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.github/workflows/release.yml +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.github/workflows/supply-chain.yml +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.github/workflows/sync-speckit-catalog.yml +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.gitignore +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.jules/bolt.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.jules/palette.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.jules/sentinel.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.npmignore +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.npmrc +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.specify/extensions/.cache/catalog-ebf165086500aab1-metadata.json +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.specify/extensions/.cache/catalog-ebf165086500aab1.json +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.specify/extensions/.cache/catalog-metadata.json +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.specify/extensions/.cache/catalog.json +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.specify/init-options.json +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.specify/memory/constitution.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.specify/scripts/bash/check-prerequisites.sh +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.specify/scripts/bash/common.sh +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.specify/scripts/bash/create-new-feature.sh +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.specify/scripts/bash/setup-plan.sh +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.specify/scripts/bash/update-agent-context.sh +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.specify/templates/agent-file-template.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.specify/templates/checklist-template.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.specify/templates/constitution-template.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.specify/templates/plan-template.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.specify/templates/spec-template.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/.specify/templates/tasks-template.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/CODE_OF_CONDUCT.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/COMPARISONS.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/CONTRIBUTING.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/DRIFT-LOG.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/LICENSE +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/PHILOSOPHY.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/ROADMAP.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/SECURITY.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/STANDARD.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/SUPPLY-CHAIN-AUDIT.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/SUPPORT.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/commands/agents.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/commands/badge.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/commands/ci.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/commands/diagnose.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/commands/fix.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/commands/generate.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/commands/hooks.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/commands/llms.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/commands/publish.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/commands/score.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/commands/setup.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/commands/sync.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/commands/trace.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/commands/watch.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/scanners/api-doc.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/scanners/cdk.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/scanners/doc-tools.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/scanners/frontend.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/scanners/iac.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/scanners/integrations.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/scanners/memory-plan.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/scanners/project-type.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/scanners/routes.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/scanners/schemas.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/scanners/speckit.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/validators/api-surface.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/validators/architecture.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/validators/changelog.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/validators/doc-quality.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/validators/docs-diff.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/validators/docs-sync.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/validators/drift.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/validators/freshness.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/validators/metadata-sync.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/validators/metrics-consistency.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/validators/schema-sync.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/validators/security.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/validators/structure.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/validators/test-spec.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/validators/todo-tracking.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/validators/traceability.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/writers/api-reference.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/writers/mechanical.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/cli/writers/sections.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/commands/docguard.fix.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/commands/docguard.review.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/commands/docguard.score.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/configs/fastify.json +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/configs/generic.json +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/configs/nextjs.json +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/configs/python.json +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/docguard_cli/__init__.py +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/docguard_cli/wrapper.py +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/docs/ai-integration.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/docs/commands.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/docs/configuration.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/docs/doc-sections.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/docs/faq.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/docs/installation.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/docs/profiles.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/docs-canonical/ARCHITECTURE.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/docs-canonical/DATA-MODEL.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/docs-canonical/ENVIRONMENT.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/docs-canonical/SECURITY.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/docs-canonical/TEST-SPEC.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/examples/01-express-api/README.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/examples/01-express-api/package.json +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/examples/01-express-api/server.js +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/examples/02-python-flask/README.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/examples/02-python-flask/app.py +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/examples/02-python-flask/docs-canonical/ARCHITECTURE.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/examples/02-python-flask/requirements.txt +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/examples/03-spec-kit-project/CHANGELOG.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/examples/03-spec-kit-project/README.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/examples/03-spec-kit-project/docs-canonical/ARCHITECTURE.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/examples/03-spec-kit-project/docs-canonical/TEST-SPEC.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/examples/03-spec-kit-project/package.json +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/examples/03-spec-kit-project/src/index.js +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/examples/03-spec-kit-project/tests/basic.test.js +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/examples/README.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/extensions/spec-kit-docguard/LICENSE +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/extensions/spec-kit-docguard/commands/diagnose.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/extensions/spec-kit-docguard/commands/fix.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/extensions/spec-kit-docguard/commands/generate.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/extensions/spec-kit-docguard/commands/init.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/extensions/spec-kit-docguard/commands/score.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/extensions/spec-kit-docguard/commands/sync.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/extensions/spec-kit-docguard/commands/trace.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/extensions/spec-kit-docguard/scripts/bash/common.sh +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/extensions/spec-kit-docguard/scripts/bash/docguard-check-docs.sh +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/extensions/spec-kit-docguard/scripts/bash/docguard-init-doc.sh +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/extensions/spec-kit-docguard/scripts/bash/docguard-suggest-fix.sh +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/extensions/spec-kit-docguard/templates/extensions.yml +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/pr_description.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/specs/001-fix-ignore-validators/plan.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/specs/001-fix-ignore-validators/spec.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/specs/001-fix-ignore-validators/tasks.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/specs/002-fix-test-discovery/plan.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/specs/002-fix-test-discovery/spec.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/specs/002-fix-test-discovery/tasks.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/specs/003-v011-false-positives/plan.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/specs/003-v011-false-positives/spec.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/specs/003-v011-false-positives/tasks.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/ADR.md.template +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/AGENTS.md.template +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/ARCHITECTURE.md.template +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/CHANGELOG.md.template +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/CURRENT-STATE.md.template +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/DATA-MODEL.md.template +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/DEPLOYMENT.md.template +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/DRIFT-LOG.md.template +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/ENVIRONMENT.md.template +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/KNOWN-GOTCHAS.md.template +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/REQUIREMENTS.md.template +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/ROADMAP.md.template +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/RUNBOOKS.md.template +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/SECURITY.md.template +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/TEST-SPEC.md.template +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/TROUBLESHOOTING.md.template +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/VENDOR-BUGS.md.template +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/ci/github-actions.yml +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/commands/docguard.fix.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/commands/docguard.init.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/commands/docguard.review.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/templates/commands/docguard.update.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/test-draft.js +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/test-metrics.js +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/api-doc.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/api-surface.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/api-write.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/architecture.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/backup-failure.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/cdk-detection.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/changelog.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/commands.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/doc-quality.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/docs-coverage.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/docs-diff.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/docs-sync.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/drift.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/environment.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/freshness.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/frontend-deep.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/frontend.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/guard-classify.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/hooks.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/i18n.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/integrations.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/mechanical.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/memory-plan.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/metadata-sync.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/metrics-consistency.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/monorepo-scanning.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/multi-spec.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/project-type.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/routes-multilang.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/schema-sync.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/schemas-multilang.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/schemas.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/sections.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/security.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/shared-source.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/structure.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/sync.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/test-spec.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/todo-tracking.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/tests/traceability.test.mjs +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/vscode-extension/.vscodeignore +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/vscode-extension/README.md +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/vscode-extension/extension.js +0 -0
- {docguard_cli-0.11.1 → docguard_cli-0.12.0}/vscode-extension/package.json +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.
|
|
9
|
+
version: 0.12.0
|
|
10
10
|
source: extensions/spec-kit-docguard/skills/docguard-fix
|
|
11
11
|
---
|
|
12
|
-
<!-- docguard:version: 0.
|
|
12
|
+
<!-- docguard:version: 0.12.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.
|
|
10
|
+
version: 0.12.0
|
|
11
11
|
source: extensions/spec-kit-docguard/skills/docguard-guard
|
|
12
12
|
---
|
|
13
|
-
<!-- docguard:version: 0.
|
|
13
|
+
<!-- docguard:version: 0.12.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.
|
|
9
|
+
version: 0.12.0
|
|
10
10
|
source: extensions/spec-kit-docguard/skills/docguard-review
|
|
11
11
|
---
|
|
12
|
-
<!-- docguard:version: 0.
|
|
12
|
+
<!-- docguard:version: 0.12.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.
|
|
9
|
+
version: 0.12.0
|
|
10
10
|
source: extensions/spec-kit-docguard/skills/docguard-score
|
|
11
11
|
---
|
|
12
|
-
<!-- docguard:version: 0.
|
|
12
|
+
<!-- docguard:version: 0.12.0 -->
|
|
13
13
|
|
|
14
14
|
# DocGuard Score Skill
|
|
15
15
|
|
|
@@ -4,7 +4,7 @@ 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.
|
|
7
|
+
version: 0.12.0
|
|
8
8
|
source: extensions/spec-kit-docguard/skills/docguard-sync
|
|
9
9
|
---
|
|
10
10
|
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"projectName": "docguard",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5",
|
|
4
4
|
"profile": "enterprise",
|
|
5
|
-
|
|
6
5
|
"projectType": "cli",
|
|
7
|
-
|
|
8
6
|
"requiredFiles": {
|
|
9
7
|
"canonical": [
|
|
10
8
|
"docs-canonical/ARCHITECTURE.md",
|
|
@@ -13,11 +11,13 @@
|
|
|
13
11
|
"docs-canonical/TEST-SPEC.md",
|
|
14
12
|
"docs-canonical/ENVIRONMENT.md"
|
|
15
13
|
],
|
|
16
|
-
"agentFile": [
|
|
14
|
+
"agentFile": [
|
|
15
|
+
"AGENTS.md",
|
|
16
|
+
"CLAUDE.md"
|
|
17
|
+
],
|
|
17
18
|
"changelog": "CHANGELOG.md",
|
|
18
19
|
"driftLog": "DRIFT-LOG.md"
|
|
19
20
|
},
|
|
20
|
-
|
|
21
21
|
"projectTypeConfig": {
|
|
22
22
|
"needsEnvVars": false,
|
|
23
23
|
"needsEnvExample": false,
|
|
@@ -26,11 +26,9 @@
|
|
|
26
26
|
"testFramework": "node:test",
|
|
27
27
|
"runCommand": "node cli/docguard.mjs"
|
|
28
28
|
},
|
|
29
|
-
|
|
30
29
|
"securityIgnore": [
|
|
31
30
|
"tests/**"
|
|
32
31
|
],
|
|
33
|
-
|
|
34
32
|
"validators": {
|
|
35
33
|
"structure": true,
|
|
36
34
|
"docsSync": true,
|
|
@@ -41,5 +39,6 @@
|
|
|
41
39
|
"security": true,
|
|
42
40
|
"environment": true,
|
|
43
41
|
"freshness": true
|
|
44
|
-
}
|
|
42
|
+
},
|
|
43
|
+
"severity": {}
|
|
45
44
|
}
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
| Command | Purpose |
|
|
42
42
|
|---------|---------|
|
|
43
43
|
| `diagnose` | **Primary** — identify issues + generate AI fix prompts |
|
|
44
|
-
| `guard` | Validate project (CI gate) —
|
|
44
|
+
| `guard` | Validate project (CI gate) — 21 validators |
|
|
45
45
|
| `generate` | Reverse-engineer docs from code |
|
|
46
46
|
| `fix --doc <name>` | AI prompt for specific document |
|
|
47
47
|
| `score` | CDD maturity score (0-100) |
|
|
@@ -7,6 +7,79 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.12.0] - 2026-05-26
|
|
11
|
+
|
|
12
|
+
Feature release — Phase K (7 features). Schema bump to **0.5**. Adds the
|
|
13
|
+
PR-time auto-fix GitHub Action, `docguard upgrade` command + post-guard
|
|
14
|
+
nudge, `.docguardignore` support, per-validator severity overrides,
|
|
15
|
+
pre-commit-lite mode, sweep-needed nudge, and the new Cross-Reference
|
|
16
|
+
validator (21 validators total, up from 20). Plus 4 papercut fixes
|
|
17
|
+
caught during the wu-whatsappinbox dry-run.
|
|
18
|
+
|
|
19
|
+
### Added
|
|
20
|
+
|
|
21
|
+
- **K-1: PR-time auto-fix GitHub Action.** Extended `action.yml` with `command: fix` and `command: sync`, plus new inputs `auto-commit`, `comment-on-pr`, `commit-message`, `bot-name`, `bot-email`, and new outputs `fixes-applied`, `changed-files`, `committed`. The action commits any mechanical fixes back to the PR branch as `docguard-bot` and posts a summary comment. Fork PRs are skipped (head.repo != repository). Two ready-to-copy workflow templates ship under `extensions/spec-kit-docguard/templates/github-workflows/`: `docguard-guard.yml` (mandatory CI gate) and `docguard-autofix.yml` (PR auto-fix). Full recipe matrix in the new `docs-canonical/CI-RECIPES.md`.
|
|
22
|
+
- **K-2: `docguard upgrade` command + post-guard schema-behind nudge.** New `docguard upgrade` checks installed CLI vs latest npm version (3-second-timeout fetch, fails open if offline) and project schema vs `CURRENT_SCHEMA_VERSION`. Flags: `--check-only` (exit 1 if behind, for CI), `--apply` (runs `npm i -g docguard-cli@latest` and migrates `.docguard.json`). `docguard guard` now appends a yellow `↑` nudge when the project's schema is behind. Aliased as `docguard update`.
|
|
23
|
+
- **K-3: `.docguardignore` template at init (S-5).** New gitignore-style file (`one pattern per line, # comments`) merged into `config.ignore` at config-load time so every validator honors it. `docguard init` drops a starter `.docguardignore` covering common build outputs, generated code, and lock files. Loader (`loadDocguardIgnore`) + merger (`mergeIgnoreFile`) live in `cli/shared-ignore.mjs` — missing/unreadable file is a no-op.
|
|
24
|
+
- **K-4: Per-validator severity overrides in `.docguard.json` (S-6).** New `severity` map: `{ severity: { todoTracking: "high", freshness: "low" } }`. `'high'` promotes that validator's warnings to fail-CI status (exit 1). `'low'` demotes them to info (no exit-code effect). `'medium'` (default) keeps existing exit-2 behavior. Display is unchanged — severity only affects CI. New `data.effectiveErrors` and `data.effectiveWarnings` fields in the JSON output reflect the severity-aware counts. The CLI prints a one-line note when overrides shifted the exit code.
|
|
25
|
+
- **K-5: Pre-commit lite mode (S-9).** `docguard guard --changed-only` runs only the 3 fastest, highest-signal validators: Docs-Sync + Environment + API-Surface. Designed to complete in under 2 seconds for husky/lefthook pre-commit hooks. Validator list exported as `CHANGED_ONLY_VALIDATORS` for tooling. Recipe 5 in CI-RECIPES documents the integration.
|
|
26
|
+
- **K-6: Sweep-needed nudge from Freshness counters (S-2).** When 2+ canonical docs are stale (10+ commits since last update), the guard footer now emits a single `↻` line recommending `docguard sync --write` to refresh all code-truth sections in one pass. Aggregates individual freshness warnings into one actionable recommendation. Suppressed in `--format json` mode.
|
|
27
|
+
- **K-7: Cross-Reference validator (S-8) — 21st validator.** New `Cross-Reference` validator scans canonical docs for cross-references (markdown links like `[text](./OTHER.md#section)` and intra-doc anchors `#anchor`) and warns when they don't resolve. Extracts headings and computes GFM-compatible slugs. Skips external URLs (http/https/mailto), code-fenced examples, inline backtick code, and non-markdown link targets. URL-decodes anchors before comparison so `%EF%B8%8F`-encoded variation selectors resolve. Caught **14 broken refs in our own README** during the dry-run (4 remain after slugifier fixes — those are real bugs for a future doc cleanup PR).
|
|
28
|
+
- **Antigravity / Kiro / Windsurf / GEMINI signal aliases (also in v0.11.2).** `cli/ensure-skills.mjs` detects these agent ecosystems via additional signal files. Doc-only mention here for visibility — code shipped in v0.11.2.
|
|
29
|
+
|
|
30
|
+
### Changed
|
|
31
|
+
|
|
32
|
+
- **Schema bumped from 0.4 → 0.5.** Migration is purely additive: `severity: {}` field appears on existing configs. Run `docguard upgrade --apply` to migrate (or hand-edit). The post-guard nudge fires until you do.
|
|
33
|
+
- **`docguard init` writes schema version `0.5`** with an empty `severity: {}` block and now also creates `.docguardignore`.
|
|
34
|
+
- **`docguard guard` JSON output** includes new fields: `effectiveErrors`, `effectiveWarnings`, and per-validator `severity`.
|
|
35
|
+
|
|
36
|
+
### Fixed
|
|
37
|
+
|
|
38
|
+
- **Docs-Coverage Check 5 silent-fail** (also in v0.11.2) — recommended README sections no longer bump `total` without emitting a message. Now a true bonus: present = +1, missing = no-op.
|
|
39
|
+
- **Papercut #1 — `upgrade` missed pre-0.4 schemas.** A `.docguard.json` that exists but has no `version` field (the 2024-era format used by `wu-whatsappinbox`, with `project` instead of `projectName`) was silently treated as "no config". Now: `readProjectSchemaVersion` returns the sentinel `'0.0'` for pre-0.4 schemas, and the migration registry has a `0.0 → 0.4` recipe that renames `project → projectName` while stamping the version. The user-facing label is friendlier too ("pre-0.4 (no version field)" instead of "Schema 0.0").
|
|
40
|
+
- **Papercut #2 — `--format json` was unparseable.** The banner and `ensureSkills` install message wrote to stdout BEFORE the JSON body, so `JSON.parse` failed on every consumer. New `jsonMode` + `headless` detection in `main()` skips both for `--format json`, `--write`, `--check-only`, and `--changed-only`. Affects every Action recipe using `format: json` (Score-on-PR was broken).
|
|
41
|
+
- **Papercut #3 — auto-fix Action counted CLI side effects as "fixes".** `ensureSkills` writes to `.agent/`, `.specify/`, `commands/` on first run; the Action's `git status --porcelain` diff was treating those as mechanical fixes and committing them. Two-part fix: (1) the new headless-mode skips `ensureSkills` so the side effects don't appear, and (2) the Action's bash filter excludes `.agent/`, `.specify/`, `commands/`, `.docguard/`, `.wolf/`, `.claude/` from the changed-files detection as belt-and-suspenders.
|
|
42
|
+
- **Papercut #4 — slugifier didn't match GitHub's GFM.** The Cross-Reference validator's first iteration false-positived on every emoji-prefixed heading (`## ⚡ Quick Start` → GitHub produces `#-quick-start` with a leading dash, but my code produced `#quick-start`). Also collapsed `--` to `-` which GitHub keeps. Three bugs fixed; tests now lock in GFM compatibility for emoji-prefixed headings and stripped-punctuation cases.
|
|
43
|
+
|
|
44
|
+
### Internal
|
|
45
|
+
|
|
46
|
+
- 6 new test files: `tests/upgrade.test.mjs` (12 tests), `tests/docguardignore.test.mjs` (11 tests), `tests/severity.test.mjs` (9 tests), `tests/changed-only.test.mjs` (4 tests), `tests/sweep-nudge.test.mjs` (3 tests), `tests/cross-reference.test.mjs` (22 tests). **Total: 400 tests passing (was 339, +61 new).**
|
|
47
|
+
- Cross-Reference validator added (21 total validators, up from 20). Metrics-Consistency picked up the new count and `fix --write` auto-bumped 8 doc references from "20 validators" → "21 validators" in one pass — eating our own dogfood.
|
|
48
|
+
- Dry-run on `wu-whatsappinbox` (read-only) before push surfaced the 4 papercuts above. All fixed in this release.
|
|
49
|
+
- New modules: `cli/commands/upgrade.mjs`, `loadDocguardIgnore` + `mergeIgnoreFile` exports in `cli/shared-ignore.mjs`, `CURRENT_SCHEMA_VERSION` + `SEVERITY_LEVELS` + `resolveSeverity` + `compareVersions` + `parseVersion` exports in `cli/shared.mjs`, `CHANGED_ONLY_VALIDATORS` + `liteValidatorsConfig` in `cli/commands/guard.mjs`.
|
|
50
|
+
- New docs: `docs-canonical/CI-RECIPES.md` (5 recipes + permissions cheatsheet + full action inputs/outputs reference).
|
|
51
|
+
- `action.yml` grew from 166 → 323 lines (+157) with the auto-commit/comment flow.
|
|
52
|
+
- No new NPM runtime dependencies. Still zero deps. Node 18+ for built-in `fetch` (used by `upgrade` to check the npm registry).
|
|
53
|
+
|
|
54
|
+
### Out of scope (deferred to v0.13)
|
|
55
|
+
|
|
56
|
+
- **Phase L (sync intelligence)**: S-1 `sync --since` surgical refresh (currently only reports diff as context), S-2 sweep-needed nudge from freshness counters, S-3 `trace --reverse` (code → doc-section map), S-4 rename detection via `git log --follow`.
|
|
57
|
+
- **Phase M (bigger validators)**: S-7 generated-doc-in-draft staleness validator, S-8 cross-reference validator (broken `§X` anchors), S-10 `.docguard/fixed.json` memory of past fixes.
|
|
58
|
+
- **K-5 enhancement**: scope each lite-mode validator to changed files only (currently the 3 validators run against the whole repo — fast enough but not optimal). Tracked for v0.13.
|
|
59
|
+
|
|
60
|
+
## [0.11.2] - 2026-05-25
|
|
61
|
+
|
|
62
|
+
Patch release addressing the four bugs (B-1..B-4) reported from the v0.11.1 audit of `wu-whatsappinbox` (score 98/100, 572/575 passed, 1 warning), plus Antigravity/Kiro/Windsurf agent-routing aliases and a Docs-Coverage silent-fail fix that the new B-4 nudge itself exposed.
|
|
63
|
+
|
|
64
|
+
### Fixed
|
|
65
|
+
- **B-1: Vite intrinsics no longer reported as user env vars.** `grepEnvUsage` in `cli/shared-source.mjs` now skips `DEV`, `PROD`, `MODE`, `BASE_URL`, and `SSR` on `import.meta.env.*` — these are injected by Vite at build time, not user-configured. Real user vars like `VITE_API_URL` are still captured. (Reported by wu-whatsappinbox v0.11.1 audit.)
|
|
66
|
+
- **B-2: `docguard diff` Data Entities now uses real exported names, not file basenames.** Previously the entity diff walked filenames and reported the stem (e.g. `models.py` → "models"), missing all the actual classes inside. Now uses `scanSchemasDeep` — the same code-side scanner the rest of DocGuard uses — which extracts real Pydantic/Dataclass/Mongoose/Prisma/Zod/Sequelize/Sqlx/SQLAlchemy/JPA entity names. (Reported by wu-whatsappinbox v0.11.1 audit.)
|
|
67
|
+
- **B-3: Literal `` `VITE_` `` prefix in prose no longer captured as an env var name.** Tightened the env-var name regex across `shared-source.mjs`, `validators/environment.mjs`, and `commands/diff.mjs` from `[A-Z][A-Z0-9_]*` to `[A-Z][A-Z0-9_]*[A-Z0-9]` (must end with letter/digit, not underscore). Documentation like ``All vars start with `VITE_` (Vite convention)`` no longer triggers a "missing `VITE_`" warning. (Reported by wu-whatsappinbox v0.11.1 audit.)
|
|
68
|
+
- **B-4 nudge surfaced: Docs-Coverage Check 5 (`checkReadmeSections`) silent-fail fixed.** The "recommended sections" loop bumped `total` without emitting a message when missing — exactly the anti-pattern B-4 flags. Recommended sections are now a true bonus: present = +1 to both passed/total, missing = no-op. Restores honest scoring on the README checker. (Found by the B-4 nudge running on the wu-whatsappinbox fixture.)
|
|
69
|
+
|
|
70
|
+
### Added
|
|
71
|
+
- **B-4: `--show-failing` flag and validator-bug nudge.** `docguard guard --show-failing` shows warnings/errors for every non-passing validator even if the overall status would have suppressed them. New nudge fires when a validator has `passed < total` but emits no warning or error messages — points at a likely silent-fail validator bug for the user to file an issue. (Reported by wu-whatsappinbox v0.11.1 audit.)
|
|
72
|
+
- **Antigravity / Kiro / Windsurf / GEMINI agent signals.** `cli/ensure-skills.mjs` now detects these agent ecosystems via additional signal files (`.agents`, `.antigravity`, `ANTIGRAVITY.md`, `.kiro`, `.windsurf`, `GEMINI.md`) so the right skills are installed for each. Antigravity was already wired via `.agents → agy`; this expands the alias surface so neither side-by-side IDEs nor Spec Kit's `.agents` convention break detection.
|
|
73
|
+
|
|
74
|
+
### Internal
|
|
75
|
+
- New test file: `tests/patch-0.11.2.test.mjs` with regression coverage for B-1 (Vite intrinsics skip), B-2 (Pydantic class names, not file basename), and B-3 (literal `VITE_` not captured). **Total: 339 tests passing (was 336, +3 new).**
|
|
76
|
+
- No new NPM dependencies. Zero schema or config-file changes. Bumped `pyproject.toml` from `0.11.0 → 0.11.2` to re-sync the PyPI publish (the previous patch released to npm but skipped PyPI version bump).
|
|
77
|
+
|
|
78
|
+
### Out of scope (deferred to v0.12)
|
|
79
|
+
- S-1 (`sync --since` surgical refresh), S-2 (sweep-needed nudge from freshness counters), S-3 (`trace --reverse` code→doc map), S-4 (rename detection via `git log --follow`), S-5 (`.docguardignore` template at init), S-6 (per-validator severity in `.docguard.json`), S-7 (generated-doc-in-draft staleness validator), S-8 (cross-reference validator for broken `§X` anchors), S-9 (pre-commit lite on changed files only), S-10 (`.docguard/fixed.json` memory of past fixes).
|
|
80
|
+
|
|
81
|
+
Credit: feedback from running v0.11.1 on the `wu-whatsappinbox` enterprise monorepo (audit score 98/100, 572/575 passed).
|
|
82
|
+
|
|
10
83
|
## [0.11.1] - 2026-05-25
|
|
11
84
|
|
|
12
85
|
Patch release addressing false positives surfaced by the v0.11.0 audit of the `wu-whatsappinbox` enterprise monorepo, generalized into a multi-tool IaC detector, plus several DocGuard self-audit improvements. Spec: `specs/003-v011-false-positives/`.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: docguard-cli
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.12.0
|
|
4
4
|
Summary: The enforcement tool for Canonical-Driven Development (CDD). Audit, generate, and guard your project documentation. Zero dependencies.
|
|
5
5
|
Project-URL: Homepage, https://github.com/raccioly/docguard
|
|
6
6
|
Project-URL: Documentation, https://github.com/raccioly/docguard#readme
|
|
@@ -367,7 +367,7 @@ DocGuard provides AI agent slash commands for integrated workflows. Installed au
|
|
|
367
367
|
|
|
368
368
|
| Command | What It Does |
|
|
369
369
|
|:--------|:-------------|
|
|
370
|
-
| `/docguard.guard` | Run quality validation — check all
|
|
370
|
+
| `/docguard.guard` | Run quality validation — check all 21 validators |
|
|
371
371
|
| `/docguard.review` | Analyze doc quality and suggest improvements |
|
|
372
372
|
| `/docguard.fix` | Generate targeted fix prompts for specific issues |
|
|
373
373
|
| `/docguard.score` | Show CDD maturity score with category breakdown |
|
|
@@ -457,20 +457,42 @@ DocGuard runs its own `guard`, `score`, `diff`, `diagnose`, and `badge` commands
|
|
|
457
457
|
|
|
458
458
|
## ⚙️ CI/CD Integration
|
|
459
459
|
|
|
460
|
-
|
|
460
|
+
> **Full recipes:** see [`docs-canonical/CI-RECIPES.md`](./docs-canonical/CI-RECIPES.md) for guard, auto-fix (commits mechanical fixes back to PRs), nightly sync, score-on-PR, and pre-commit configs.
|
|
461
|
+
|
|
462
|
+
### GitHub Actions — Guard (most common)
|
|
461
463
|
|
|
462
464
|
```yaml
|
|
463
|
-
name: DocGuard
|
|
464
|
-
on: [pull_request]
|
|
465
|
+
name: DocGuard Guard
|
|
466
|
+
on: [pull_request, push]
|
|
465
467
|
jobs:
|
|
466
468
|
docguard:
|
|
467
469
|
runs-on: ubuntu-latest
|
|
468
470
|
steps:
|
|
469
471
|
- uses: actions/checkout@v4
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
472
|
+
with: { fetch-depth: 0 }
|
|
473
|
+
- uses: raccioly/docguard@v0.12.0
|
|
474
|
+
with:
|
|
475
|
+
command: guard
|
|
476
|
+
```
|
|
477
|
+
|
|
478
|
+
### GitHub Actions — Auto-Fix (commits mechanical fixes back)
|
|
479
|
+
|
|
480
|
+
```yaml
|
|
481
|
+
name: DocGuard Auto-Fix
|
|
482
|
+
on: { pull_request: { types: [opened, synchronize, reopened] } }
|
|
483
|
+
permissions: { contents: write, pull-requests: write }
|
|
484
|
+
jobs:
|
|
485
|
+
autofix:
|
|
486
|
+
runs-on: ubuntu-latest
|
|
487
|
+
if: github.event.pull_request.head.repo.full_name == github.repository
|
|
488
|
+
steps:
|
|
489
|
+
- uses: actions/checkout@v4
|
|
490
|
+
with:
|
|
491
|
+
ref: ${{ github.event.pull_request.head.ref }}
|
|
492
|
+
token: ${{ secrets.GITHUB_TOKEN }}
|
|
493
|
+
fetch-depth: 0
|
|
494
|
+
- uses: raccioly/docguard@v0.12.0
|
|
495
|
+
with: { command: fix, auto-commit: 'true', comment-on-pr: 'true' }
|
|
474
496
|
```
|
|
475
497
|
|
|
476
498
|
### Pre-commit Hook
|
|
@@ -479,14 +501,11 @@ jobs:
|
|
|
479
501
|
npx docguard-cli hooks --type pre-commit
|
|
480
502
|
```
|
|
481
503
|
|
|
482
|
-
###
|
|
504
|
+
### Workflow starters (copy directly)
|
|
483
505
|
|
|
484
|
-
|
|
485
|
-
-
|
|
486
|
-
|
|
487
|
-
command: guard
|
|
488
|
-
fail-on-warning: true
|
|
489
|
-
```
|
|
506
|
+
Two ready-to-use templates ship with the Spec Kit extension and as standalone files:
|
|
507
|
+
- `extensions/spec-kit-docguard/templates/github-workflows/docguard-guard.yml` — mandatory CI gate
|
|
508
|
+
- `extensions/spec-kit-docguard/templates/github-workflows/docguard-autofix.yml` — PR auto-fix
|
|
490
509
|
|
|
491
510
|
---
|
|
492
511
|
|
|
@@ -343,7 +343,7 @@ DocGuard provides AI agent slash commands for integrated workflows. Installed au
|
|
|
343
343
|
|
|
344
344
|
| Command | What It Does |
|
|
345
345
|
|:--------|:-------------|
|
|
346
|
-
| `/docguard.guard` | Run quality validation — check all
|
|
346
|
+
| `/docguard.guard` | Run quality validation — check all 21 validators |
|
|
347
347
|
| `/docguard.review` | Analyze doc quality and suggest improvements |
|
|
348
348
|
| `/docguard.fix` | Generate targeted fix prompts for specific issues |
|
|
349
349
|
| `/docguard.score` | Show CDD maturity score with category breakdown |
|
|
@@ -433,20 +433,42 @@ DocGuard runs its own `guard`, `score`, `diff`, `diagnose`, and `badge` commands
|
|
|
433
433
|
|
|
434
434
|
## ⚙️ CI/CD Integration
|
|
435
435
|
|
|
436
|
-
|
|
436
|
+
> **Full recipes:** see [`docs-canonical/CI-RECIPES.md`](./docs-canonical/CI-RECIPES.md) for guard, auto-fix (commits mechanical fixes back to PRs), nightly sync, score-on-PR, and pre-commit configs.
|
|
437
|
+
|
|
438
|
+
### GitHub Actions — Guard (most common)
|
|
437
439
|
|
|
438
440
|
```yaml
|
|
439
|
-
name: DocGuard
|
|
440
|
-
on: [pull_request]
|
|
441
|
+
name: DocGuard Guard
|
|
442
|
+
on: [pull_request, push]
|
|
441
443
|
jobs:
|
|
442
444
|
docguard:
|
|
443
445
|
runs-on: ubuntu-latest
|
|
444
446
|
steps:
|
|
445
447
|
- uses: actions/checkout@v4
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
448
|
+
with: { fetch-depth: 0 }
|
|
449
|
+
- uses: raccioly/docguard@v0.12.0
|
|
450
|
+
with:
|
|
451
|
+
command: guard
|
|
452
|
+
```
|
|
453
|
+
|
|
454
|
+
### GitHub Actions — Auto-Fix (commits mechanical fixes back)
|
|
455
|
+
|
|
456
|
+
```yaml
|
|
457
|
+
name: DocGuard Auto-Fix
|
|
458
|
+
on: { pull_request: { types: [opened, synchronize, reopened] } }
|
|
459
|
+
permissions: { contents: write, pull-requests: write }
|
|
460
|
+
jobs:
|
|
461
|
+
autofix:
|
|
462
|
+
runs-on: ubuntu-latest
|
|
463
|
+
if: github.event.pull_request.head.repo.full_name == github.repository
|
|
464
|
+
steps:
|
|
465
|
+
- uses: actions/checkout@v4
|
|
466
|
+
with:
|
|
467
|
+
ref: ${{ github.event.pull_request.head.ref }}
|
|
468
|
+
token: ${{ secrets.GITHUB_TOKEN }}
|
|
469
|
+
fetch-depth: 0
|
|
470
|
+
- uses: raccioly/docguard@v0.12.0
|
|
471
|
+
with: { command: fix, auto-commit: 'true', comment-on-pr: 'true' }
|
|
450
472
|
```
|
|
451
473
|
|
|
452
474
|
### Pre-commit Hook
|
|
@@ -455,14 +477,11 @@ jobs:
|
|
|
455
477
|
npx docguard-cli hooks --type pre-commit
|
|
456
478
|
```
|
|
457
479
|
|
|
458
|
-
###
|
|
480
|
+
### Workflow starters (copy directly)
|
|
459
481
|
|
|
460
|
-
|
|
461
|
-
-
|
|
462
|
-
|
|
463
|
-
command: guard
|
|
464
|
-
fail-on-warning: true
|
|
465
|
-
```
|
|
482
|
+
Two ready-to-use templates ship with the Spec Kit extension and as standalone files:
|
|
483
|
+
- `extensions/spec-kit-docguard/templates/github-workflows/docguard-guard.yml` — mandatory CI gate
|
|
484
|
+
- `extensions/spec-kit-docguard/templates/github-workflows/docguard-autofix.yml` — PR auto-fix
|
|
466
485
|
|
|
467
486
|
---
|
|
468
487
|
|