docguard-cli 0.22.0__tar.gz → 0.22.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.
- {docguard_cli-0.22.0/extensions/spec-kit-docguard → docguard_cli-0.22.1/.agent}/skills/docguard-fix/SKILL.md +2 -2
- {docguard_cli-0.22.0/extensions/spec-kit-docguard → docguard_cli-0.22.1/.agent}/skills/docguard-guard/SKILL.md +3 -3
- {docguard_cli-0.22.0/extensions/spec-kit-docguard → docguard_cli-0.22.1/.agent}/skills/docguard-review/SKILL.md +2 -2
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/skills/docguard-score/SKILL.md +2 -2
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/skills/docguard-sync/SKILL.md +1 -1
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.gitignore +4 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.jules/palette.md +4 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/CHANGELOG.md +34 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/PKG-INFO +4 -3
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/README.md +3 -2
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/explain.mjs +11 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/test-spec.mjs +1 -1
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/docs-canonical/REQUIREMENTS.md +5 -5
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/commands/guard.md +2 -2
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/extension.yml +1 -1
- {docguard_cli-0.22.0/.agent → docguard_cli-0.22.1/extensions/spec-kit-docguard}/skills/docguard-fix/SKILL.md +2 -2
- {docguard_cli-0.22.0/.agent → docguard_cli-0.22.1/extensions/spec-kit-docguard}/skills/docguard-guard/SKILL.md +3 -3
- {docguard_cli-0.22.0/.agent → docguard_cli-0.22.1/extensions/spec-kit-docguard}/skills/docguard-review/SKILL.md +2 -2
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/skills/docguard-score/SKILL.md +2 -2
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/skills/docguard-sync/SKILL.md +1 -1
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/package.json +1 -1
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/pyproject.toml +1 -1
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/specs/002-fix-test-discovery/plan.md +21 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/npm-pack-smoke.test.mjs +2 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/plan-disk-cache.test.mjs +2 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/security-init-injection.test.mjs +2 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/vscode-extension/extension.js +10 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/commands/speckit.analyze.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/commands/speckit.checklist.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/commands/speckit.clarify.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/commands/speckit.constitution.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/commands/speckit.implement.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/commands/speckit.plan.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/commands/speckit.specify.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/commands/speckit.tasks.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/commands/speckit.taskstoissues.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/skills/speckit-analyze/SKILL.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/skills/speckit-checklist/SKILL.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/skills/speckit-clarify/SKILL.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/skills/speckit-constitution/SKILL.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/skills/speckit-implement/SKILL.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/skills/speckit-plan/SKILL.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/skills/speckit-specify/SKILL.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/skills/speckit-tasks/SKILL.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.agent/skills/speckit-taskstoissues/SKILL.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.docguard.json +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.docguardignore +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.github/dependabot.yml +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.github/scripts/patch-catalog.py +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.github/workflows/ci.yml +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.github/workflows/release.yml +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.github/workflows/supply-chain.yml +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.github/workflows/sync-speckit-catalog.yml +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.jules/bolt.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.jules/sentinel.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.npmignore +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.npmrc +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.specify/extensions/.cache/catalog-ebf165086500aab1-metadata.json +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.specify/extensions/.cache/catalog-ebf165086500aab1.json +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.specify/extensions/.cache/catalog-metadata.json +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.specify/extensions/.cache/catalog.json +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.specify/init-options.json +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.specify/memory/constitution.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.specify/scripts/bash/check-prerequisites.sh +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.specify/scripts/bash/common.sh +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.specify/scripts/bash/create-new-feature.sh +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.specify/scripts/bash/setup-plan.sh +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.specify/scripts/bash/update-agent-context.sh +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.specify/templates/agent-file-template.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.specify/templates/checklist-template.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.specify/templates/constitution-template.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.specify/templates/plan-template.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.specify/templates/spec-template.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/.specify/templates/tasks-template.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/AGENTS.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/CODE_OF_CONDUCT.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/COMPARISONS.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/CONTRIBUTING.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/DRIFT-LOG.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/LICENSE +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/PHILOSOPHY.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/ROADMAP.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/SECURITY.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/STANDARD.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/SUPPLY-CHAIN-AUDIT.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/SUPPORT.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/action.yml +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/assets/bin/docguard +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/assets/demo.gif +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/assets/demo.tape +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/agents.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/badge.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/ci.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/demo.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/diagnose.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/diff.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/fix.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/generate.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/guard.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/hooks.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/impact.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/init.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/llms.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/memory.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/publish.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/score.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/setup.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/sync.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/trace.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/upgrade.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/commands/watch.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/docguard.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/ensure-skills.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/scanners/api-doc.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/scanners/cdk.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/scanners/doc-tools.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/scanners/frontend.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/scanners/iac.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/scanners/integrations.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/scanners/memory-plan.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/scanners/project-type.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/scanners/routes.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/scanners/schemas.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/scanners/speckit.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/shared-git.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/shared-ignore.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/shared-source.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/shared.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/api-surface.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/architecture.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/canonical-sync.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/changelog.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/cross-reference.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/doc-quality.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/docs-coverage.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/docs-diff.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/docs-sync.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/drift.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/environment.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/freshness.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/generated-staleness.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/metadata-sync.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/metrics-consistency.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/schema-sync.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/security.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/spec-kit.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/structure.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/surface-sync.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/todo-tracking.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/validators/traceability.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/writers/api-reference.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/writers/fix-memory.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/writers/mechanical.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/cli/writers/sections.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/commands/docguard.fix.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/commands/docguard.guard.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/commands/docguard.review.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/commands/docguard.score.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/configs/fastify.json +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/configs/generic.json +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/configs/nextjs.json +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/configs/python.json +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/docguard_cli/__init__.py +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/docguard_cli/wrapper.py +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/docs/ai-integration.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/docs/commands.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/docs/configuration.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/docs/doc-sections.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/docs/faq.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/docs/installation.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/docs/profiles.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/docs/quickstart.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/docs-canonical/ARCHITECTURE.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/docs-canonical/CI-RECIPES.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/docs-canonical/DATA-MODEL.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/docs-canonical/ENVIRONMENT.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/docs-canonical/SECURITY.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/docs-canonical/SURFACE-AUDIT.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/docs-canonical/TEST-SPEC.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/docs-implementation/MIGRATION-v0.20.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/examples/01-express-api/README.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/examples/01-express-api/package.json +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/examples/01-express-api/server.js +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/examples/02-python-flask/README.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/examples/02-python-flask/app.py +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/examples/02-python-flask/docs-canonical/ARCHITECTURE.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/examples/02-python-flask/requirements.txt +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/examples/03-spec-kit-project/CHANGELOG.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/examples/03-spec-kit-project/README.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/examples/03-spec-kit-project/docs-canonical/ARCHITECTURE.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/examples/03-spec-kit-project/docs-canonical/TEST-SPEC.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/examples/03-spec-kit-project/package.json +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/examples/03-spec-kit-project/src/index.js +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/examples/03-spec-kit-project/tests/basic.test.js +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/examples/README.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/LICENSE +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/README.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/commands/diagnose.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/commands/fix.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/commands/generate.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/commands/init.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/commands/score.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/commands/sync.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/commands/trace.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/scripts/bash/common.sh +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/scripts/bash/docguard-check-docs.sh +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/scripts/bash/docguard-init-doc.sh +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/scripts/bash/docguard-suggest-fix.sh +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/templates/extensions.yml +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/templates/github-workflows/docguard-autofix.yml +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/extensions/spec-kit-docguard/templates/github-workflows/docguard-guard.yml +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/pr_description.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/schemas/docguard-config.schema.json +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/specs/001-fix-ignore-validators/plan.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/specs/001-fix-ignore-validators/spec.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/specs/001-fix-ignore-validators/tasks.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/specs/002-fix-test-discovery/spec.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/specs/002-fix-test-discovery/tasks.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/specs/003-v011-false-positives/plan.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/specs/003-v011-false-positives/spec.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/specs/003-v011-false-positives/tasks.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/specs/004-v020-env-var-false-negative/spec.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/specs/005-hugocross-next-bugs/spec.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/ADR.md.template +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/AGENTS.md.template +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/ARCHITECTURE.md.template +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/CHANGELOG.md.template +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/CURRENT-STATE.md.template +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/DATA-MODEL.md.template +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/DEPLOYMENT.md.template +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/DRIFT-LOG.md.template +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/ENVIRONMENT.md.template +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/KNOWN-GOTCHAS.md.template +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/REQUIREMENTS.md.template +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/ROADMAP.md.template +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/RUNBOOKS.md.template +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/SECURITY.md.template +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/TEST-SPEC.md.template +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/TROUBLESHOOTING.md.template +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/VENDOR-BUGS.md.template +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/ci/github-actions.yml +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/commands/docguard.fix.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/commands/docguard.guard.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/commands/docguard.init.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/commands/docguard.review.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/commands/docguard.update.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/demo-fixture/.docguard.json +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/demo-fixture/.env.example +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/demo-fixture/AGENTS.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/demo-fixture/CHANGELOG.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/demo-fixture/DRIFT-LOG.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/demo-fixture/README.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/demo-fixture/docs-canonical/API-REFERENCE.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/demo-fixture/docs-canonical/ARCHITECTURE.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/demo-fixture/docs-canonical/DATA-MODEL.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/demo-fixture/docs-canonical/ENVIRONMENT.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/demo-fixture/docs-canonical/SECURITY.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/demo-fixture/docs-canonical/TEST-SPEC.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/demo-fixture/package.json +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/demo-fixture/src/api.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/demo-fixture/src/notifier.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/demo-fixture/src/scheduler.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/templates/demo-fixture/src/worker.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/test-draft.js +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/test-metrics.js +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/anchor-autofix.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/api-doc.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/api-surface.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/api-write.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/architecture.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/b7-node-env-symmetry.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/backup-failure.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/canonical-sync.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/cdk-detection.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/changed-only-scoping.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/changed-only.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/changelog.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/commands.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/cross-reference.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/demo-command.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/doc-quality.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/docguardignore.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/docs-coverage.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/docs-diff.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/docs-sync.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/drift.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/environment.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/fix-memory.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/fix-suppression.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/fixture-projects.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/freshness.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/frontend-deep.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/frontend.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/generated-staleness.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/guard-classify.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/guard-no-throw.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/hooks.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/i18n.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/impact.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/init-smart-detection.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/integrations.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/mechanical.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/memory-plan.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/metadata-sync.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/metrics-consistency.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/metrics-dedup.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/monorepo-scanning.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/multi-spec.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/patch-0.11.2.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/profile-flag.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/project-type.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/regenerate-section.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/routes-multilang.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/routes-nextjs-app-router.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/schema-sync.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/schemas-multilang.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/schemas.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/scoping-extended.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/section-na-markers.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/sections.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/security.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/severity.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/shared-git.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/shared-source.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/stress-test.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/structure.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/surface-sync.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/sweep-nudge.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/sync-since.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/sync.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/test-spec.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/todo-tracking.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/trace-multilang.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/trace-reverse.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/traceability.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/upgrade-pr-e2e.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/upgrade-pr.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/upgrade.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/v020-consolidation.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/validator-naming.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/version-pin.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/tests/whats-new.test.mjs +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/vscode-extension/.vscodeignore +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/vscode-extension/README.md +0 -0
- {docguard_cli-0.22.0 → docguard_cli-0.22.1}/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.22.
|
|
9
|
+
version: 0.22.1
|
|
10
10
|
source: extensions/spec-kit-docguard/skills/docguard-fix
|
|
11
11
|
---
|
|
12
|
-
<!-- docguard:version: 0.22.
|
|
12
|
+
<!-- docguard:version: 0.22.1 -->
|
|
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.22.
|
|
10
|
+
version: 0.22.1
|
|
11
11
|
source: extensions/spec-kit-docguard/skills/docguard-guard
|
|
12
12
|
---
|
|
13
|
-
<!-- docguard:version: 0.22.
|
|
13
|
+
<!-- docguard:version: 0.22.1 -->
|
|
14
14
|
|
|
15
15
|
# DocGuard Guard Skill
|
|
16
16
|
|
|
@@ -24,7 +24,7 @@ You **MUST** consider the user input before proceeding (if not empty).
|
|
|
24
24
|
|
|
25
25
|
## Goal
|
|
26
26
|
|
|
27
|
-
Execute DocGuard's
|
|
27
|
+
Execute DocGuard's full guard validator suite against the current project, parse structured results, triage findings by severity and impact, and produce an actionable remediation plan. This skill transforms raw CLI output into an AI-digestible quality assessment.
|
|
28
28
|
|
|
29
29
|
## Pre-Execution Checks
|
|
30
30
|
|
|
@@ -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.22.
|
|
9
|
+
version: 0.22.1
|
|
10
10
|
source: extensions/spec-kit-docguard/skills/docguard-review
|
|
11
11
|
---
|
|
12
|
-
<!-- docguard:version: 0.22.
|
|
12
|
+
<!-- docguard:version: 0.22.1 -->
|
|
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.22.
|
|
9
|
+
version: 0.22.1
|
|
10
10
|
source: extensions/spec-kit-docguard/skills/docguard-score
|
|
11
11
|
---
|
|
12
|
-
<!-- docguard:version: 0.22.
|
|
12
|
+
<!-- docguard:version: 0.22.1 -->
|
|
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.22.
|
|
7
|
+
version: 0.22.1
|
|
8
8
|
source: extensions/spec-kit-docguard/skills/docguard-sync
|
|
9
9
|
---
|
|
10
10
|
|
|
@@ -5,3 +5,7 @@
|
|
|
5
5
|
## 2024-04-16 - Context-Aware Status Bar Tooltips
|
|
6
6
|
**Learning:** VS Code extension status bar items can display multiple forms of feedback, but static tooltips fail to explain state changes. Providing context-aware tooltip text (e.g., explaining why a threshold warning icon appears) greatly improves the usability for developers monitoring CLI outputs inline.
|
|
7
7
|
**Action:** Always map status bar dynamic properties (icon, text, backgroundColor) to corresponding informative tooltips that explain what the visual change means.
|
|
8
|
+
|
|
9
|
+
## 2024-05-18 - Yielding Event Loop for Loading States
|
|
10
|
+
**Learning:** When updating UI elements like VS Code extension `statusBarItem` to show a loading state (e.g., adding a spinner and changing tooltip) immediately prior to a synchronous, blocking operation (like `execSync`), the changes won't render unless you explicitly yield the event loop.
|
|
11
|
+
**Action:** Use `await new Promise(r => setTimeout(r, 0))` right after the UI update to allow the editor time to render the visual changes before the main thread blocks.
|
|
@@ -7,6 +7,40 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.22.1] - 2026-05-29
|
|
11
|
+
|
|
12
|
+
Self-audit + field-feedback patch. Honest fixes only — no doc-gaming. The
|
|
13
|
+
remaining guard warnings (Spec-Kit on bugfix specs, negation-load, docs-diff
|
|
14
|
+
test files, freshness lag, the demo↔docguard import cycle) are deferred to
|
|
15
|
+
v0.23.0 because the *correct* fix is improving the validators, not papering
|
|
16
|
+
over the docs. `sync --write` confirmed the freshness warnings are git-age
|
|
17
|
+
lag, not real code-truth drift, so they were left honest rather than date-bumped.
|
|
18
|
+
|
|
19
|
+
### Fixed
|
|
20
|
+
- **Stale validator counts in scaffolded files** — `extensions/spec-kit-docguard/skills/docguard-guard/SKILL.md`
|
|
21
|
+
("19-validator") and `extensions/spec-kit-docguard/commands/guard.md` ("19-validator", "20 total")
|
|
22
|
+
hardcoded counts that drift every release and shipped into user projects. Reworded to be count-free,
|
|
23
|
+
matching the already-fixed `templates/commands/docguard.guard.md`. (Field report, Issue 1.)
|
|
24
|
+
- **REQUIREMENTS.md non-functional requirements were unfilled web-service boilerplate**
|
|
25
|
+
("200ms p95", "99.9% uptime SLA") — nonsensical for a zero-dependency CLI and untraced.
|
|
26
|
+
Rewrote NFR-001/002/003 to DocGuard's real, test-backed NFRs (injection-safe subprocess
|
|
27
|
+
spawns, zero runtime deps, cross-process plan cache) and traced each to its regression test
|
|
28
|
+
via `@req` tags. Clears the 3 Traceability warnings honestly.
|
|
29
|
+
- **`specs/002-fix-test-discovery/plan.md`** — added the Spec-Kit-mandated `Summary` and
|
|
30
|
+
`Project Structure` sections (real content).
|
|
31
|
+
|
|
32
|
+
### Added / Improved
|
|
33
|
+
- **`docguard explain canonical-sync`** — the count-level companion validator was missing from
|
|
34
|
+
the explainer table; added it. (Field report, Issue 10.)
|
|
35
|
+
- **Test-Spec validator note** now points to the expected table format and `docguard explain` when
|
|
36
|
+
it finds no service-to-test mappings, instead of a dead-end message. (Field report, Issue 4.)
|
|
37
|
+
|
|
38
|
+
### Docs
|
|
39
|
+
- **README "What's New" no longer over-claims language-aware trace mapping for `guard`.** The
|
|
40
|
+
multilingual patterns live in the standalone `docguard trace` command; the guard-time
|
|
41
|
+
Traceability validator is JS/TS-first today, with language parity on the v0.23 roadmap.
|
|
42
|
+
(Field report, Issue 3 — honesty fix pending the full validator port.)
|
|
43
|
+
|
|
10
44
|
## [0.22.0] - 2026-05-28
|
|
11
45
|
|
|
12
46
|
### Added — Surface-Sync validator (item-level enumerable drift)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: docguard-cli
|
|
3
|
-
Version: 0.22.
|
|
3
|
+
Version: 0.22.1
|
|
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
|
|
@@ -130,8 +130,9 @@ Recent highlights across the v0.16 → v0.19 line:
|
|
|
130
130
|
two commits. Pinpoints regressions without re-running the full suite by hand.
|
|
131
131
|
- **`docguard upgrade --apply --pr`** — when the config schema bumps, DocGuard migrates
|
|
132
132
|
`.docguard.json` for you and (optionally) opens a PR with the change.
|
|
133
|
-
- **Language-aware
|
|
134
|
-
Java, Ruby, and PHP layouts in addition to JS/TS.
|
|
133
|
+
- **Language-aware `docguard trace`** — the standalone `trace` command understands Python, Rust, Go,
|
|
134
|
+
Java, Ruby, and PHP layouts in addition to JS/TS. (The guard-time Traceability validator is JS/TS-first
|
|
135
|
+
today; broader language parity is on the v0.23 roadmap.)
|
|
135
136
|
- **Per-validator severity overrides** — escalate `freshness` to `high` for production repos,
|
|
136
137
|
demote `doc-quality` to `low` for prototypes. Configurable per-project.
|
|
137
138
|
- **JSON Schema for `.docguard.json`** — IDE autocomplete, in-line docs, and validation via
|
|
@@ -106,8 +106,9 @@ Recent highlights across the v0.16 → v0.19 line:
|
|
|
106
106
|
two commits. Pinpoints regressions without re-running the full suite by hand.
|
|
107
107
|
- **`docguard upgrade --apply --pr`** — when the config schema bumps, DocGuard migrates
|
|
108
108
|
`.docguard.json` for you and (optionally) opens a PR with the change.
|
|
109
|
-
- **Language-aware
|
|
110
|
-
Java, Ruby, and PHP layouts in addition to JS/TS.
|
|
109
|
+
- **Language-aware `docguard trace`** — the standalone `trace` command understands Python, Rust, Go,
|
|
110
|
+
Java, Ruby, and PHP layouts in addition to JS/TS. (The guard-time Traceability validator is JS/TS-first
|
|
111
|
+
today; broader language parity is on the v0.23 roadmap.)
|
|
111
112
|
- **Per-validator severity overrides** — escalate `freshness` to `high` for production repos,
|
|
112
113
|
demote `doc-quality` to `low` for prototypes. Configurable per-project.
|
|
113
114
|
- **JSON Schema for `.docguard.json`** — IDE autocomplete, in-line docs, and validation via
|
|
@@ -150,6 +150,17 @@ const EXPLAINERS = {
|
|
|
150
150
|
example: 'AGENTS.md says "22 validators" and `docguard guard` shows 22 active validators',
|
|
151
151
|
standard: 'CDD principle: documented metrics match reality',
|
|
152
152
|
},
|
|
153
|
+
canonicalSync: {
|
|
154
|
+
title: 'Canonical-Sync — README count claims match code-truth (DocGuard repo only)',
|
|
155
|
+
what: 'Count-level check (complementing surface-sync\'s item-level check). Verifies that numeric claims in the README — "ships N commands", "N validators", mermaid diagram counts — match what the code actually exposes. N/A unless the project opts in via `canonicalSync` config; primarily for DocGuard\'s own repo.',
|
|
156
|
+
why: 'Hardcoded counts in prose and diagrams drift silently every time a command or validator is added/removed. A README claiming "23 validators" when there are 24 erodes trust and misleads AI agents reading the docs.',
|
|
157
|
+
triggers: [
|
|
158
|
+
['README.md claims "N validators" but guard reports M', 'Update the count. `docguard fix --write` handles this mechanically across all docs.'],
|
|
159
|
+
['architecture diagram has stale counts', 'Update the count inside the mermaid block (fix --write does not edit mermaid; do it manually).'],
|
|
160
|
+
],
|
|
161
|
+
example: 'README says "24 validators" and the architecture mermaid says "Validators (24)" — both matching the live registry',
|
|
162
|
+
standard: 'CDD principle: documented counts match implemented counts',
|
|
163
|
+
},
|
|
153
164
|
surfaceSync: {
|
|
154
165
|
title: 'Surface-Sync — every code-derived list entry is documented',
|
|
155
166
|
what: 'Item-level check (complementing canonical-sync\'s count-level check). For each configured surface (e.g. commands → `cli/commands/*.mjs`), compares the discovered files against the names appearing in table rows / bullet lists in target docs (README.md, AGENTS.md). Warns when a code item is missing from the doc, or a doc item is missing from code.',
|
|
@@ -175,7 +175,7 @@ export function validateTestSpec(projectDir, config) {
|
|
|
175
175
|
|
|
176
176
|
if (hasTestDir || hasColocated || hasConfigTests) {
|
|
177
177
|
// Tests exist but the spec maps none of them → not applicable, not a pass.
|
|
178
|
-
results.note = 'TEST-SPEC.md declares no service-to-test mappings';
|
|
178
|
+
results.note = 'TEST-SPEC.md declares no service-to-test mappings. Add a "## Source-to-Test Map" table with `| Source | Test file | Status |` columns — run `docguard explain "no service-to-test mappings"` for the exact format.';
|
|
179
179
|
} else {
|
|
180
180
|
results.warnings.push(
|
|
181
181
|
'No test directory or co-located test files found. ' +
|
|
@@ -22,11 +22,11 @@
|
|
|
22
22
|
|
|
23
23
|
<!-- Quality attributes: performance, security, reliability -->
|
|
24
24
|
|
|
25
|
-
| ID | Category | Requirement |
|
|
26
|
-
|
|
27
|
-
| NFR-001 |
|
|
28
|
-
| NFR-002 |
|
|
29
|
-
| NFR-003 |
|
|
25
|
+
| ID | Category | Requirement | Verified by |
|
|
26
|
+
|----|----------|-------------|-------------|
|
|
27
|
+
| NFR-001 | Security | CLI subprocess invocations are injection-safe — agent/config-derived values are allowlist-validated and passed via `execFileSync` (no shell interpolation of untrusted input) | `tests/security-init-injection.test.mjs` |
|
|
28
|
+
| NFR-002 | Portability | The published package runs with **zero runtime dependencies** on Node.js ≥18 — the packaged tarball executes standalone | `tests/npm-pack-smoke.test.mjs` |
|
|
29
|
+
| NFR-003 | Performance | Repeat `guard` runs reuse a cross-process plan cache that is invalidated on any working-tree change | `tests/plan-disk-cache.test.mjs` |
|
|
30
30
|
|
|
31
31
|
## Success Criteria
|
|
32
32
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: "Run
|
|
2
|
+
description: "Run the full quality gate with severity triage and actionable remediation"
|
|
3
3
|
handoffs:
|
|
4
4
|
- label: Fix All Issues
|
|
5
5
|
agent: docguard.fix
|
|
@@ -43,7 +43,7 @@ npx --yes docguard-cli@latest guard $ARGUMENTS
|
|
|
43
43
|
|
|
44
44
|
5. Re-run guard after fixes. Iterate until all checks pass (max 3 iterations).
|
|
45
45
|
|
|
46
|
-
## Validators
|
|
46
|
+
## Validators
|
|
47
47
|
|
|
48
48
|
| Validator | What It Checks |
|
|
49
49
|
|-----------|---------------|
|
|
@@ -3,7 +3,7 @@ schema_version: "1.0"
|
|
|
3
3
|
extension:
|
|
4
4
|
id: "docguard"
|
|
5
5
|
name: "DocGuard — CDD Enforcement"
|
|
6
|
-
version: "0.22.
|
|
6
|
+
version: "0.22.1"
|
|
7
7
|
description: "Canonical-Driven Development enforcement as a true spec-kit extension. LLM-first design with 19 automated validators, 4 AI behavior skills, spec-kit skill chaining, and workflow hooks. Zero NPM runtime dependencies."
|
|
8
8
|
author: "Ricardo Accioly"
|
|
9
9
|
repository: "https://github.com/raccioly/docguard"
|
|
@@ -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.22.
|
|
9
|
+
version: 0.22.1
|
|
10
10
|
source: extensions/spec-kit-docguard/skills/docguard-fix
|
|
11
11
|
---
|
|
12
|
-
<!-- docguard:version: 0.22.
|
|
12
|
+
<!-- docguard:version: 0.22.1 -->
|
|
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.22.
|
|
10
|
+
version: 0.22.1
|
|
11
11
|
source: extensions/spec-kit-docguard/skills/docguard-guard
|
|
12
12
|
---
|
|
13
|
-
<!-- docguard:version: 0.22.
|
|
13
|
+
<!-- docguard:version: 0.22.1 -->
|
|
14
14
|
|
|
15
15
|
# DocGuard Guard Skill
|
|
16
16
|
|
|
@@ -24,7 +24,7 @@ You **MUST** consider the user input before proceeding (if not empty).
|
|
|
24
24
|
|
|
25
25
|
## Goal
|
|
26
26
|
|
|
27
|
-
Execute DocGuard's
|
|
27
|
+
Execute DocGuard's full guard validator suite against the current project, parse structured results, triage findings by severity and impact, and produce an actionable remediation plan. This skill transforms raw CLI output into an AI-digestible quality assessment.
|
|
28
28
|
|
|
29
29
|
## Pre-Execution Checks
|
|
30
30
|
|
|
@@ -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.22.
|
|
9
|
+
version: 0.22.1
|
|
10
10
|
source: extensions/spec-kit-docguard/skills/docguard-review
|
|
11
11
|
---
|
|
12
|
-
<!-- docguard:version: 0.22.
|
|
12
|
+
<!-- docguard:version: 0.22.1 -->
|
|
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.22.
|
|
9
|
+
version: 0.22.1
|
|
10
10
|
source: extensions/spec-kit-docguard/skills/docguard-score
|
|
11
11
|
---
|
|
12
|
-
<!-- docguard:version: 0.22.
|
|
12
|
+
<!-- docguard:version: 0.22.1 -->
|
|
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.22.
|
|
7
|
+
version: 0.22.1
|
|
8
8
|
source: extensions/spec-kit-docguard/skills/docguard-sync
|
|
9
9
|
---
|
|
10
10
|
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "docguard-cli"
|
|
7
|
-
version = "0.22.
|
|
7
|
+
version = "0.22.1"
|
|
8
8
|
description = "The enforcement tool for Canonical-Driven Development (CDD). Audit, generate, and guard your project documentation. Zero dependencies."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = { text = "MIT" }
|
|
@@ -4,6 +4,15 @@
|
|
|
4
4
|
**Spec**: [spec.md](file:///Users/ricardoaccioly/.gemini/canonical-spec-kit/specs/002-fix-test-discovery/spec.md)
|
|
5
5
|
**Created**: 2026-03-18
|
|
6
6
|
|
|
7
|
+
## Summary
|
|
8
|
+
|
|
9
|
+
Fix three test-file-discovery bugs in the Docs-Diff validator plus the scorer's CI
|
|
10
|
+
detection. `getTestFilesFromPatterns()` misuses the ignore-filter as a *match*
|
|
11
|
+
function, so it pulls test files from `node_modules`; `calcTestingScore()` recognizes
|
|
12
|
+
only two GitHub Actions files. This plan introduces shared glob matching, scopes
|
|
13
|
+
test-file resolution to the project tree, and broadens CI detection — all on shared
|
|
14
|
+
infra (no per-validator duplication), verified by regression tests.
|
|
15
|
+
|
|
7
16
|
## Technical Context
|
|
8
17
|
|
|
9
18
|
- **Runtime**: Node.js 18+ (zero NPM deps)
|
|
@@ -11,6 +20,18 @@
|
|
|
11
20
|
- **Constitution**: v1.1.0 (shared infra allowed per Principle IV)
|
|
12
21
|
- **Affected Area**: Test file resolution in docs-diff validator + scoring CI detection
|
|
13
22
|
|
|
23
|
+
## Project Structure
|
|
24
|
+
|
|
25
|
+
```
|
|
26
|
+
cli/
|
|
27
|
+
validators/docs-diff.mjs # getTestFilesFromPatterns() — bug 1 & 2 (match vs ignore)
|
|
28
|
+
commands/score.mjs # calcTestingScore() — bug 3 (CI detection)
|
|
29
|
+
shared-glob.mjs # NEW: shared glob→regex matcher (anchored, node_modules-safe)
|
|
30
|
+
tests/
|
|
31
|
+
docs-diff.test.mjs # regression: no node_modules test files
|
|
32
|
+
score-ci-detection.test.mjs# regression: broader CI provider coverage
|
|
33
|
+
```
|
|
34
|
+
|
|
14
35
|
## Root Cause Analysis
|
|
15
36
|
|
|
16
37
|
All 3 bugs share a single root cause: **`getTestFilesFromPatterns()` in docs-diff.mjs reuses `buildIgnoreFilter()` as a file *match* function** (line 219). `buildIgnoreFilter` was designed to answer "should this file be SKIPPED?", not "does this file match a test pattern?". The regex it produces (`^pattern$|/pattern$|...`) does match files inside `node_modules` because `**` converts to `.*`, which matches any path segment including `node_modules/zod/__tests__/...`.
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* v0.19-P1 — npm-pack smoke test.
|
|
3
3
|
*
|
|
4
|
+
* @req NFR-002 — published package runs with zero runtime dependencies on Node ≥18.
|
|
5
|
+
*
|
|
4
6
|
* Builds the actual tarball that would be published to npm, extracts it
|
|
5
7
|
* into a temp directory, and runs the CLI against a tiny fixture. Catches
|
|
6
8
|
* the class of bugs where a needed file is missing from `package.json`'s
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* v0.18-P2 — Cross-process plan cache (.docguard/plan.cache.json).
|
|
3
3
|
*
|
|
4
|
+
* @req NFR-003 — repeat guard runs reuse a cross-process plan cache, invalidated on tree change.
|
|
5
|
+
*
|
|
4
6
|
* Verifies the disk cache (L2):
|
|
5
7
|
* - First call writes the file
|
|
6
8
|
* - Second call (in a fresh process / fresh in-memory state) reads it
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* v0.21.1 — Issue #190 regression tests.
|
|
3
3
|
*
|
|
4
|
+
* @req NFR-001 — CLI subprocess invocations are injection-safe (allowlist + execFileSync).
|
|
5
|
+
*
|
|
4
6
|
* Pre-v0.21.1, `docguard init` was vulnerable to command injection via the
|
|
5
7
|
* `ai` field in `.specify/init-options.json`:
|
|
6
8
|
*
|
|
@@ -209,10 +209,18 @@ async function refreshScore() {
|
|
|
209
209
|
if (!dir) return;
|
|
210
210
|
|
|
211
211
|
try {
|
|
212
|
+
statusBarItem.text = '$(sync~spin) CDD: Loading...';
|
|
213
|
+
statusBarItem.tooltip = 'Calculating CDD Score...';
|
|
214
|
+
statusBarItem.backgroundColor = undefined;
|
|
215
|
+
statusBarItem.show();
|
|
216
|
+
await new Promise(r => setTimeout(r, 0));
|
|
217
|
+
|
|
212
218
|
const output = execSpecguard(dir, 'score --format json');
|
|
213
219
|
const jsonStart = output.indexOf('{');
|
|
214
220
|
if (jsonStart < 0) {
|
|
215
221
|
statusBarItem.text = '$(shield) CDD: ?';
|
|
222
|
+
statusBarItem.tooltip = 'Error calculating CDD Score (invalid output)';
|
|
223
|
+
statusBarItem.backgroundColor = new vscode.ThemeColor('statusBarItem.errorBackground');
|
|
216
224
|
statusBarItem.show();
|
|
217
225
|
return;
|
|
218
226
|
}
|
|
@@ -243,6 +251,8 @@ async function refreshScore() {
|
|
|
243
251
|
outputChannel.appendLine(`Score refreshed: ${score}/100 (${grade})`);
|
|
244
252
|
} catch (e) {
|
|
245
253
|
statusBarItem.text = '$(shield) CDD: ?';
|
|
254
|
+
statusBarItem.tooltip = `Score refresh error: ${e.message}`;
|
|
255
|
+
statusBarItem.backgroundColor = new vscode.ThemeColor('statusBarItem.errorBackground');
|
|
246
256
|
statusBarItem.show();
|
|
247
257
|
outputChannel.appendLine(`Score refresh error: ${e.message}`);
|
|
248
258
|
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{docguard_cli-0.22.0 → docguard_cli-0.22.1}/.specify/extensions/.cache/catalog-ebf165086500aab1.json
RENAMED
|
File without changes
|
{docguard_cli-0.22.0 → docguard_cli-0.22.1}/.specify/extensions/.cache/catalog-metadata.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|