docguard-cli 0.34.6__tar.gz → 0.34.9__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.34.6/extensions/spec-kit-docguard → docguard_cli-0.34.9/.agent}/skills/docguard-fix/SKILL.md +2 -2
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/skills/docguard-guard/SKILL.md +2 -2
- {docguard_cli-0.34.6/extensions/spec-kit-docguard → docguard_cli-0.34.9/.agent}/skills/docguard-review/SKILL.md +2 -2
- {docguard_cli-0.34.6/extensions/spec-kit-docguard → docguard_cli-0.34.9/.agent}/skills/docguard-score/SKILL.md +2 -2
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/skills/docguard-sync/SKILL.md +2 -2
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.github/workflows/release.yml +81 -12
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/anatomy.md +2 -2
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/buglog.json +57 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/cerebrum.md +4 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/hooks/_session.json +45 -6
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/memory.md +13 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/token-ledger.json +1962 -7
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/CHANGELOG.md +28 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/PKG-INFO +1 -1
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/extension.yml +1 -1
- {docguard_cli-0.34.6/.agent → docguard_cli-0.34.9/extensions/spec-kit-docguard}/skills/docguard-fix/SKILL.md +2 -2
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/skills/docguard-guard/SKILL.md +2 -2
- {docguard_cli-0.34.6/.agent → docguard_cli-0.34.9/extensions/spec-kit-docguard}/skills/docguard-review/SKILL.md +2 -2
- {docguard_cli-0.34.6/.agent → docguard_cli-0.34.9/extensions/spec-kit-docguard}/skills/docguard-score/SKILL.md +2 -2
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/skills/docguard-sync/SKILL.md +2 -2
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/package-lock.json +2 -2
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/package.json +1 -1
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/pyproject.toml +1 -1
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/commands/docguard.fix.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/commands/docguard.guard.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/commands/docguard.review.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/commands/docguard.score.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/commands/speckit.analyze.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/commands/speckit.checklist.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/commands/speckit.clarify.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/commands/speckit.constitution.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/commands/speckit.implement.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/commands/speckit.plan.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/commands/speckit.specify.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/commands/speckit.tasks.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/commands/speckit.taskstoissues.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/skills/speckit-analyze/SKILL.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/skills/speckit-checklist/SKILL.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/skills/speckit-clarify/SKILL.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/skills/speckit-constitution/SKILL.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/skills/speckit-implement/SKILL.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/skills/speckit-plan/SKILL.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/skills/speckit-specify/SKILL.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/skills/speckit-tasks/SKILL.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.agent/skills/speckit-taskstoissues/SKILL.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.claude/rules/openwolf.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.claude/settings.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.docguard.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.docguardignore +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.github/ISSUE_TEMPLATE/docguard-feedback.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.github/dependabot.yml +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.github/scripts/speckit-submission.py +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.github/workflows/auto-merge.yml +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.github/workflows/ci.yml +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.github/workflows/jules-triage.yml +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.github/workflows/scheduled-release.yml +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.github/workflows/supply-chain.yml +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.github/workflows/sync-speckit-catalog.yml +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.gitignore +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.jules/bolt.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.jules/palette.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.jules/sentinel.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.jules-setup.sh +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.npmignore +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.npmrc +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.pre-commit-hooks.yaml +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.specify/extensions/.cache/catalog-ebf165086500aab1-metadata.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.specify/extensions/.cache/catalog-ebf165086500aab1.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.specify/extensions/.cache/catalog-metadata.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.specify/extensions/.cache/catalog.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.specify/init-options.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.specify/memory/constitution.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.specify/scripts/bash/check-prerequisites.sh +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.specify/scripts/bash/common.sh +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.specify/scripts/bash/create-new-feature.sh +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.specify/scripts/bash/setup-plan.sh +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.specify/scripts/bash/update-agent-context.sh +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.specify/templates/agent-file-template.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.specify/templates/checklist-template.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.specify/templates/constitution-template.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.specify/templates/plan-template.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.specify/templates/spec-template.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.specify/templates/tasks-template.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/OPENWOLF.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/config.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/cron-manifest.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/cron-state.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/daemon.log +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/designqc-report.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/hooks/_wrap_up_nudged +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/hooks/package.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/hooks/post-read.js +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/hooks/post-write.js +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/hooks/pre-read.js +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/hooks/pre-write.js +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/hooks/session-start.js +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/hooks/shared.js +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/hooks/stop.js +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/identity.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/reframe-frameworks.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/.wolf/suggestions.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/AGENTS.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/CLAUDE.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/CODE_OF_CONDUCT.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/COMPARISONS.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/CONTRIBUTING.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/DRIFT-LOG.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/Dockerfile +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/LICENSE +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/PHILOSOPHY.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/PRIVACY.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/README.es.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/README.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/README.pt-BR.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/ROADMAP.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/SECURITY.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/STANDARD.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/SUPPLY-CHAIN-AUDIT.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/SUPPORT.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/VALIDATION.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/action.yml +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/assets/bin/docguard +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/assets/demo.gif +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/assets/demo.tape +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/assets/docguard-logo.png +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/agent.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/agents.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/badge.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/ci.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/demo.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/diagnose.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/diff.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/explain.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/feedback.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/fix.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/generate.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/guard.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/hooks.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/impact.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/init.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/llms.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/mcp.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/memory.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/publish.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/report.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/score.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/setup.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/sync-tests.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/sync.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/trace.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/upgrade.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/verify.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/commands/watch.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/config.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/docguard.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/ensure-skills.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/findings.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/scanners/agent-readability.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/scanners/api-doc.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/scanners/cdk.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/scanners/doc-tools.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/scanners/frontend.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/scanners/iac.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/scanners/instruction-audit.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/scanners/integrations.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/scanners/inventory.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/scanners/js-ast.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/scanners/memory-plan.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/scanners/project-type.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/scanners/py-ast.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/scanners/routes.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/scanners/schemas.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/scanners/semantic-claims.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/scanners/speckit.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/shared-diff.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/shared-git.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/shared-ignore.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/shared-ir.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/shared-source.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/shared-trace-patterns.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/shared.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validator-markers.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/api-doc-smells.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/api-surface.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/architecture.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/canonical-sync.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/changelog.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/cross-reference.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/diff-suspicion.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/doc-quality.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/docs-coverage.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/docs-diff.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/docs-sync.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/drift.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/environment.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/freshness.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/generated-staleness.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/metadata-sync.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/metrics-consistency.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/reference-existence.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/schema-sync.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/security.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/spec-kit.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/structure.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/surface-sync.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/test-spec.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/todo-tracking.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/validators/traceability.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/writers/api-reference.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/writers/baseline.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/writers/doc-generators.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/writers/fix-memory.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/writers/generate-io.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/writers/history.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/writers/junit.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/writers/mechanical.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/writers/sarif.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/cli/writers/sections.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/commands/docguard.fix.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/commands/docguard.guard.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/commands/docguard.review.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/commands/docguard.score.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/configs/fastify.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/configs/generic.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/configs/nextjs.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/configs/python.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/docguard_cli/__init__.py +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/docguard_cli/wrapper.py +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/docs/ai-integration.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/docs/commands.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/docs/configuration.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/docs/doc-sections.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/docs/faq.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/docs/installation.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/docs/profiles.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/docs/quickstart.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/docs-canonical/ARCHITECTURE.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/docs-canonical/CI-RECIPES.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/docs-canonical/DATA-MODEL.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/docs-canonical/ENVIRONMENT.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/docs-canonical/REQUIREMENTS.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/docs-canonical/SECURITY.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/docs-canonical/SURFACE-AUDIT.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/docs-canonical/TEST-SPEC.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/docs-implementation/MIGRATION-v0.20.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/examples/01-express-api/README.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/examples/01-express-api/package.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/examples/01-express-api/server.js +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/examples/02-python-flask/README.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/examples/02-python-flask/app.py +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/examples/02-python-flask/docs-canonical/ARCHITECTURE.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/examples/02-python-flask/requirements.txt +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/examples/03-spec-kit-project/CHANGELOG.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/examples/03-spec-kit-project/README.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/examples/03-spec-kit-project/docs-canonical/ARCHITECTURE.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/examples/03-spec-kit-project/docs-canonical/TEST-SPEC.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/examples/03-spec-kit-project/package.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/examples/03-spec-kit-project/src/index.js +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/examples/03-spec-kit-project/tasks.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/examples/03-spec-kit-project/tests/basic.test.js +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/examples/README.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/LICENSE +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/README.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/commands/diagnose.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/commands/fix.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/commands/generate.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/commands/guard.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/commands/init.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/commands/score.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/commands/sync.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/commands/trace.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/scripts/bash/common.sh +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/scripts/bash/docguard-check-docs.sh +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/scripts/bash/docguard-init-doc.sh +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/scripts/bash/docguard-suggest-fix.sh +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/templates/extensions.yml +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/templates/github-workflows/docguard-autofix.yml +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/extensions/spec-kit-docguard/templates/github-workflows/docguard-guard.yml +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/glama.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/llms-full.txt +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/llms.txt +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/mcpb/README.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/mcpb/manifest.template.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/packaging/homebrew/docguard.rb +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/packaging/submissions.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/schemas/docguard-config.schema.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/server.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/smithery.yaml +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/specs/001-fix-ignore-validators/plan.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/specs/001-fix-ignore-validators/spec.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/specs/001-fix-ignore-validators/tasks.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/specs/002-fix-test-discovery/plan.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/specs/002-fix-test-discovery/spec.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/specs/002-fix-test-discovery/tasks.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/specs/003-v011-false-positives/plan.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/specs/003-v011-false-positives/spec.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/specs/003-v011-false-positives/tasks.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/specs/004-v020-env-var-false-negative/spec.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/specs/005-hugocross-next-bugs/spec.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/ADR.md.template +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/AGENTS.md.template +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/ARCHITECTURE.md.template +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/CHANGELOG.md.template +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/CURRENT-STATE.md.template +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/DATA-MODEL.md.template +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/DEPLOYMENT.md.template +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/DRIFT-LOG.md.template +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/ENVIRONMENT.md.template +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/KNOWN-GOTCHAS.md.template +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/REQUIREMENTS.md.template +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/ROADMAP.md.template +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/RUNBOOKS.md.template +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/SECURITY.md.template +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/TEST-SPEC.md.template +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/TROUBLESHOOTING.md.template +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/VENDOR-BUGS.md.template +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/ci/github-actions.yml +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/ci/gitlab-component.yml +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/commands/docguard.fix.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/commands/docguard.guard.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/commands/docguard.init.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/commands/docguard.review.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/commands/docguard.update.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/demo-fixture/.docguard.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/demo-fixture/.env.example +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/demo-fixture/AGENTS.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/demo-fixture/CHANGELOG.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/demo-fixture/DRIFT-LOG.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/demo-fixture/README.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/demo-fixture/docs-canonical/API-REFERENCE.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/demo-fixture/docs-canonical/ARCHITECTURE.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/demo-fixture/docs-canonical/DATA-MODEL.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/demo-fixture/docs-canonical/ENVIRONMENT.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/demo-fixture/docs-canonical/SECURITY.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/demo-fixture/docs-canonical/TEST-SPEC.md +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/demo-fixture/package.json +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/demo-fixture/src/api.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/demo-fixture/src/notifier.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/demo-fixture/src/scheduler.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/templates/demo-fixture/src/worker.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/agent-readability.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/agent.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/agents-command.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/agents-sync.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/anchor-autofix.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/api-doc-smells.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/api-doc.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/api-surface.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/api-write.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/architecture.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/b7-node-env-symmetry.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/backup-failure.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/badge.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/baseline.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/canonical-docs-nested-phase2.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/canonical-docs-nested.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/canonical-sync.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/cdk-detection.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/changed-only-scoping.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/changed-only.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/changelog.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/commands.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/cross-reference.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/demo-command.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/diff-suspicion.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/doc-quality.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/doc-section-synonyms.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/docguardignore.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/docs-coverage.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/docs-diff.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/docs-sync.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/drift.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/ensure-skills-idempotent.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/env-schema-detection.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/environment.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/explain-coverage.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/field-report-2-cli.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/field-report-3-deferred.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/field-report-3.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/fix-memory.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/fix-suppression.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/fixture-projects.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/freshness.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/frontend-deep.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/frontend.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/generate-io.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/generated-staleness.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/guard-classify.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/guard-no-throw.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/history.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/hooks.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/i18n.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/impact.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/init-smart-detection.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/instruction-audit.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/integrations.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/inventory.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/js-ast.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/junit.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/llms-full-pack.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/mcp-http.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/mcp.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/mechanical.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/memory-plan.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/metadata-sync.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/metrics-consistency.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/metrics-dedup.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/monorepo-scanning.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/multi-spec.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/npm-pack-smoke.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/nudge-hook.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/openapi-parse-honesty.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/patch-0.11.2.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/plan-disk-cache.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/profile-flag.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/project-type.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/py-ast.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/reference-existence.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/regenerate-section.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/report.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/routes-express-mounts.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/routes-fastify.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/routes-multilang.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/routes-nextjs-app-router.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/sarif.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/schema-sync.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/schemas-multilang.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/schemas.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/scoping-extended.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/score-suggestions.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/section-na-markers.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/sections.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/security-init-injection.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/security.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/severity.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/shared-diff.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/shared-git.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/shared-ignore-functions.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/shared-ir.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/shared-source.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/speckit-bugfix.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/speckit-phantom.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/starter-scaffold.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/stress-test.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/structure.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/surface-sync.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/sweep-nudge.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/sync-since.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/sync.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/test-spec.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/todo-tracking.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/trace-features.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/trace-multilang.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/trace-reverse.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/traceability-ir.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/traceability.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/upgrade-pr-e2e.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/upgrade-pr.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/upgrade.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/v020-consolidation.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/validator-markers.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/validator-naming.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/verify-change-context.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/version-pin.test.mjs +0 -0
- {docguard_cli-0.34.6 → docguard_cli-0.34.9}/tests/whats-new.test.mjs +0 -0
|
@@ -6,10 +6,10 @@ description: AI-driven documentation repair with structured research workflow, t
|
|
|
6
6
|
compatibility: Requires DocGuard CLI installed (npm i -g docguard-cli or npx docguard-cli)
|
|
7
7
|
metadata:
|
|
8
8
|
author: docguard
|
|
9
|
-
version: 0.34.
|
|
9
|
+
version: 0.34.9
|
|
10
10
|
source: extensions/spec-kit-docguard/skills/docguard-fix
|
|
11
11
|
---
|
|
12
|
-
<!-- docguard:version: 0.34.
|
|
12
|
+
<!-- docguard:version: 0.34.9 -->
|
|
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.34.
|
|
10
|
+
version: 0.34.9
|
|
11
11
|
source: extensions/spec-kit-docguard/skills/docguard-guard
|
|
12
12
|
---
|
|
13
|
-
<!-- docguard:version: 0.34.
|
|
13
|
+
<!-- docguard:version: 0.34.9 -->
|
|
14
14
|
|
|
15
15
|
# DocGuard Guard Skill
|
|
16
16
|
|
|
@@ -6,10 +6,10 @@ description: Cross-document consistency analysis and quality assessment. Perform
|
|
|
6
6
|
compatibility: Requires DocGuard CLI installed (npm i -g docguard-cli or npx docguard-cli)
|
|
7
7
|
metadata:
|
|
8
8
|
author: docguard
|
|
9
|
-
version: 0.34.
|
|
9
|
+
version: 0.34.9
|
|
10
10
|
source: extensions/spec-kit-docguard/skills/docguard-review
|
|
11
11
|
---
|
|
12
|
-
<!-- docguard:version: 0.34.
|
|
12
|
+
<!-- docguard:version: 0.34.9 -->
|
|
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.34.
|
|
9
|
+
version: 0.34.9
|
|
10
10
|
source: extensions/spec-kit-docguard/skills/docguard-score
|
|
11
11
|
---
|
|
12
|
-
<!-- docguard:version: 0.34.
|
|
12
|
+
<!-- docguard:version: 0.34.9 -->
|
|
13
13
|
|
|
14
14
|
# DocGuard Score Skill
|
|
15
15
|
|
|
@@ -4,10 +4,10 @@ description: Keep canonical documentation ALWAYS UP TO DATE. Refreshes code-trut
|
|
|
4
4
|
compatibility: Requires DocGuard CLI installed (npm i -g docguard-cli or npx docguard-cli)
|
|
5
5
|
metadata:
|
|
6
6
|
author: docguard
|
|
7
|
-
version: 0.34.
|
|
7
|
+
version: 0.34.9
|
|
8
8
|
source: extensions/spec-kit-docguard/skills/docguard-sync
|
|
9
9
|
---
|
|
10
|
-
<!-- docguard:version: 0.34.
|
|
10
|
+
<!-- docguard:version: 0.34.9 -->
|
|
11
11
|
|
|
12
12
|
# DocGuard Sync Skill
|
|
13
13
|
|
|
@@ -212,11 +212,23 @@ jobs:
|
|
|
212
212
|
# permission" while an empty _authToken was present, then ENEEDAUTH
|
|
213
213
|
# once it wasn't -- neither of which names the actual cause.
|
|
214
214
|
node-version: 24
|
|
215
|
-
# registry-url
|
|
216
|
-
#
|
|
217
|
-
#
|
|
218
|
-
#
|
|
219
|
-
|
|
215
|
+
# NO registry-url, deliberately, and this combination has never
|
|
216
|
+
# actually been tried before. Tracing every failed run:
|
|
217
|
+
# v0.34.4 Node 20 + registry-url -> E404 (Node too old for
|
|
218
|
+
# OIDC; empty token
|
|
219
|
+
# used instead)
|
|
220
|
+
# v0.34.5 Node 20 + no registry -> ENEEDAUTH (no token at all,
|
|
221
|
+
# Node still too old)
|
|
222
|
+
# v0.34.6 Node 24 + registry-url -> E404 (Node fine, but the
|
|
223
|
+
# empty _authToken
|
|
224
|
+
# setup-node writes
|
|
225
|
+
# took the token path)
|
|
226
|
+
# Each run had exactly ONE of the two blockers. Node >= 22.14 clears
|
|
227
|
+
# the OIDC floor; omitting registry-url stops setup-node writing
|
|
228
|
+
# `//registry.npmjs.org/:_authToken=${NODE_AUTH_TOKEN}`, which with
|
|
229
|
+
# NODE_AUTH_TOKEN unset expands to an EMPTY token that npm still
|
|
230
|
+
# treats as configured auth. npm defaults to registry.npmjs.org
|
|
231
|
+
# anyway, so nothing is lost by omitting it.
|
|
220
232
|
|
|
221
233
|
# Belt and braces: Node 24 already bundles npm >= 11.5.1, but pin
|
|
222
234
|
# explicitly so a runner-image change can't silently drop below the
|
|
@@ -250,17 +262,55 @@ jobs:
|
|
|
250
262
|
fi
|
|
251
263
|
echo "OIDC preconditions satisfied."
|
|
252
264
|
|
|
265
|
+
# Diagnostics. Six releases have failed here on a generic 404 that never
|
|
266
|
+
# names the real cause, so capture the auth state BEFORE publishing
|
|
267
|
+
# rather than inferring it from the failure afterwards.
|
|
268
|
+
- name: Diagnose npm auth state
|
|
269
|
+
run: |
|
|
270
|
+
echo "--- versions ---"
|
|
271
|
+
echo "node=$(node -p 'process.versions.node') npm=$(npm --version)"
|
|
272
|
+
echo "--- OIDC env present? (values intentionally not printed) ---"
|
|
273
|
+
[ -n "$ACTIONS_ID_TOKEN_REQUEST_URL" ] && echo "ACTIONS_ID_TOKEN_REQUEST_URL: set" || echo "ACTIONS_ID_TOKEN_REQUEST_URL: MISSING"
|
|
274
|
+
[ -n "$ACTIONS_ID_TOKEN_REQUEST_TOKEN" ] && echo "ACTIONS_ID_TOKEN_REQUEST_TOKEN: set" || echo "ACTIONS_ID_TOKEN_REQUEST_TOKEN: MISSING"
|
|
275
|
+
echo "--- resolved registry ---"
|
|
276
|
+
npm config get registry
|
|
277
|
+
echo "--- .npmrc files (token VALUES redacted, presence shown) ---"
|
|
278
|
+
USERCONFIG=$(npm config list | sed -n 's/^userconfig = "\(.*\)"$/\1/p')
|
|
279
|
+
for f in "$USERCONFIG" ".npmrc" "$HOME/.npmrc"; do
|
|
280
|
+
if [ -n "$f" ] && [ -f "$f" ]; then
|
|
281
|
+
echo " [$f]"
|
|
282
|
+
sed -E 's/(_authToken=).*/\1<REDACTED-OR-EMPTY>/' "$f" | sed 's/^/ /'
|
|
283
|
+
else
|
|
284
|
+
echo " [$f] (absent)"
|
|
285
|
+
fi
|
|
286
|
+
done
|
|
287
|
+
|
|
253
288
|
# No --provenance flag and no NODE_AUTH_TOKEN: under Trusted Publishing
|
|
254
289
|
# npm generates provenance attestations automatically, and the OIDC
|
|
255
290
|
# exchange against the trusted-publisher connection on npmjs.com
|
|
256
291
|
# (raccioly/docguard -> release.yml) IS the authentication.
|
|
292
|
+
# --loglevel verbose so that if this fails again, the log shows which
|
|
293
|
+
# auth path npm chose instead of leaving it to inference.
|
|
257
294
|
- name: Publish (provenance is automatic under Trusted Publishing)
|
|
258
|
-
run: npm publish
|
|
295
|
+
run: npm publish --loglevel verbose
|
|
259
296
|
|
|
260
297
|
# ── Step 6: Publish to PyPI ────────────────────────────────────────────
|
|
261
298
|
publish-pypi:
|
|
262
299
|
needs: [detect-version, test, create-release]
|
|
263
300
|
runs-on: ubuntu-latest
|
|
301
|
+
# PyPI Trusted Publishing (OIDC) — same rationale as publish-npm: a stored
|
|
302
|
+
# API token is a credential that expires silently and takes the release
|
|
303
|
+
# pipeline down with it (see bug-256: NPM_TOKEN expired and cost seven
|
|
304
|
+
# releases to diagnose). PYPI_API_TOKEN was last rotated 2026-03-15 and was
|
|
305
|
+
# the next one due to do exactly that. Nothing here can expire.
|
|
306
|
+
#
|
|
307
|
+
# `environment` MUST match the Environment name configured in the PyPI
|
|
308
|
+
# trusted publisher, and `id-token: write` is what mints the OIDC token.
|
|
309
|
+
# Mirrors the working setup in raccioly/websec-validator's publish.yml.
|
|
310
|
+
environment: pypi
|
|
311
|
+
permissions:
|
|
312
|
+
contents: read
|
|
313
|
+
id-token: write
|
|
264
314
|
steps:
|
|
265
315
|
- uses: actions/checkout@v7
|
|
266
316
|
- uses: actions/setup-python@v7
|
|
@@ -275,16 +325,35 @@ jobs:
|
|
|
275
325
|
grep 'version' pyproject.toml
|
|
276
326
|
|
|
277
327
|
- name: Install build tools
|
|
278
|
-
run: pip install build
|
|
328
|
+
run: pip install build
|
|
279
329
|
|
|
280
330
|
- name: Build
|
|
281
331
|
run: python -m build
|
|
282
332
|
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
333
|
+
# Assert the OIDC precondition before publishing, rather than finding out
|
|
334
|
+
# via an auth error that doesn't name the cause (the npm lesson).
|
|
335
|
+
- name: Assert OIDC token is available
|
|
336
|
+
run: |
|
|
337
|
+
if [ -z "$ACTIONS_ID_TOKEN_REQUEST_URL" ]; then
|
|
338
|
+
echo "::error::ACTIONS_ID_TOKEN_REQUEST_URL is unset — this job lacks id-token: write, so PyPI Trusted Publishing cannot authenticate."
|
|
339
|
+
exit 1
|
|
340
|
+
fi
|
|
341
|
+
echo "OIDC token endpoint available; publishing via Trusted Publishing."
|
|
342
|
+
|
|
343
|
+
# No TWINE_USERNAME/TWINE_PASSWORD: the OIDC exchange against the trusted
|
|
344
|
+
# publisher configured on PyPI (raccioly / docguard / release.yml /
|
|
345
|
+
# environment: pypi) IS the authentication.
|
|
346
|
+
# v1.14.2. Pinned by COMMIT sha (dereferenced from the annotated tag, not
|
|
347
|
+
# the tag object's own sha -- those differ for annotated tags and pinning
|
|
348
|
+
# the wrong one does not resolve).
|
|
349
|
+
#
|
|
350
|
+
# Do NOT pin this back to the older release/v1 sha used by
|
|
351
|
+
# raccioly/websec-validator: that build's bundled twine rejects
|
|
352
|
+
# `Metadata-Version: 2.5`, which current setuptools/build now emits --
|
|
353
|
+
# "InvalidDistribution: '2.5' is not a valid metadata version". v0.34.8
|
|
354
|
+
# failed exactly there. websec-validator still carries that old pin and
|
|
355
|
+
# will hit the same wall whenever its setuptools moves forward.
|
|
356
|
+
- uses: pypa/gh-action-pypi-publish@dc37677b2e1c63e2034f94d8a5b11f265b73ba33 # v1.14.2
|
|
288
357
|
|
|
289
358
|
# ── Step 7: Prepare Spec Kit community catalog submission ──────────────
|
|
290
359
|
# Per spec-kit maintainer guidance (github/spec-kit#2707) and spec-kit's
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# anatomy.md
|
|
2
2
|
|
|
3
|
-
> Auto-maintained by OpenWolf. Last scanned: 2026-09-
|
|
3
|
+
> Auto-maintained by OpenWolf. Last scanned: 2026-09-11T16:39:55.617Z
|
|
4
4
|
> Files: 707 tracked | Anatomy hits: 0 | Misses: 0
|
|
5
5
|
|
|
6
6
|
## ../../../../../../../tmp/
|
|
@@ -962,7 +962,7 @@
|
|
|
962
962
|
- `auto-merge.yml` — CI: Auto-merge (green bot PRs) (~2234 tok)
|
|
963
963
|
- `ci.yml` — CI: DocGuard CI (~1843 tok)
|
|
964
964
|
- `jules-triage.yml` — CI: Jules PR Triage (~1635 tok)
|
|
965
|
-
- `release.yml` — CI: Auto Release — Tag, GitHub Release, npm, PyPI (~
|
|
965
|
+
- `release.yml` — CI: Auto Release — Tag, GitHub Release, npm, PyPI (~6014 tok)
|
|
966
966
|
- `scheduled-release.yml` — CI: Scheduled Release (~2099 tok)
|
|
967
967
|
- `sync-speckit-catalog.yml` — CI: Prepare Spec Kit Catalog Submission (Manual) (~1385 tok)
|
|
968
968
|
|
|
@@ -4752,6 +4752,63 @@
|
|
|
4752
4752
|
"related_bugs": [],
|
|
4753
4753
|
"occurrences": 1,
|
|
4754
4754
|
"last_seen": "2026-09-11T15:57:59.781Z"
|
|
4755
|
+
},
|
|
4756
|
+
{
|
|
4757
|
+
"id": "bug-288",
|
|
4758
|
+
"timestamp": "2026-09-11T16:08:59.962Z",
|
|
4759
|
+
"error_message": "Significant refactor of ",
|
|
4760
|
+
"file": ".github/workflows/release.yml",
|
|
4761
|
+
"root_cause": "5 lines replaced/restructured",
|
|
4762
|
+
"fix": "Rewrote 6→18 lines (5 removed)",
|
|
4763
|
+
"tags": [
|
|
4764
|
+
"auto-detected",
|
|
4765
|
+
"refactor",
|
|
4766
|
+
"yml"
|
|
4767
|
+
],
|
|
4768
|
+
"related_bugs": [],
|
|
4769
|
+
"occurrences": 1,
|
|
4770
|
+
"last_seen": "2026-09-11T16:08:59.962Z"
|
|
4771
|
+
},
|
|
4772
|
+
{
|
|
4773
|
+
"id": "bug-259",
|
|
4774
|
+
"timestamp": "2026-09-11T16:20:00Z",
|
|
4775
|
+
"error_message": "RESOLVED: npm publish failed for SEVEN consecutive releases (v0.34.1 - v0.34.7). Final error before the fix: 'npm verbose oidc Failed token exchange request with body message: OIDC token exchange error - package not found' on POST /-/npm/v1/oidc/token/exchange/package/docguard-cli.",
|
|
4776
|
+
"file": ".github/workflows/release.yml + npmjs.com trusted publisher config",
|
|
4777
|
+
"root_cause": "THREE independent faults stacked, each masking the next, which is why six fixes each 'changed the error' without fixing it. (1) NPM_TOKEN expired ~2026-08 (bug-256). (2) After migrating to Trusted Publishing, the publish job ran Node 20 -- npm Trusted Publishing requires npm >= 11.5.1 AND Node >= 22.14.0, and below that floor npm never ATTEMPTS the OIDC exchange, silently falling back to token auth. (3) The npm-side trusted publisher was created with the Repository field containing a TRAILING SLASH ('docguard/'), so the stored config was 'raccioly/docguard/' and never matched the OIDC claim 'raccioly/docguard'. Fault 3 was invisible until faults 1 and 2 were cleared, because only then did npm get far enough to actually attempt the exchange and report a specific error.",
|
|
4778
|
+
"fix": "(1) Trusted Publishing replaces the expiring token (bug-257). (2) publish-npm now runs Node 24, with an explicit precondition assert on Node >= 22.14.0, npm >= 11.5.1 and ACTIONS_ID_TOKEN_REQUEST_URL. (3) Added a SECOND trusted publisher on npmjs.com with Repository exactly 'docguard' (no trailing slash) -- deliberately additive rather than deleting the malformed one, so a failed recreate could not leave the package with no publisher at all. Publish succeeded immediately on rerun: docguard-cli@0.34.7 is live and tagged latest; npm, PyPI and the git tag are all in sync at 0.34.7 for the first time since 0.34.0.",
|
|
4779
|
+
"tags": [
|
|
4780
|
+
"npm-publish",
|
|
4781
|
+
"trusted-publishing",
|
|
4782
|
+
"oidc",
|
|
4783
|
+
"node-version-floor",
|
|
4784
|
+
"trailing-slash",
|
|
4785
|
+
"stacked-faults",
|
|
4786
|
+
"resolved"
|
|
4787
|
+
],
|
|
4788
|
+
"related_bugs": [
|
|
4789
|
+
"bug-256",
|
|
4790
|
+
"bug-257",
|
|
4791
|
+
"bug-258"
|
|
4792
|
+
],
|
|
4793
|
+
"occurrences": 7,
|
|
4794
|
+
"last_seen": "2026-09-11T16:12:49Z",
|
|
4795
|
+
"notes": "Process lesson, not just a technical one: six releases were burned guessing from a generic 404 when `npm publish --loglevel verbose` named the exact failing endpoint and reason on the FIRST run that had it. When an error is generic and a fix 'changes the error' without fixing it, that is the signal to stop iterating and start instrumenting. Also: display text is not data -- the malformed trailing slash was visible in the UI the whole time but rendered as 'raccioly/docguard/' which looked like a path separator; it was only provable once a correct second entry rendered differently ('raccioly/docguard') right next to it."
|
|
4796
|
+
},
|
|
4797
|
+
{
|
|
4798
|
+
"id": "bug-290",
|
|
4799
|
+
"timestamp": "2026-09-11T16:33:44.539Z",
|
|
4800
|
+
"error_message": "Significant refactor of ",
|
|
4801
|
+
"file": ".github/workflows/release.yml",
|
|
4802
|
+
"root_cause": "6 lines replaced/restructured",
|
|
4803
|
+
"fix": "Rewrote 27→49 lines (6 removed)",
|
|
4804
|
+
"tags": [
|
|
4805
|
+
"auto-detected",
|
|
4806
|
+
"refactor",
|
|
4807
|
+
"yml"
|
|
4808
|
+
],
|
|
4809
|
+
"related_bugs": [],
|
|
4810
|
+
"occurrences": 1,
|
|
4811
|
+
"last_seen": "2026-09-11T16:33:44.539Z"
|
|
4755
4812
|
}
|
|
4756
4813
|
]
|
|
4757
4814
|
}
|
|
@@ -12,6 +12,10 @@
|
|
|
12
12
|
|
|
13
13
|
## Key Learnings
|
|
14
14
|
|
|
15
|
+
- **2026-09-11 — When a fix "changes the error" but doesn't fix it, STOP GUESSING AND INSTRUMENT.** The npm publish failure took seven releases because three faults were stacked (expired token → Node below the OIDC floor → malformed trusted-publisher config), each hiding the next, so every partial fix produced a *new* plausible-looking error and made a wrong theory feel confirmed. `npm publish --loglevel verbose` named the exact failing endpoint and reason (`POST /-/npm/v1/oidc/token/exchange/... → "OIDC token exchange error - package not found"`) on the very first run that had it. That single flag was worth more than five diagnostic cycles. Rule: after the SECOND failed fix of the same symptom, stop proposing causes and add logging/asserts that make the failure self-describing. See bug-259.
|
|
16
|
+
- **2026-09-11 — Rendered UI text is not data.** The npm trusted publisher had been stored with a trailing slash in the Repository field (`docguard/`), so it never matched the OIDC claim `raccioly/docguard`. It displayed as `raccioly/docguard/` the whole time, which reads exactly like a path separator — I looked at it twice and dismissed it. It only became provable when a correctly-created second entry rendered *differently* (`raccioly/docguard`) directly beside it. When a value's correctness matters and the UI won't show you the raw field, create a known-good control and compare renderings rather than reasoning about the formatting.
|
|
17
|
+
- **2026-09-11 — Prefer additive over destructive when repairing third-party config.** npm fixes trusted-publisher fields at creation ("to change them, delete and recreate"). Rather than deleting the suspect entry, I added a second one with verified values — so a failed recreate (the form had already been blocked once by a browser extension) couldn't leave the package with no publisher at all. It worked, which also *proved* the old entry was the broken one. Delete the stale entry only after the replacement is confirmed working.
|
|
18
|
+
- **2026-09-11 — Never locate a YAML block by first-match on a structural pattern that repeats across jobs.** A scripted edit meant for `publish-npm` matched `build-mcpb` first (both start `checkout → setup-node → node-version: 20`), clobbering that job's body and deleting `publish-npm` entirely — the workflow then failed at parse time with zero jobs. Use targeted anchored edits, and after any workflow edit assert the full job list and each job's step names before pushing.
|
|
15
19
|
- **2026-09-11 — `npm install -g npm@latest` in a CI step is never safe to assume works — npm's own majors bump their engines floor too.** v0.34.3's Trusted Publishing fix used `npm@latest`, which resolved to npm 12.0.2 (`engines: node ^22.22.2 || ^24.15.0 || >=26.0.0`) — incompatible with the Node 20 the publish-npm job runs on. Exact same class of mistake as bug-255 (@babel/parser major bump), one layer up the toolchain, caught by the pipeline itself on the very next real run. Fix: pin to a checked-compatible range (`npm@11`, whose engines field is `^20.17.0 || >=22.9.0`) and verify by actually installing it in an isolated prefix, not by reasoning about what "should" be compatible. See bug-258.
|
|
16
20
|
- **2026-09-11 — Fixed bug-256 permanently: migrated publish-npm to Trusted Publishing (OIDC), retiring NODE_AUTH_TOKEN entirely.** See bug-257. Two non-obvious things worth remembering: (1) npm Trusted Publishing needs npm CLI >=11.5.0 — Node 20's bundled npm is older, so the workflow now self-updates (`npm install -g npm@latest`) before publishing; forgetting this would trade one failure mode for another. (2) A GitHub Actions "rerun failed jobs" reruns using the workflow file AS IT EXISTED AT THAT RUN'S COMMIT, not the current default-branch version — editing release.yml and then rerunning an old failed run would NOT pick up the fix. Had to cut an actual new release (v0.34.3, no code changes) to get a fresh run that exercises the updated workflow. Confirm any workflow-file fix via a genuinely new run, never a rerun of a run that predates the fix.
|
|
17
21
|
- **2026-09-11 — Claude in Chrome can get blocked by an unrelated browser extension's overlay.** Mid-way through filling an npm settings form (Trusted Publisher setup), clicks and even a plain screenshot started failing with "Cannot access a chrome-extension:// URL of different extension" — almost certainly another extension (password manager autofill is the likely suspect) injected a frame that captured input on the tab. Claude in Chrome can't reach into another extension's frame to dismiss it; the fix was asking the user to click/Escape on their end to clear it, then resuming automation. Also: user's real Chrome profile carries their own extensions, unlike the in-app Browser pane — expect this class of interference there and not in the sandboxed pane.
|
|
@@ -18,8 +18,8 @@
|
|
|
18
18
|
"first_read": "2026-09-11T14:49:34.552Z"
|
|
19
19
|
},
|
|
20
20
|
"/Users/ricardoaccioly/Repo_claude/canonical-spec-kit/.github/workflows/release.yml": {
|
|
21
|
-
"count":
|
|
22
|
-
"tokens":
|
|
21
|
+
"count": 9,
|
|
22
|
+
"tokens": 5444,
|
|
23
23
|
"first_read": "2026-09-11T15:15:37.248Z"
|
|
24
24
|
},
|
|
25
25
|
"/private/tmp/claude-501/-Users-ricardoaccioly-Repo-claude-canonical-spec-kit/25ac0636-5765-49fe-a808-dd97dc825b30/tasks/bcylzwtls.output": {
|
|
@@ -36,6 +36,21 @@
|
|
|
36
36
|
"count": 1,
|
|
37
37
|
"tokens": 0,
|
|
38
38
|
"first_read": "2026-09-11T15:56:42.484Z"
|
|
39
|
+
},
|
|
40
|
+
"/private/tmp/claude-501/-Users-ricardoaccioly-Repo-claude-canonical-spec-kit/25ac0636-5765-49fe-a808-dd97dc825b30/tasks/b4o2fwehl.output": {
|
|
41
|
+
"count": 1,
|
|
42
|
+
"tokens": 0,
|
|
43
|
+
"first_read": "2026-09-11T16:01:53.189Z"
|
|
44
|
+
},
|
|
45
|
+
"/private/tmp/claude-501/-Users-ricardoaccioly-Repo-claude-canonical-spec-kit/25ac0636-5765-49fe-a808-dd97dc825b30/tasks/bl3wuxq6y.output": {
|
|
46
|
+
"count": 1,
|
|
47
|
+
"tokens": 0,
|
|
48
|
+
"first_read": "2026-09-11T16:13:05.923Z"
|
|
49
|
+
},
|
|
50
|
+
"/private/tmp/claude-501/-Users-ricardoaccioly-Repo-claude-canonical-spec-kit/25ac0636-5765-49fe-a808-dd97dc825b30/tasks/bxfoxiweq.output": {
|
|
51
|
+
"count": 1,
|
|
52
|
+
"tokens": 0,
|
|
53
|
+
"first_read": "2026-09-11T16:39:11.726Z"
|
|
39
54
|
}
|
|
40
55
|
},
|
|
41
56
|
"files_written": [
|
|
@@ -206,13 +221,37 @@
|
|
|
206
221
|
"action": "edit",
|
|
207
222
|
"tokens": 594,
|
|
208
223
|
"at": "2026-09-11T15:58:21.011Z"
|
|
224
|
+
},
|
|
225
|
+
{
|
|
226
|
+
"file": "/Users/ricardoaccioly/Repo_claude/canonical-spec-kit/.github/workflows/release.yml",
|
|
227
|
+
"action": "edit",
|
|
228
|
+
"tokens": 375,
|
|
229
|
+
"at": "2026-09-11T16:08:59.960Z"
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
"file": "/Users/ricardoaccioly/Repo_claude/canonical-spec-kit/.github/workflows/release.yml",
|
|
233
|
+
"action": "edit",
|
|
234
|
+
"tokens": 526,
|
|
235
|
+
"at": "2026-09-11T16:09:12.899Z"
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
"file": "/Users/ricardoaccioly/Repo_claude/canonical-spec-kit/.github/workflows/release.yml",
|
|
239
|
+
"action": "edit",
|
|
240
|
+
"tokens": 616,
|
|
241
|
+
"at": "2026-09-11T16:33:44.536Z"
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
"file": "/Users/ricardoaccioly/Repo_claude/canonical-spec-kit/.github/workflows/release.yml",
|
|
245
|
+
"action": "edit",
|
|
246
|
+
"tokens": 212,
|
|
247
|
+
"at": "2026-09-11T16:39:55.629Z"
|
|
209
248
|
}
|
|
210
249
|
],
|
|
211
250
|
"edit_counts": {
|
|
212
251
|
".github/dependabot.yml": 1,
|
|
213
252
|
"CHANGELOG.md": 9,
|
|
214
253
|
"package.json": 3,
|
|
215
|
-
".github/workflows/release.yml":
|
|
254
|
+
".github/workflows/release.yml": 11,
|
|
216
255
|
".github/workflows/ci.yml": 1,
|
|
217
256
|
".github/workflows/auto-merge.yml": 3,
|
|
218
257
|
".github/workflows/scheduled-release.yml": 2,
|
|
@@ -220,8 +259,8 @@
|
|
|
220
259
|
"tests/commands.test.mjs": 1
|
|
221
260
|
},
|
|
222
261
|
"anatomy_hits": 2,
|
|
223
|
-
"anatomy_misses":
|
|
224
|
-
"repeated_reads_warned":
|
|
262
|
+
"anatomy_misses": 8,
|
|
263
|
+
"repeated_reads_warned": 10,
|
|
225
264
|
"cerebrum_warnings": 0,
|
|
226
|
-
"stop_count":
|
|
265
|
+
"stop_count": 26
|
|
227
266
|
}
|
|
@@ -1312,3 +1312,16 @@
|
|
|
1312
1312
|
| 11:56 | Session end: 26 writes across 9 files (dependabot.yml, CHANGELOG.md, package.json, release.yml, ci.yml) | 6 reads | ~68423 tok |
|
|
1313
1313
|
| 11:57 | Edited .github/workflows/release.yml | 14→17 lines | ~303 |
|
|
1314
1314
|
| 11:58 | Edited .github/workflows/release.yml | added 2 condition(s) | ~594 |
|
|
1315
|
+
| 11:59 | Session end: 28 writes across 9 files (dependabot.yml, CHANGELOG.md, package.json, release.yml, ci.yml) | 7 reads | ~69392 tok |
|
|
1316
|
+
| 12:02 | Session end: 28 writes across 9 files (dependabot.yml, CHANGELOG.md, package.json, release.yml, ci.yml) | 8 reads | ~69392 tok |
|
|
1317
|
+
| 12:08 | Edited .github/workflows/release.yml | expanded (+12 lines) | ~375 |
|
|
1318
|
+
| 12:09 | Edited .github/workflows/release.yml | expanded (+25 lines) | ~526 |
|
|
1319
|
+
| 12:11 | Session end: 30 writes across 9 files (dependabot.yml, CHANGELOG.md, package.json, release.yml, ci.yml) | 8 reads | ~70092 tok |
|
|
1320
|
+
| 12:16 | Session end: 30 writes across 9 files (dependabot.yml, CHANGELOG.md, package.json, release.yml, ci.yml) | 9 reads | ~70092 tok |
|
|
1321
|
+
| 12:19 | Session end: 30 writes across 9 files (dependabot.yml, CHANGELOG.md, package.json, release.yml, ci.yml) | 9 reads | ~70092 tok |
|
|
1322
|
+
| 12:31 | Session end: 30 writes across 9 files (dependabot.yml, CHANGELOG.md, package.json, release.yml, ci.yml) | 9 reads | ~70092 tok |
|
|
1323
|
+
| 12:32 | Session end: 30 writes across 9 files (dependabot.yml, CHANGELOG.md, package.json, release.yml, ci.yml) | 9 reads | ~70092 tok |
|
|
1324
|
+
| 12:33 | Edited .github/workflows/release.yml | expanded (+22 lines) | ~616 |
|
|
1325
|
+
| 12:34 | Session end: 31 writes across 9 files (dependabot.yml, CHANGELOG.md, package.json, release.yml, ci.yml) | 9 reads | ~71389 tok |
|
|
1326
|
+
| 12:37 | Session end: 31 writes across 9 files (dependabot.yml, CHANGELOG.md, package.json, release.yml, ci.yml) | 9 reads | ~71389 tok |
|
|
1327
|
+
| 12:39 | Edited .github/workflows/release.yml | expanded (+10 lines) | ~212 |
|