docguard-cli 0.29.0__tar.gz → 0.30.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.29.0 → docguard_cli-0.30.0}/.github/scripts/speckit-submission.py +5 -4
- docguard_cli-0.30.0/.pre-commit-hooks.yaml +49 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/anatomy.md +39 -14
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/buglog.json +64 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/cerebrum.md +6 -0
- docguard_cli-0.30.0/.wolf/hooks/_session.json +27 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/memory.md +64 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/token-ledger.json +9334 -8
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/AGENTS.md +1 -1
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/CHANGELOG.md +47 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/DRIFT-LOG.md +1 -0
- docguard_cli-0.30.0/Dockerfile +26 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/PKG-INFO +17 -2
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/README.md +16 -1
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/trace.mjs +364 -1
- docguard_cli-0.30.0/cli/commands/verify.mjs +154 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/docguard.mjs +11 -3
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/findings.mjs +12 -0
- docguard_cli-0.30.0/cli/scanners/instruction-audit.mjs +320 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/scanners/speckit.mjs +346 -1
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/docs-canonical/ARCHITECTURE.md +2 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/extensions/spec-kit-docguard/extension.yml +1 -1
- {docguard_cli-0.29.0/.agent → docguard_cli-0.30.0/extensions/spec-kit-docguard}/skills/docguard-fix/SKILL.md +2 -2
- {docguard_cli-0.29.0/.agent → docguard_cli-0.30.0/extensions/spec-kit-docguard}/skills/docguard-guard/SKILL.md +2 -2
- {docguard_cli-0.29.0/.agent → docguard_cli-0.30.0/extensions/spec-kit-docguard}/skills/docguard-review/SKILL.md +2 -2
- {docguard_cli-0.29.0/.agent → docguard_cli-0.30.0/extensions/spec-kit-docguard}/skills/docguard-score/SKILL.md +2 -2
- {docguard_cli-0.29.0/.agent → docguard_cli-0.30.0/extensions/spec-kit-docguard}/skills/docguard-sync/SKILL.md +2 -2
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/package.json +2 -1
- docguard_cli-0.30.0/packaging/homebrew/docguard.rb +36 -0
- docguard_cli-0.30.0/packaging/submissions.md +159 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/pyproject.toml +1 -1
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/schemas/docguard-config.schema.json +11 -0
- docguard_cli-0.30.0/server.json +32 -0
- docguard_cli-0.30.0/smithery.yaml +30 -0
- docguard_cli-0.30.0/templates/ci/gitlab-component.yml +90 -0
- docguard_cli-0.30.0/tests/instruction-audit.test.mjs +187 -0
- docguard_cli-0.30.0/tests/speckit-phantom.test.mjs +238 -0
- docguard_cli-0.30.0/tests/trace-features.test.mjs +201 -0
- docguard_cli-0.29.0/.wolf/hooks/_session.json +0 -362
- docguard_cli-0.29.0/cli/commands/verify.mjs +0 -67
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/commands/docguard.fix.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/commands/docguard.guard.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/commands/docguard.review.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/commands/docguard.score.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/commands/speckit.analyze.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/commands/speckit.checklist.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/commands/speckit.clarify.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/commands/speckit.constitution.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/commands/speckit.implement.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/commands/speckit.plan.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/commands/speckit.specify.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/commands/speckit.tasks.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/commands/speckit.taskstoissues.md +0 -0
- {docguard_cli-0.29.0/extensions/spec-kit-docguard → docguard_cli-0.30.0/.agent}/skills/docguard-fix/SKILL.md +0 -0
- {docguard_cli-0.29.0/extensions/spec-kit-docguard → docguard_cli-0.30.0/.agent}/skills/docguard-guard/SKILL.md +0 -0
- {docguard_cli-0.29.0/extensions/spec-kit-docguard → docguard_cli-0.30.0/.agent}/skills/docguard-review/SKILL.md +0 -0
- {docguard_cli-0.29.0/extensions/spec-kit-docguard → docguard_cli-0.30.0/.agent}/skills/docguard-score/SKILL.md +0 -0
- {docguard_cli-0.29.0/extensions/spec-kit-docguard → docguard_cli-0.30.0/.agent}/skills/docguard-sync/SKILL.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/skills/speckit-analyze/SKILL.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/skills/speckit-checklist/SKILL.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/skills/speckit-clarify/SKILL.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/skills/speckit-constitution/SKILL.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/skills/speckit-implement/SKILL.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/skills/speckit-plan/SKILL.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/skills/speckit-specify/SKILL.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/skills/speckit-tasks/SKILL.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.agent/skills/speckit-taskstoissues/SKILL.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.claude/rules/openwolf.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.claude/settings.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.docguard.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.docguardignore +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.github/ISSUE_TEMPLATE/docguard-feedback.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.github/dependabot.yml +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.github/workflows/ci.yml +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.github/workflows/release.yml +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.github/workflows/supply-chain.yml +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.github/workflows/sync-speckit-catalog.yml +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.gitignore +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.jules/bolt.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.jules/palette.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.jules/sentinel.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.jules-setup.sh +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.npmignore +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.npmrc +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.specify/extensions/.cache/catalog-ebf165086500aab1-metadata.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.specify/extensions/.cache/catalog-ebf165086500aab1.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.specify/extensions/.cache/catalog-metadata.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.specify/extensions/.cache/catalog.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.specify/init-options.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.specify/memory/constitution.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.specify/scripts/bash/check-prerequisites.sh +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.specify/scripts/bash/common.sh +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.specify/scripts/bash/create-new-feature.sh +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.specify/scripts/bash/setup-plan.sh +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.specify/scripts/bash/update-agent-context.sh +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.specify/templates/agent-file-template.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.specify/templates/checklist-template.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.specify/templates/constitution-template.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.specify/templates/plan-template.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.specify/templates/spec-template.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.specify/templates/tasks-template.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/OPENWOLF.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/config.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/cron-manifest.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/cron-state.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/daemon.log +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/designqc-report.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/hooks/_wrap_up_nudged +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/hooks/package.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/hooks/post-read.js +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/hooks/post-write.js +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/hooks/pre-read.js +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/hooks/pre-write.js +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/hooks/session-start.js +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/hooks/shared.js +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/hooks/stop.js +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/identity.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/reframe-frameworks.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/.wolf/suggestions.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/CLAUDE.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/CODE_OF_CONDUCT.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/COMPARISONS.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/CONTRIBUTING.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/LICENSE +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/PHILOSOPHY.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/README.es.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/README.pt-BR.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/ROADMAP.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/SECURITY.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/STANDARD.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/SUPPLY-CHAIN-AUDIT.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/SUPPORT.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/action.yml +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/assets/bin/docguard +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/assets/demo.gif +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/assets/demo.tape +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/assets/docguard-logo.png +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/agent.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/agents.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/badge.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/ci.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/demo.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/diagnose.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/diff.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/explain.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/feedback.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/fix.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/generate.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/guard.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/hooks.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/impact.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/init.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/llms.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/mcp.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/memory.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/publish.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/score.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/setup.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/sync-tests.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/sync.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/upgrade.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/commands/watch.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/config.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/ensure-skills.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/scanners/agent-readability.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/scanners/api-doc.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/scanners/cdk.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/scanners/doc-tools.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/scanners/frontend.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/scanners/iac.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/scanners/integrations.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/scanners/inventory.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/scanners/js-ast.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/scanners/memory-plan.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/scanners/project-type.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/scanners/py-ast.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/scanners/routes.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/scanners/schemas.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/scanners/semantic-claims.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/shared-git.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/shared-ignore.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/shared-source.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/shared-trace-patterns.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/shared.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validator-markers.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/api-surface.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/architecture.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/canonical-sync.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/changelog.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/cross-reference.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/doc-quality.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/docs-coverage.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/docs-diff.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/docs-sync.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/drift.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/environment.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/freshness.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/generated-staleness.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/metadata-sync.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/metrics-consistency.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/schema-sync.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/security.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/spec-kit.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/structure.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/surface-sync.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/test-spec.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/todo-tracking.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/validators/traceability.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/writers/api-reference.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/writers/doc-generators.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/writers/fix-memory.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/writers/generate-io.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/writers/mechanical.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/writers/sarif.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/cli/writers/sections.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/commands/docguard.fix.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/commands/docguard.guard.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/commands/docguard.review.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/commands/docguard.score.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/configs/fastify.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/configs/generic.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/configs/nextjs.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/configs/python.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/docguard_cli/__init__.py +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/docguard_cli/wrapper.py +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/docs/ai-integration.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/docs/commands.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/docs/configuration.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/docs/doc-sections.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/docs/faq.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/docs/installation.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/docs/profiles.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/docs/quickstart.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/docs-canonical/CI-RECIPES.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/docs-canonical/DATA-MODEL.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/docs-canonical/ENVIRONMENT.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/docs-canonical/REQUIREMENTS.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/docs-canonical/SECURITY.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/docs-canonical/SURFACE-AUDIT.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/docs-canonical/TEST-SPEC.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/docs-implementation/MIGRATION-v0.20.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/examples/01-express-api/README.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/examples/01-express-api/package.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/examples/01-express-api/server.js +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/examples/02-python-flask/README.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/examples/02-python-flask/app.py +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/examples/02-python-flask/docs-canonical/ARCHITECTURE.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/examples/02-python-flask/requirements.txt +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/examples/03-spec-kit-project/CHANGELOG.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/examples/03-spec-kit-project/README.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/examples/03-spec-kit-project/docs-canonical/ARCHITECTURE.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/examples/03-spec-kit-project/docs-canonical/TEST-SPEC.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/examples/03-spec-kit-project/package.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/examples/03-spec-kit-project/src/index.js +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/examples/03-spec-kit-project/tasks.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/examples/03-spec-kit-project/tests/basic.test.js +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/examples/README.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/extensions/spec-kit-docguard/LICENSE +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/extensions/spec-kit-docguard/README.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/extensions/spec-kit-docguard/commands/diagnose.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/extensions/spec-kit-docguard/commands/fix.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/extensions/spec-kit-docguard/commands/generate.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/extensions/spec-kit-docguard/commands/guard.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/extensions/spec-kit-docguard/commands/init.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/extensions/spec-kit-docguard/commands/score.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/extensions/spec-kit-docguard/commands/sync.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/extensions/spec-kit-docguard/commands/trace.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/extensions/spec-kit-docguard/scripts/bash/common.sh +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/extensions/spec-kit-docguard/scripts/bash/docguard-check-docs.sh +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/extensions/spec-kit-docguard/scripts/bash/docguard-init-doc.sh +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/extensions/spec-kit-docguard/scripts/bash/docguard-suggest-fix.sh +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/extensions/spec-kit-docguard/templates/extensions.yml +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/extensions/spec-kit-docguard/templates/github-workflows/docguard-autofix.yml +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/extensions/spec-kit-docguard/templates/github-workflows/docguard-guard.yml +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/llms-full.txt +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/llms.txt +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/package-lock.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/specs/001-fix-ignore-validators/plan.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/specs/001-fix-ignore-validators/spec.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/specs/001-fix-ignore-validators/tasks.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/specs/002-fix-test-discovery/plan.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/specs/002-fix-test-discovery/spec.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/specs/002-fix-test-discovery/tasks.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/specs/003-v011-false-positives/plan.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/specs/003-v011-false-positives/spec.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/specs/003-v011-false-positives/tasks.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/specs/004-v020-env-var-false-negative/spec.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/specs/005-hugocross-next-bugs/spec.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/ADR.md.template +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/AGENTS.md.template +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/ARCHITECTURE.md.template +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/CHANGELOG.md.template +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/CURRENT-STATE.md.template +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/DATA-MODEL.md.template +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/DEPLOYMENT.md.template +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/DRIFT-LOG.md.template +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/ENVIRONMENT.md.template +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/KNOWN-GOTCHAS.md.template +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/REQUIREMENTS.md.template +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/ROADMAP.md.template +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/RUNBOOKS.md.template +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/SECURITY.md.template +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/TEST-SPEC.md.template +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/TROUBLESHOOTING.md.template +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/VENDOR-BUGS.md.template +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/ci/github-actions.yml +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/commands/docguard.fix.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/commands/docguard.guard.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/commands/docguard.init.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/commands/docguard.review.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/commands/docguard.update.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/demo-fixture/.docguard.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/demo-fixture/.env.example +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/demo-fixture/AGENTS.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/demo-fixture/CHANGELOG.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/demo-fixture/DRIFT-LOG.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/demo-fixture/README.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/demo-fixture/docs-canonical/API-REFERENCE.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/demo-fixture/docs-canonical/ARCHITECTURE.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/demo-fixture/docs-canonical/DATA-MODEL.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/demo-fixture/docs-canonical/ENVIRONMENT.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/demo-fixture/docs-canonical/SECURITY.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/demo-fixture/docs-canonical/TEST-SPEC.md +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/demo-fixture/package.json +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/demo-fixture/src/api.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/demo-fixture/src/notifier.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/demo-fixture/src/scheduler.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/templates/demo-fixture/src/worker.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/agent-readability.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/agent.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/agents-sync.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/anchor-autofix.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/api-doc.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/api-surface.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/api-write.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/architecture.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/b7-node-env-symmetry.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/backup-failure.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/canonical-sync.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/cdk-detection.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/changed-only-scoping.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/changed-only.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/changelog.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/commands.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/cross-reference.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/demo-command.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/doc-quality.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/doc-section-synonyms.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/docguardignore.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/docs-coverage.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/docs-diff.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/docs-sync.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/drift.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/ensure-skills-idempotent.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/env-schema-detection.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/environment.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/explain-coverage.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/field-report-2-cli.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/field-report-3-deferred.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/field-report-3.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/fix-memory.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/fix-suppression.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/fixture-projects.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/freshness.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/frontend-deep.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/frontend.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/generated-staleness.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/guard-classify.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/guard-no-throw.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/hooks.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/i18n.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/impact.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/init-smart-detection.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/integrations.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/inventory.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/js-ast.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/llms-full-pack.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/mcp.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/mechanical.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/memory-plan.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/metadata-sync.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/metrics-consistency.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/metrics-dedup.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/monorepo-scanning.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/multi-spec.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/npm-pack-smoke.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/openapi-parse-honesty.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/patch-0.11.2.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/plan-disk-cache.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/profile-flag.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/project-type.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/py-ast.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/regenerate-section.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/routes-express-mounts.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/routes-fastify.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/routes-multilang.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/routes-nextjs-app-router.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/sarif.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/schema-sync.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/schemas-multilang.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/schemas.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/scoping-extended.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/score-suggestions.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/section-na-markers.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/sections.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/security-init-injection.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/security.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/severity.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/shared-git.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/shared-source.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/speckit-bugfix.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/starter-scaffold.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/stress-test.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/structure.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/surface-sync.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/sweep-nudge.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/sync-since.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/sync.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/test-spec.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/todo-tracking.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/trace-multilang.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/trace-reverse.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/traceability.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/upgrade-pr-e2e.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/upgrade-pr.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/upgrade.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/v020-consolidation.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/validator-markers.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/validator-naming.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/version-pin.test.mjs +0 -0
- {docguard_cli-0.29.0 → docguard_cli-0.30.0}/tests/whats-new.test.mjs +0 -0
|
@@ -61,10 +61,11 @@ def build(version: str, download_url: str):
|
|
|
61
61
|
"name": "DocGuard — CDD Enforcement",
|
|
62
62
|
"id": "docguard",
|
|
63
63
|
"description": (
|
|
64
|
-
"
|
|
65
|
-
"and
|
|
66
|
-
"
|
|
67
|
-
"
|
|
64
|
+
"The only doc-integrity engine with an MCP server, SARIF "
|
|
65
|
+
"output, and a deterministic zero-LLM core. Validates, "
|
|
66
|
+
"scores, and traces documentation against code — 24 "
|
|
67
|
+
"validators, stable finding codes, GitHub Action with PR "
|
|
68
|
+
"annotations, spec-kit hooks. Pure Node.js, one pinned dep."
|
|
68
69
|
),
|
|
69
70
|
"author": "raccioly",
|
|
70
71
|
"version": version,
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# DocGuard hooks for the pre-commit framework (https://pre-commit.com).
|
|
2
|
+
#
|
|
3
|
+
# How this works: `language: node` tells pre-commit to install THIS repo with
|
|
4
|
+
# npm into an isolated nodeenv. package.json's `"bin": { "docguard": ... }`
|
|
5
|
+
# is what makes the `docguard` executable in `entry` resolvable — no global
|
|
6
|
+
# install needed on the consumer's machine.
|
|
7
|
+
#
|
|
8
|
+
# ### pre-commit
|
|
9
|
+
# Consumers add this to their project's .pre-commit-config.yaml:
|
|
10
|
+
#
|
|
11
|
+
# repos:
|
|
12
|
+
# - repo: https://github.com/raccioly/docguard
|
|
13
|
+
# rev: v0.29.0
|
|
14
|
+
# hooks:
|
|
15
|
+
# - id: docguard-guard
|
|
16
|
+
#
|
|
17
|
+
# For the full (slower) validator run on push instead of commit:
|
|
18
|
+
#
|
|
19
|
+
# repos:
|
|
20
|
+
# - repo: https://github.com/raccioly/docguard
|
|
21
|
+
# rev: v0.29.0
|
|
22
|
+
# hooks:
|
|
23
|
+
# - id: docguard-guard-full
|
|
24
|
+
#
|
|
25
|
+
# # and install the push-stage hook once per clone:
|
|
26
|
+
# # pre-commit install --hook-type pre-push
|
|
27
|
+
#
|
|
28
|
+
# Both hooks validate the project as a whole (docs vs code), so filenames are
|
|
29
|
+
# never passed and the hooks always run (`pass_filenames: false` +
|
|
30
|
+
# `always_run: true`).
|
|
31
|
+
|
|
32
|
+
- id: docguard-guard
|
|
33
|
+
name: DocGuard guard (changed-only)
|
|
34
|
+
description: Fast doc-drift gate — validates only the docs/code touched in the working tree.
|
|
35
|
+
entry: docguard guard --changed-only --quiet
|
|
36
|
+
language: node
|
|
37
|
+
pass_filenames: false
|
|
38
|
+
always_run: true
|
|
39
|
+
|
|
40
|
+
- id: docguard-guard-full
|
|
41
|
+
name: DocGuard guard (full)
|
|
42
|
+
description: Full DocGuard validator run — every enabled validator, intended for the pre-push stage.
|
|
43
|
+
entry: docguard guard --quiet
|
|
44
|
+
language: node
|
|
45
|
+
pass_filenames: false
|
|
46
|
+
always_run: true
|
|
47
|
+
stages: [pre-push]
|
|
48
|
+
# `pre-push` (vs the legacy `push`) stage name requires pre-commit >= 3.2.
|
|
49
|
+
minimum_pre_commit_version: '3.2.0'
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
# anatomy.md
|
|
2
2
|
|
|
3
|
-
> Auto-maintained by OpenWolf. Last scanned: 2026-07-
|
|
4
|
-
> Files:
|
|
3
|
+
> Auto-maintained by OpenWolf. Last scanned: 2026-07-05T16:10:27.214Z
|
|
4
|
+
> Files: 662 tracked | Anatomy hits: 0 | Misses: 0
|
|
5
5
|
|
|
6
6
|
## ../../../../../../../tmp/
|
|
7
7
|
|
|
8
8
|
- `append-buglog.mjs` — Declares path (~1335 tok)
|
|
9
9
|
|
|
10
|
+
## ../../../../../.claude/projects/-Users-ricardoaccioly-Repo-claude-canonical-spec-kit/memory/
|
|
11
|
+
|
|
12
|
+
- `keep-local-main-synced.md` (~276 tok)
|
|
13
|
+
|
|
10
14
|
## ./
|
|
11
15
|
|
|
12
16
|
- `.docguard.json` (~526 tok)
|
|
@@ -16,27 +20,31 @@
|
|
|
16
20
|
- `.jules-setup.sh` — Google Jules Environment Startup Script (~429 tok)
|
|
17
21
|
- `.npmignore` — Development (~76 tok)
|
|
18
22
|
- `.npmrc` — Supply-Chain Security Hardening (~59 tok)
|
|
23
|
+
- `.pre-commit-hooks.yaml` — DocGuard hooks for the pre-commit framework (https://pre-commit.com). (~490 tok)
|
|
19
24
|
- `action.yml` — Declares fs (~7591 tok)
|
|
20
|
-
- `AGENTS.md` — AI Agent Instructions — DocGuard (~
|
|
21
|
-
- `CHANGELOG.md` — Changelog (~
|
|
25
|
+
- `AGENTS.md` — AI Agent Instructions — DocGuard (~1584 tok)
|
|
26
|
+
- `CHANGELOG.md` — Changelog (~45081 tok)
|
|
22
27
|
- `CLAUDE.md` — OpenWolf (~57 tok)
|
|
23
28
|
- `CODE_OF_CONDUCT.md` — Contributor Covenant Code of Conduct (~532 tok)
|
|
24
29
|
- `COMPARISONS.md` — Comparisons & Honest Limitations (~3053 tok)
|
|
25
30
|
- `CONTRIBUTING.md` — Contributing to DocGuard (~1780 tok)
|
|
26
31
|
- `docguard-cli-0.22.0.tgz` (~80828 tok)
|
|
27
32
|
- `docguard-cli-0.23.0.tgz` (~81238 tok)
|
|
28
|
-
- `
|
|
33
|
+
- `Dockerfile` — Docker container definition (~204 tok)
|
|
34
|
+
- `DRIFT-LOG.md` — Drift Log (~802 tok)
|
|
29
35
|
- `LICENSE` — Project license (~286 tok)
|
|
30
36
|
- `package-lock.json` — npm lock file (~617 tok)
|
|
31
|
-
- `package.json` — Node.js package manifest (~
|
|
37
|
+
- `package.json` — Node.js package manifest (~459 tok)
|
|
32
38
|
- `PHILOSOPHY.md` — The Philosophy of Canonical-Driven Development (~1757 tok)
|
|
33
39
|
- `pr_description.md` (~260 tok)
|
|
34
40
|
- `pyproject.toml` — The enforcement tool for Canonical-Driven Development (CDD). Audit, generate, and guard your project (~358 tok)
|
|
35
41
|
- `README.es.md` — 🛡️ DocGuard (~1098 tok)
|
|
36
|
-
- `README.md` — Project documentation (~
|
|
42
|
+
- `README.md` — Project documentation (~8376 tok)
|
|
37
43
|
- `README.pt-BR.md` — 🛡️ DocGuard (~1075 tok)
|
|
38
44
|
- `ROADMAP.md` — DocGuard Roadmap (~2432 tok)
|
|
39
45
|
- `SECURITY.md` — Security Policy (~357 tok)
|
|
46
|
+
- `server.json` (~272 tok)
|
|
47
|
+
- `smithery.yaml` — Smithery configuration for the DocGuard MCP server. (~283 tok)
|
|
40
48
|
- `STANDARD.md` — DocGuard Standard v0.1 (~6533 tok)
|
|
41
49
|
- `SUPPLY-CHAIN-AUDIT.md` — Supply-Chain Security Audit (~726 tok)
|
|
42
50
|
- `SUPPORT.md` — Support (~335 tok)
|
|
@@ -938,7 +946,7 @@
|
|
|
938
946
|
## .github/scripts/
|
|
939
947
|
|
|
940
948
|
- `speckit-submission-body.sh` — Build the body for a spec-kit "Extension Submission" issue. (~1482 tok)
|
|
941
|
-
- `speckit-submission.py` — Build a spec-kit "Extension Submission" for DocGuard. (~
|
|
949
|
+
- `speckit-submission.py` — Build a spec-kit "Extension Submission" for DocGuard. (~2905 tok)
|
|
942
950
|
|
|
943
951
|
## .github/workflows/
|
|
944
952
|
|
|
@@ -948,8 +956,8 @@
|
|
|
948
956
|
## cli/
|
|
949
957
|
|
|
950
958
|
- `config.mjs` — DocGuard — configuration loading. (~3265 tok)
|
|
951
|
-
- `docguard.mjs` — DocGuard CLI — The enforcement tool for Canonical-Driven Development (CDD) (~
|
|
952
|
-
- `findings.mjs` — Findings — the structured, LLM-addressable result unit (v0.27). (~
|
|
959
|
+
- `docguard.mjs` — DocGuard CLI — The enforcement tool for Canonical-Driven Development (CDD) (~9606 tok)
|
|
960
|
+
- `findings.mjs` — Findings — the structured, LLM-addressable result unit (v0.27). (~9698 tok)
|
|
953
961
|
- `shared-ignore.mjs` — Shared Ignore Utility — Unified file filtering for all validators. (~4132 tok)
|
|
954
962
|
- `shared-source.mjs` — Shared Source Resolution — Monorepo-aware source discovery. (~4655 tok)
|
|
955
963
|
- `shared.mjs` — Shared constants for DocGuard CLI — colors, profiles, version. (~3496 tok)
|
|
@@ -970,17 +978,19 @@
|
|
|
970
978
|
- `score.mjs` — Score Command — Calculate CDD maturity score (0-100) (~12136 tok)
|
|
971
979
|
- `sync-tests.mjs` — `docguard sync --tests` — reconcile the TEST-SPEC Source-to-Test Map from disk. (~3191 tok)
|
|
972
980
|
- `sync.mjs` — Sync Command — keep the documentation memory ALWAYS UP TO DATE. (~2371 tok)
|
|
973
|
-
- `
|
|
981
|
+
- `trace.mjs` — Trace Command — Generate a requirements traceability matrix (~7746 tok)
|
|
982
|
+
- `verify.mjs` — Verify Command — `docguard verify` (LLM field reports #5, #11). (~2118 tok)
|
|
974
983
|
|
|
975
984
|
## cli/scanners/
|
|
976
985
|
|
|
977
986
|
- `agent-readability.mjs` — Agent Readability scanner — how well do this repo's docs serve an AI agent? (~2228 tok)
|
|
987
|
+
- `instruction-audit.mjs` — Instruction Audit scanner — drift/conflict audit WITHIN agent instruction (~3668 tok)
|
|
978
988
|
- `inventory.mjs` — Inventory scanners — code-truth the generator PRE-FILLS instead of leaving (~1699 tok)
|
|
979
989
|
- `memory-plan.mjs` — Memory Plan — the orchestration artifact behind AI-powered Generate. (~5744 tok)
|
|
980
990
|
- `project-type.mjs` — Project-Type Detection — the language-agnostic spine. (~4190 tok)
|
|
981
991
|
- `routes.mjs` — Deep Route Scanner (~7712 tok)
|
|
982
992
|
- `semantic-claims.mjs` — Semantic claim extractor (LLM field report #5). (~1998 tok)
|
|
983
|
-
- `speckit.mjs` — Spec Kit Scanner — Detect, validate, and integrate with GitHub Spec Kit (~
|
|
993
|
+
- `speckit.mjs` — Spec Kit Scanner — Detect, validate, and integrate with GitHub Spec Kit (~8882 tok)
|
|
984
994
|
|
|
985
995
|
## cli/validators/
|
|
986
996
|
|
|
@@ -1015,7 +1025,7 @@
|
|
|
1015
1025
|
|
|
1016
1026
|
## docs-canonical/
|
|
1017
1027
|
|
|
1018
|
-
- `ARCHITECTURE.md` — Architecture (~
|
|
1028
|
+
- `ARCHITECTURE.md` — Architecture (~2967 tok)
|
|
1019
1029
|
- `DATA-MODEL.md` — Data Model (~1668 tok)
|
|
1020
1030
|
- `REQUIREMENTS.md` — Requirements (~673 tok)
|
|
1021
1031
|
- `SURFACE-AUDIT.md` — DocGuard Surface Audit (~5703 tok)
|
|
@@ -1031,9 +1041,17 @@
|
|
|
1031
1041
|
|
|
1032
1042
|
- `extension.yml` (~1026 tok)
|
|
1033
1043
|
|
|
1044
|
+
## packaging/
|
|
1045
|
+
|
|
1046
|
+
- `submissions.md` — DocGuard — Distribution-Channel Submissions (v0.29.0) (~1728 tok)
|
|
1047
|
+
|
|
1048
|
+
## packaging/homebrew/
|
|
1049
|
+
|
|
1050
|
+
- `docguard.rb` — typed: false (~373 tok)
|
|
1051
|
+
|
|
1034
1052
|
## schemas/
|
|
1035
1053
|
|
|
1036
|
-
- `docguard-config.schema.json` — behavior: docs (~
|
|
1054
|
+
- `docguard-config.schema.json` — behavior: docs (~3015 tok)
|
|
1037
1055
|
|
|
1038
1056
|
## templates/
|
|
1039
1057
|
|
|
@@ -1042,6 +1060,10 @@
|
|
|
1042
1060
|
- `SECURITY.md.template` — Security (~342 tok)
|
|
1043
1061
|
- `TEST-SPEC.md.template` — /*.ts --> | <!-- e.g. tests/unit/**/*.test.ts --> | Unit | (~771 tok)
|
|
1044
1062
|
|
|
1063
|
+
## templates/ci/
|
|
1064
|
+
|
|
1065
|
+
- `gitlab-component.yml` — DocGuard — GitLab CI/CD component (CI/CD Catalog style, spec:inputs syntax). (~906 tok)
|
|
1066
|
+
|
|
1045
1067
|
## templates/commands/
|
|
1046
1068
|
|
|
1047
1069
|
- `docguard.fix.md` — /docguard.fix — Find and Fix CDD Documentation Issues (~771 tok)
|
|
@@ -1061,6 +1083,7 @@
|
|
|
1061
1083
|
- `field-report-3-deferred.test.mjs` — v0.28 — the detection-gap items deferred from LLM field report #3. (~3122 tok)
|
|
1062
1084
|
- `field-report-3.test.mjs` — v0.27 — LLM field report #3. (~3315 tok)
|
|
1063
1085
|
- `freshness.test.mjs` — runGit: commitOldCode (~3536 tok)
|
|
1086
|
+
- `instruction-audit.test.mjs` — Instruction Audit scanner tests (field report #11 — MemoryLint-inspired). (~2387 tok)
|
|
1064
1087
|
- `inventory.test.mjs` — Declares make (~1048 tok)
|
|
1065
1088
|
- `llms-full-pack.test.mjs` — CLI: run (~1304 tok)
|
|
1066
1089
|
- `mcp.test.mjs` — MCP Server Tests — `docguard mcp` over stdio. (~2138 tok)
|
|
@@ -1071,3 +1094,5 @@
|
|
|
1071
1094
|
- `project-type.test.mjs` — Declares make (~2140 tok)
|
|
1072
1095
|
- `sarif.test.mjs` — Declares CLI (~1455 tok)
|
|
1073
1096
|
- `shared-source.test.mjs` — API routes: GET (4 endpoints) (~1714 tok)
|
|
1097
|
+
- `speckit-phantom.test.mjs` — Exports users, fetchUserRecords, retry, adapter + 2 more (~2500 tok)
|
|
1098
|
+
- `trace-features.test.mjs` — `trace --features` — per-feature spec-kit adherence scoring. (~2423 tok)
|
|
@@ -3139,6 +3139,70 @@
|
|
|
3139
3139
|
"related_bugs": [],
|
|
3140
3140
|
"occurrences": 1,
|
|
3141
3141
|
"last_seen": "2026-07-03T20:29:38.508Z"
|
|
3142
|
+
},
|
|
3143
|
+
{
|
|
3144
|
+
"id": "bug-192",
|
|
3145
|
+
"timestamp": "2026-07-03T21:51:26.996Z",
|
|
3146
|
+
"error_message": "Missing error handling in featureGrade",
|
|
3147
|
+
"file": "cli/commands/trace.mjs",
|
|
3148
|
+
"root_cause": "Code path had no error handling — exceptions would propagate uncaught",
|
|
3149
|
+
"fix": "Added try/catch block",
|
|
3150
|
+
"tags": [
|
|
3151
|
+
"auto-detected",
|
|
3152
|
+
"error-handling",
|
|
3153
|
+
"mjs"
|
|
3154
|
+
],
|
|
3155
|
+
"related_bugs": [],
|
|
3156
|
+
"occurrences": 1,
|
|
3157
|
+
"last_seen": "2026-07-03T21:51:26.996Z"
|
|
3158
|
+
},
|
|
3159
|
+
{
|
|
3160
|
+
"id": "bug-193",
|
|
3161
|
+
"timestamp": "2026-07-03T21:52:39.304Z",
|
|
3162
|
+
"error_message": "Missing error handling in parseCheckedTasks",
|
|
3163
|
+
"file": "cli/scanners/speckit.mjs",
|
|
3164
|
+
"root_cause": "Code path had no error handling — exceptions would propagate uncaught",
|
|
3165
|
+
"fix": "Added try/catch block",
|
|
3166
|
+
"tags": [
|
|
3167
|
+
"auto-detected",
|
|
3168
|
+
"error-handling",
|
|
3169
|
+
"mjs"
|
|
3170
|
+
],
|
|
3171
|
+
"related_bugs": [],
|
|
3172
|
+
"occurrences": 1,
|
|
3173
|
+
"last_seen": "2026-07-03T21:52:39.304Z"
|
|
3174
|
+
},
|
|
3175
|
+
{
|
|
3176
|
+
"id": "bug-194",
|
|
3177
|
+
"timestamp": "2026-07-03T21:52:56.072Z",
|
|
3178
|
+
"error_message": "Null/undefined access in ",
|
|
3179
|
+
"file": "cli/scanners/speckit.mjs",
|
|
3180
|
+
"root_cause": "Property access on potentially null/undefined value",
|
|
3181
|
+
"fix": "Added null safety (optional chaining or null check)",
|
|
3182
|
+
"tags": [
|
|
3183
|
+
"auto-detected",
|
|
3184
|
+
"null-safety",
|
|
3185
|
+
"mjs"
|
|
3186
|
+
],
|
|
3187
|
+
"related_bugs": [],
|
|
3188
|
+
"occurrences": 1,
|
|
3189
|
+
"last_seen": "2026-07-03T21:52:56.072Z"
|
|
3190
|
+
},
|
|
3191
|
+
{
|
|
3192
|
+
"id": "bug-195",
|
|
3193
|
+
"timestamp": "2026-07-03T21:53:38.085Z",
|
|
3194
|
+
"error_message": "Incorrect value in code",
|
|
3195
|
+
"file": "cli/docguard.mjs",
|
|
3196
|
+
"root_cause": "Had 'docguard verify [--semantic] [--format json]'",
|
|
3197
|
+
"fix": "Changed to 'docguard verify [--semantic|--instructions] [--fo",
|
|
3198
|
+
"tags": [
|
|
3199
|
+
"auto-detected",
|
|
3200
|
+
"wrong-value",
|
|
3201
|
+
"mjs"
|
|
3202
|
+
],
|
|
3203
|
+
"related_bugs": [],
|
|
3204
|
+
"occurrences": 2,
|
|
3205
|
+
"last_seen": "2026-07-03T21:55:57.551Z"
|
|
3142
3206
|
}
|
|
3143
3207
|
]
|
|
3144
3208
|
}
|
|
@@ -5,6 +5,9 @@
|
|
|
5
5
|
|
|
6
6
|
## User Preferences
|
|
7
7
|
|
|
8
|
+
- **2026-07-03** — **NO VS Code extension. Ever (until Ricardo says otherwise).** He built one before, it was deeply problematic ("a shit show"), and he removed it. Do not propose, scaffold, or build a VS Code extension for DocGuard. SARIF + Problems-panel via existing SARIF viewers is the sanctioned path to editor visibility. All OTHER distribution channels approved 2026-07-03: pre-commit, MCP registries (official/Smithery/mcp.so/Glama), awesome lists, Homebrew tap, GitLab CI component, Actions Marketplace (his click). #286 catalog submission SENT as-is — sharpened description goes into release.yml sync-catalog for the NEXT release, don't touch the submitted issue.
|
|
9
|
+
- **2026-07-03** — Keep the LOCAL main tree (`/Users/ricardoaccioly/Repo_claude/canonical-spec-kit`) always up to date with origin/main. After any merge/push to main (releases especially), sync it in the same session: `git -C <main> status --short` first (never clobber unrecognized work — stash leftovers with a message, surface real WIP), then `git -C <main> pull --ff-only`. Sessions run in auto-worktrees, so the main tree silently falls behind otherwise (it sat at v0.25 while origin hit v0.29).
|
|
10
|
+
|
|
8
11
|
- On field/bug reports, Ricardo prefers **"triage & verify first"** over jumping to fixes — confirm each item against current code (reproduce where possible) and explicitly challenge the report's own stated root-cause before writing any fix. (Chosen on the websec-validator field report, 2026-06-02.)
|
|
9
12
|
|
|
10
13
|
## Key Learnings
|
|
@@ -58,10 +61,13 @@
|
|
|
58
61
|
- **2026-06-02** — Don't trust a bug report's stated root cause. The websec B1 report blamed "scanners/validators skip the ignore file"; the real defect was the trailing-slash glob (above). Fixing per the report ("centralize ignore handling") would have changed nothing AND left a false-green — the exact failure mode this tool exists to prevent.
|
|
59
62
|
- **2026-06-10** — A "fix" that patches the reported REPRO but not the general CLASS is a false-green: the v0.25.0 work claimed all of field-report-1 B1–B7 "fixed + tested", yet field-report-2 hit the same issues on v0.25.1 because (a) fixture-ignore only worked WITH a `.docguardignore` (first run has none), (b) the side-effect fix only covered `generate --plan`, not `guard`, (c) B7 silenced guard by widening requiredFiles instead of making generate respect the profile. Worse, **two tests CODIFIED the bugs** (`project-type.test.mjs` asserted fixtures SHOULD leak with no ignore; `metrics-consistency.test.mjs` asserted subject-blind matching). Lesson: when fixing, fix the class, write the regression test against the AGENT'S ACTUAL SCENARIO (first run, no config), and audit whether an existing green test is actually encoding the bug.
|
|
60
63
|
- **2026-06-02** — Don't assume a documented CLI flag is wired. `--fix` is documented (`docguard.mjs:111` "Auto-create missing files from templates") and set (`:186`) but read **nowhere** — `init.mjs` never consumes `flags.fix`. `grep` the flag's *consumption*, not just its declaration.
|
|
64
|
+
- **2026-07-03** — Release-flow gotchas (v0.29.0): (1) **main has `required_linear_history: true`** — the "Create a merge commit" button is DISABLED by branch protection; releases must land via **rebase merge** (`gh pr merge --rebase`, keeps the commit series) or squash. Advising "merge commit" confuses the user with a greyed-out button. (2) The auto-mode classifier blocks BOTH direct push to main AND self-merging an agent-created PR under a general "release" instruction — it requires the user to either click merge or EXPLICITLY say "merge it"; once the user says so, `gh pr merge` goes through. (3) PR check summaries can read "5/7" with 0 failures — conditional jobs (`publish-check`, `osv-scan-scheduled`) report as *skipped*, which the summary counts against the total; not a blocker. (4) Full pipeline order confirmed working: rebase-merge → release.yml on package.json path → tag+GitHub Release (extension ZIP asset) → npm → PyPI (sed-synced) → sync-catalog reminder issue.
|
|
61
65
|
- **2026-06-05** — Release CI gotchas (cost a failed v0.25.0 publish, then fixed): (1) `.github/workflows/release.yml`'s `test` job was MISSING `npm ci`, so `@babel/parser` (a regular dep) was absent and all 20 AST tests failed. It stayed latent because `detect-version` skips the job unless a release is due — so the job had literally never run. (2) `release.yml` is `paths`-filtered to `package.json`, so a workflow-only fix commit does NOT re-trigger it — use `gh workflow run release.yml --ref main` (the `workflow_dispatch` recovery trigger). (3) The `docguard watch` and `auto-fix prompts` CLI-spawn tests are CI-FLAKY (failed once on a2684e4, passed on identical-code re-run + locally) — a re-run, not a real failure.
|
|
62
66
|
|
|
63
67
|
## Decision Log
|
|
64
68
|
|
|
69
|
+
- **2026-07-03 (competitive scan, post-v0.29)** — Spec-kit catalog now 200+ extensions, ~45 doc/validation-adjacent; presentation is alphabetical with NO ranking — the description field + linked README are the only differentiation. Most entries are thin prompt-packs (SKILL.md workflows); DocGuard is one of few with a real engine (CLI, tests, npm/PyPI, MCP, SARIF, Action). Direct drift-competitors in-catalog: Spec Sync (bgervin), Reconcile (stn1slv), CI Guard (Quratulain-bilal), Coding Standards Drift Control, Golden Demo (behavioral drift), Retrospective (per-feature adherence scoring). IDEAS WORTH ADOPTING: (1) phantom-completion detection à la Verify Tasks ([X] in tasks.md with no implementation evidence — deterministic, fits spec-kit validator); (2) MemoryLint-style agent-instruction drift audit (contradictory/redundant rules WITHIN AGENTS.md/CLAUDE.md — fits extractor+LLM-judgment pattern); (3) per-feature spec-adherence scoring (Retrospective); (4) reviewer TLDR briefing (partially covered by Action pr-comment); (5) we already HAVE Mermaid ER generation (generateERDiagram) but never market it — surface in README. Outside competition unchanged: Mintlify llms.txt-at-scale and Swimm MCP matched by v0.29; hackathon-stage "DriftGuard" clones validate the direction. Catalog description should lead with MCP+SARIF+standalone engine — edit release.yml sync-catalog prefill for future releases; user can edit #286's description field in-form before submitting.
|
|
70
|
+
|
|
65
71
|
- **2026-07-03 (integration roadmap approved — "do it all")** — After the production-readiness batch, user asked "what's missing vs competition (Swimm/Mintlify/Context7/DeepWiki)?" Analysis: detection core is the moat ("green = docs verifiably match code"); the gap is INTEGRATION SURFACE — the tool assumes a human terminal or an agent that shells out. User approved all six: (1) **MCP server** `docguard mcp` — JSON-RPC 2.0 over stdio, pure Node, tools = guard/diagnose/explain/verify_claims/score, MUST be in READ_ONLY_COMMANDS (no ensureSkills side effects); (2) **SARIF 2.1.0** `guard --format sarif` — 1:1 from findings[] codes/locations → GitHub Code Scanning; (3) **Action PR annotations** — ::warning per finding + sticky doc-impact comment via diff --since; (4) **agent-file sync** `docguard agents --sync` — AGENTS.md canonical → CLAUDE.md/.cursor/rules/copilot-instructions/GEMINI.md generated variants with markers (drift-proofing the agent-file family); (5) **llms-full.txt + context pack** (`llms --full`, `memory --pack`); (6) **agent-readability score axis** — display-only (grades stay stable), deterministic metrics (token budget, anchor addressability, marker density). Explicitly REJECTED: LLM calls in core (trust anchor), hosted docs platform, auto-generated wikis. Execution: 6 parallel agents on disjoint files; README/AGENTS/CHANGELOG + docguard.mjs flag wiring reserved to orchestrator (same pattern as the 24-validator migration).
|
|
66
72
|
|
|
67
73
|
- **2026-06-02** — Triage-only pass on the websec-validator field report (no code changed, user's choice). Outcome that justified it: B1's reported root-cause was wrong (glob bug, not wiring), B4 is real-on-main via the dispatcher's `ensureSkills` (not the `--plan` code), B6 is partly-fixed/deferred-by-design. Full verified fix-list lives in the cross-session memory `websec-field-feedback-triage.md`.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"session_id": "session-2026-07-05-1205",
|
|
3
|
+
"started": "2026-07-05T16:05:31.122Z",
|
|
4
|
+
"files_read": {
|
|
5
|
+
"/Users/ricardoaccioly/Repo_claude/canonical-spec-kit/.claude/worktrees/intelligent-lehmann-6f6e95/CHANGELOG.md": {
|
|
6
|
+
"count": 1,
|
|
7
|
+
"tokens": 45074,
|
|
8
|
+
"first_read": "2026-07-05T16:10:17.439Z"
|
|
9
|
+
}
|
|
10
|
+
},
|
|
11
|
+
"files_written": [
|
|
12
|
+
{
|
|
13
|
+
"file": "/Users/ricardoaccioly/Repo_claude/canonical-spec-kit/.claude/worktrees/intelligent-lehmann-6f6e95/CHANGELOG.md",
|
|
14
|
+
"action": "edit",
|
|
15
|
+
"tokens": 35,
|
|
16
|
+
"at": "2026-07-05T16:10:27.228Z"
|
|
17
|
+
}
|
|
18
|
+
],
|
|
19
|
+
"edit_counts": {
|
|
20
|
+
"CHANGELOG.md": 1
|
|
21
|
+
},
|
|
22
|
+
"anatomy_hits": 1,
|
|
23
|
+
"anatomy_misses": 0,
|
|
24
|
+
"repeated_reads_warned": 0,
|
|
25
|
+
"cerebrum_warnings": 0,
|
|
26
|
+
"stop_count": 0
|
|
27
|
+
}
|
|
@@ -760,3 +760,67 @@
|
|
|
760
760
|
| 16:30 | Edited docs/configuration.md | expanded (+24 lines) | ~339 |
|
|
761
761
|
| 16:31 | Edited docs/faq.md | expanded (+15 lines) | ~270 |
|
|
762
762
|
| 16:32 | Edited CHANGELOG.md | 3→5 lines | ~33 |
|
|
763
|
+
| 16:35 | Session end: 38 writes across 19 files (agents.mjs, agents-sync.test.mjs, DATA-MODEL.md, REQUIREMENTS.md, CHANGELOG.md) | 20 reads | ~98494 tok |
|
|
764
|
+
| 16:43 | Session end: 38 writes across 19 files (agents.mjs, agents-sync.test.mjs, DATA-MODEL.md, REQUIREMENTS.md, CHANGELOG.md) | 20 reads | ~98494 tok |
|
|
765
|
+
| 16:54 | Session end: 38 writes across 19 files (agents.mjs, agents-sync.test.mjs, DATA-MODEL.md, REQUIREMENTS.md, CHANGELOG.md) | 20 reads | ~98494 tok |
|
|
766
|
+
| 17:24 | Session end: 38 writes across 19 files (agents.mjs, agents-sync.test.mjs, DATA-MODEL.md, REQUIREMENTS.md, CHANGELOG.md) | 20 reads | ~98494 tok |
|
|
767
|
+
| 17:26 | Session end: 38 writes across 19 files (agents.mjs, agents-sync.test.mjs, DATA-MODEL.md, REQUIREMENTS.md, CHANGELOG.md) | 20 reads | ~98494 tok |
|
|
768
|
+
| 17:28 | Created ../../../../../.claude/projects/-Users-ricardoaccioly-Repo-claude-canonical-spec-kit/memory/keep-local-main-synced.md | — | ~274 |
|
|
769
|
+
| 17:28 | Session end: 39 writes across 20 files (agents.mjs, agents-sync.test.mjs, DATA-MODEL.md, REQUIREMENTS.md, CHANGELOG.md) | 20 reads | ~98788 tok |
|
|
770
|
+
| 17:37 | Session end: 39 writes across 20 files (agents.mjs, agents-sync.test.mjs, DATA-MODEL.md, REQUIREMENTS.md, CHANGELOG.md) | 20 reads | ~98788 tok |
|
|
771
|
+
| 17:38 | Session end: 39 writes across 20 files (agents.mjs, agents-sync.test.mjs, DATA-MODEL.md, REQUIREMENTS.md, CHANGELOG.md) | 20 reads | ~98788 tok |
|
|
772
|
+
| 17:39 | Session end: 39 writes across 20 files (agents.mjs, agents-sync.test.mjs, DATA-MODEL.md, REQUIREMENTS.md, CHANGELOG.md) | 20 reads | ~98788 tok |
|
|
773
|
+
| 17:44 | Edited .github/scripts/speckit-submission.py | 6→7 lines | ~118 |
|
|
774
|
+
| 17:44 | Edited README.md | inline fix | ~60 |
|
|
775
|
+
| 17:44 | Session end: 41 writes across 21 files (agents.mjs, agents-sync.test.mjs, DATA-MODEL.md, REQUIREMENTS.md, CHANGELOG.md) | 37 reads | ~125688 tok |
|
|
776
|
+
| 17:48 | Created .pre-commit-hooks.yaml | — | ~490 |
|
|
777
|
+
| 17:48 | Created server.json | — | ~272 |
|
|
778
|
+
| 17:48 | Created smithery.yaml | — | ~283 |
|
|
779
|
+
| 17:48 | Created templates/ci/gitlab-component.yml | — | ~906 |
|
|
780
|
+
| 17:49 | Created packaging/homebrew/docguard.rb | — | ~373 |
|
|
781
|
+
| 17:49 | Created cli/scanners/instruction-audit.mjs | — | ~3668 |
|
|
782
|
+
| 17:49 | Created packaging/submissions.md | — | ~1844 |
|
|
783
|
+
| 17:49 | Created cli/commands/verify.mjs | — | ~2118 |
|
|
784
|
+
| 17:50 | Edited cli/commands/trace.mjs | added 1 import(s) | ~66 |
|
|
785
|
+
| 17:50 | Edited cli/commands/trace.mjs | added 1 condition(s) | ~93 |
|
|
786
|
+
| 17:50 | Created tests/instruction-audit.test.mjs | — | ~2387 |
|
|
787
|
+
| 17:51 | Edited cli/commands/trace.mjs | added error handling | ~3765 |
|
|
788
|
+
| 17:51 | Edited cli/scanners/speckit.mjs | added 4 import(s) | ~121 |
|
|
789
|
+
| 17:52 | Edited package.json | 4→5 lines | ~51 |
|
|
790
|
+
| 17:52 | Edited README.md | expanded (+13 lines) | ~251 |
|
|
791
|
+
| 17:52 | Edited cli/scanners/speckit.mjs | added error handling | ~3458 |
|
|
792
|
+
| 17:52 | Created tests/trace-features.test.mjs | — | ~2423 |
|
|
793
|
+
| 17:52 | Edited cli/scanners/speckit.mjs | added optional chaining | ~508 |
|
|
794
|
+
| 17:53 | Edited cli/scanners/speckit.mjs | expanded (+6 lines) | ~169 |
|
|
795
|
+
| 17:53 | Edited cli/docguard.mjs | added 1 condition(s) | ~120 |
|
|
796
|
+
| 17:53 | Edited cli/docguard.mjs | "docguard verify [--semant" → "docguard verify [--semant" | ~20 |
|
|
797
|
+
| 17:53 | Edited cli/docguard.mjs | 1→2 lines | ~75 |
|
|
798
|
+
| 17:54 | Created tests/speckit-phantom.test.mjs | — | ~2500 |
|
|
799
|
+
| 17:55 | Edited cli/docguard.mjs | added 1 condition(s) | ~60 |
|
|
800
|
+
| 17:55 | Edited cli/docguard.mjs | inline fix | ~46 |
|
|
801
|
+
| 17:55 | Edited cli/docguard.mjs | "docguard trace [--reverse" → "docguard trace [--reverse" | ~15 |
|
|
802
|
+
| 17:56 | Session end: 67 writes across 35 files (agents.mjs, agents-sync.test.mjs, DATA-MODEL.md, REQUIREMENTS.md, CHANGELOG.md) | 44 reads | ~171575 tok |
|
|
803
|
+
| 17:57 | Edited cli/findings.mjs | expanded (+12 lines) | ~400 |
|
|
804
|
+
| 17:58 | Edited schemas/docguard-config.schema.json | expanded (+11 lines) | ~132 |
|
|
805
|
+
| 17:58 | Edited README.md | 1→2 lines | ~118 |
|
|
806
|
+
| 17:58 | Edited README.md | 1→2 lines | ~65 |
|
|
807
|
+
| 17:58 | Edited AGENTS.md | inline fix | ~26 |
|
|
808
|
+
| 17:58 | Edited CHANGELOG.md | expanded (+45 lines) | ~753 |
|
|
809
|
+
| 18:01 | Edited docs-canonical/ARCHITECTURE.md | 1→2 lines | ~75 |
|
|
810
|
+
| 18:01 | Session end: 74 writes across 38 files (agents.mjs, agents-sync.test.mjs, DATA-MODEL.md, REQUIREMENTS.md, CHANGELOG.md) | 44 reads | ~173246 tok |
|
|
811
|
+
| 18:02 | Created Dockerfile | — | ~204 |
|
|
812
|
+
| 18:03 | Edited docs-canonical/ARCHITECTURE.md | 1→2 lines | ~68 |
|
|
813
|
+
| 18:04 | Session end: 76 writes across 39 files (agents.mjs, agents-sync.test.mjs, DATA-MODEL.md, REQUIREMENTS.md, CHANGELOG.md) | 44 reads | ~173538 tok |
|
|
814
|
+
| 18:04 | Session end: 76 writes across 39 files (agents.mjs, agents-sync.test.mjs, DATA-MODEL.md, REQUIREMENTS.md, CHANGELOG.md) | 44 reads | ~173538 tok |
|
|
815
|
+
| 18:18 | Edited DRIFT-LOG.md | modified audit() | ~234 |
|
|
816
|
+
| 18:21 | Session end: 77 writes across 39 files (agents.mjs, agents-sync.test.mjs, DATA-MODEL.md, REQUIREMENTS.md, CHANGELOG.md) | 44 reads | ~173788 tok |
|
|
817
|
+
| 18:45 | Session end: 77 writes across 39 files (agents.mjs, agents-sync.test.mjs, DATA-MODEL.md, REQUIREMENTS.md, CHANGELOG.md) | 44 reads | ~173788 tok |
|
|
818
|
+
| 18:51 | Session end: 77 writes across 39 files (agents.mjs, agents-sync.test.mjs, DATA-MODEL.md, REQUIREMENTS.md, CHANGELOG.md) | 44 reads | ~173788 tok |
|
|
819
|
+
| 19:12 | Session end: 77 writes across 39 files (agents.mjs, agents-sync.test.mjs, DATA-MODEL.md, REQUIREMENTS.md, CHANGELOG.md) | 44 reads | ~173788 tok |
|
|
820
|
+
| 19:18 | Session end: 77 writes across 39 files (agents.mjs, agents-sync.test.mjs, DATA-MODEL.md, REQUIREMENTS.md, CHANGELOG.md) | 44 reads | ~173788 tok |
|
|
821
|
+
|
|
822
|
+
## Session: 2026-07-05 12:05
|
|
823
|
+
|
|
824
|
+
| Time | Action | File(s) | Outcome | ~Tokens |
|
|
825
|
+
|------|--------|---------|---------|--------|
|
|
826
|
+
| 12:10 | Edited CHANGELOG.md | 3→5 lines | ~33 |
|