boost-skill-cli 1.2.108__tar.gz → 1.2.110__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.
- {boost_skill_cli-1.2.108/boost_skill_cli.egg-info → boost_skill_cli-1.2.110}/PKG-INFO +6 -3
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/README.md +5 -2
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/_version.py +2 -2
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/commands/configuration.py +20 -3
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/commands/discovery.py +22 -7
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/rag.py +15 -4
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110/boost_skill_cli.egg-info}/PKG-INFO +6 -3
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_skill_cli.egg-info/SOURCES.txt +6 -0
- boost_skill_cli-1.2.110/docs/roadmap/items/a-new-shipped-card-always-404s-its-own-write-up-link.md +42 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-ai-degrade-note-blames-path-api-keys-regardless-of-cause-sev.md +2 -2
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-browse-findings.md +2 -2
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-catalog-resolve-one-s-duplicate-name-hint-advertises-path-to.md +2 -2
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-context-findings.md +1 -1
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-create-distill-infer-absorb-install-silently-replace-an-inst.md +1 -1
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-declined-confirms-never-name-y-boost-assume-yes-snapshot-cle.md +2 -2
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-discover-findings.md +1 -1
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-export-o-cohort-create-and-profile-save-silently-overwrite-e.md +1 -1
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-git-operations-never-set-git-terminal-prompt-0-so-a-404-priv.md +1 -1
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-health-findings.md +1 -1
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-install-findings.md +1 -1
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-log-simulate-changelog-headings-echo-the-raw-qualified-argum.md +2 -2
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-mcp-findings.md +1 -1
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-mcp-register-s-boost-first-consent-names-only-the-registered.md +1 -1
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-out-warn-defaults-to-stdout-infer-absorb-corrupt-skill-md-se.md +1 -1
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-output-wrap-tokens-splits-punctuation-off-backtick-spans-ins.md +2 -2
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-pinned-taps-silently-moved-to-head-by-update-re-clone-and-co.md +13 -2
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-preview-findings.md +2 -2
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-profile-findings.md +2 -2
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-pulse-findings.md +2 -2
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-quarantine-findings.md +1 -1
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-replay-findings.md +2 -2
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-run-findings.md +2 -2
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-schedule-findings.md +1 -1
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-six-count-flags-tap-chat-absorb-lint-changelog-hooks-skip-ut.md +1 -1
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-snapshot-restore-replaces-the-lock-wholesale-orphaning-newer.md +2 -2
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-tag-findings.md +11 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-tap-findings.md +1 -1
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-taps-findings.md +1 -1
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-taps-outdated-decay-policy-snapshot-json-emit-display-string.md +1 -1
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-trust-findings.md +2 -2
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-untap-findings.md +1 -1
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-update-findings.md +2 -2
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-verify-findings.md +1 -1
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/capability-policy-skips-rules-and-workflows.md +1 -1
- boost_skill_cli-1.2.110/docs/roadmap/items/compact-answers-a-named-tap-with-a-global-all-clear.md +36 -0
- boost_skill_cli-1.2.110/docs/roadmap/items/lighthouse-flips-on-byte-identical-input.md +44 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mutation-shards-rerun-full-set-every-push.md +1 -1
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/near-identical-copies-still-eat-the-slots.md +1 -0
- boost_skill_cli-1.2.110/docs/roadmap/items/reclone-leaves-a-clone-on-head-when-it-cannot-reach-the-pin.md +41 -0
- boost_skill_cli-1.2.110/docs/roadmap/items/reindex-reported-a-completeness-share-it-could-not-compute.md +55 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/shrink-the-published-index.md +2 -1
- boost_skill_cli-1.2.110/docs/roadmap/items/taps-vouches-for-a-clone-that-is-not-there.md +42 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/tool-call-eval-tier.md +1 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap.html +255 -773
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_cli_discovery.py +15 -3
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_compact.py +45 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_rag_completeness.py +38 -6
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/.gitattributes +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/.gitignore +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/.gitleaks.toml +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/.htmlvalidate.json +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/.lighthouserc.json +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/.lycheeignore +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/.markdownlint-cli2.jsonc +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/.pre-commit-config.yaml +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/.stylelintrc.json +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/.vale/styles/boost/AIWriting.yml +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/.vale/styles/boost/Terminology.yml +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/.vale/styles/config/vocabularies/boost/accept.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/.vale.ini +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/CLAUDE.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/CODE_OF_CONDUCT.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/CONTRIBUTING.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/DCO +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/GOVERNANCE.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/LICENSE +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/MAINTAINERS.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/MANIFEST.in +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/Makefile +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/SECURITY.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/SUPPORT.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/__init__.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/__main__.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/cli.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/cliparse.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/commands/__init__.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/commands/_common.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/commands/bmad.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/commands/hooks.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/commands/info.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/commands/intelligence.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/commands/pkg.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/commands/quality.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/commands/quickstart.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/commands/run.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/commands/safety.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/commands/taps.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/commands/team.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/__init__.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/adapters.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/agents.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/ai.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/aihost.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/archive.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/bmad.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/bootstrap.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/browse.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/builtin.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/capabilities.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/catalog.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/catalogbundle.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/chat.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/claude_settings.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/cohort.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/complete.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/config.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/dense.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/deps.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/discovery.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/ed25519.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/embed.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/faithfulness.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/frontmatter.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/gitutil.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/hookhost.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/imperative.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/injectscan.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/installscan.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/integrity.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/journal.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/jsonstate.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/localembed.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/lockfile.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/logs.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/mcp.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/mcpdecl.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/mcphost.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/minisign.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/nethttp.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/output.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/paths.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/policy.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/projectlock.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/provenance.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/registry.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/report.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/resolve.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/rules.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/scopes.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/secretscan.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/selfupdate.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/serve.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/shards.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/stackprobe.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/staleness.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/store.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/trustaudit.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/typedvalue.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/typosquat.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/updatediff.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/util.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/core/workflows.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/data/registries.json +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/data/rules/boost-first.mdc +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/errors.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_cli/spin.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_langchain/__init__.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_langchain/_compat.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_langchain/graph.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_langchain/loader.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_langchain/py.typed +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_langchain/retriever.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_skill_cli.egg-info/dependency_links.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_skill_cli.egg-info/entry_points.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_skill_cli.egg-info/requires.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/boost_skill_cli.egg-info/top_level.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/codecov.yml +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/.claude/settings.local.json +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/DEBUGGING.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/adapters.html +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/architecture/README.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/architecture/c4-components-core.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/architecture/c4-containers.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/architecture/c4-context.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/architecture/c4-dynamic-install.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/bmad.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/carousel/gifs/distill.gif +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/carousel/gifs/doctor.gif +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/carousel/gifs/explain.gif +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/carousel/gifs/hooks.gif +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/carousel/gifs/install.gif +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/carousel/gifs/pulse.gif +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/carousel/gifs/search.gif +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/carousel/gifs/tap.gif +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/carousel/tapes/distill.tape +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/carousel/tapes/doctor.tape +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/carousel/tapes/explain.tape +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/carousel/tapes/hooks.tape +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/carousel/tapes/install.tape +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/carousel/tapes/pulse.tape +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/carousel/tapes/search.tape +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/carousel/tapes/tap.tape +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/carousel.html +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/chat.html +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/code-review.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/commands.html +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/commit-audit.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/demo-index.json +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/demo.gif +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/demo.html +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/demo.tape +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/dependencies.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/design-roadmap.html +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/eval-latest.json +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/eval.html +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/index.html +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/langchain.html +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/mcp-hub.html +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/openssf-badge.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/openssf-playbook.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/rag-architecture.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D01.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D02.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D03.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D04.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D05.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D06.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D07.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D08.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D09.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D10.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D11.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D12.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D13.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D14.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D15.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D16.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D17.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D18.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D19.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D20.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D21.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D22.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D23.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D24.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D25.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D26.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/BOOST-D27.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/a11y-sweep-flakes-on-color-contrast.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/accessibility-audit-pa11y-ci-axe-core.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/actionlint-skips-shellcheck-silently.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/adapter-conformance-langgraph-leg-never-ran.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/agents-field-records-the-request-not-the-links.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/ai-backend-fanout.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/ai-bridge-silent-failure-logging.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/ambiguous-tap-short-name-resolution.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/atomic-corruption-safe-lock-file-writes.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/atomic-skill-install-temp-dir-swap.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-absorb-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-adapt-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-adapt-renders-every-sibling-of-a-flat-agents-dir-workflow-as.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-adapt-run-stats-edit-tag-export-reject-the-tap-name-qualifie.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-attest-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-audit-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-bmad-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-bundle-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-catalog-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-changelog-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-chat-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-clean-counts-failed-removals-as-cleaned-journals-the-inflate.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-cli-py-commands-summaries-and-parser-help-contradict-behavio.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-cohort-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-completions-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-config-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-config-policy-set-store-type-unchecked-values-consumers-cras.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-corrupt-settings-config-state-json-silently-read-as-empty-th.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-create-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-deps-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-distill-s-heuristic-merge-drops-repeated-fences-braces-writi.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-doctor-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-drift-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-dry-runs-disagree-with-the-real-run-compact-counts-bytes-it.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-edit-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-evolve-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-explain-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-export-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-fingerprint-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-five-exit-70-crashes-on-bad-paths-data-catalog-export-serve.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-focus-profile-sideline-by-unlinking-without-recording-it-lis.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-hooks-remove-n-cannot-find-hooks-boost-itself-added-unknown.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-import-all-skips-the-injection-secret-scans-and-the-per-skil.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-import-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-index-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-info-stats-explain-render-a-different-smaller-shape-for-rule.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-install-dry-run-promises-agents-the-real-install-never-write.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-install-local-writes-empties-the-repo-s-mcp-json-silently-of.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-json-accepted-but-ignored-on-many-branches-cohort-config-pol.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-lint-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-log-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-missing-json-on-doctor-test-health-changelog-trending-log-ho.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-name-miss-errors-unknown-tap-qualifier-unnamed-no-close-matc.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-onboard-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-out-table-clips-data-columns-to-an-assumed-80-columns-when-s.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-outdated-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-policy-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-project-scope-seams-uninstall-verify-list-info-reinstall-dis.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-protocol-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-quarantine-pin-state-invisible-list-info-doctor-report-links.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-quickstart-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-recommend-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-reindex-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-reinstall-sync-repair-and-audit-resolve-by-name-tap-ignoring.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-root-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-rules-workflows-reported-as-skills-uninstall-claims-a-store.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-search-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-simulate-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-singular-plural-misses-1-skills-1-issue-need-1-skill-pass-ac.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-skill-profile-name-slugging-is-inconsistent-distill-o-accept.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-stale-prose-after-shipped-changes-catalog-export-live-discov.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-stray-positionals-and-inapplicable-flags-silently-ignored-ac.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-sweep-positionals-json-lack-help-strings-and-no-command-help.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-sync-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-tap-dry-run-is-silently-ignored-outside-catalog-spec-and-def.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-test-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-trust-verify-labels-a-manifest-tampered-after-signing-by-a-t.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-unpin-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-verify-drift-say-nothing-installed-exit-0-and-doctor-says-lo.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-who-findings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/autonomous-ship-workflow-and-isolated-worktree.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/bare-boost-never-names-an-entry-point.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/bm25-empty-tokenization-kills-catalog-fallback.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/bm25-has-no-stemming.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/bm25-index-is-one-json-blob.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/bmad-autopilot-one-command-persona-routing.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/bmad-hooks-all-hosts.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/boost-first-carried-the-losing-trigger.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/boost-first-rule.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/boost-langchain-publishing.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/boost-run-live-agents.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/branch-current-gate.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/bring-commands-under-mutation-testing.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/broken-link-and-anchor-checking-lychee.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/browse-could-not-search-two-words.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/browse-crashes-selecting-a-rule-or-workflow.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/build-provenance-slsa-attestations.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/cache-the-catalog-entry-set-across-rag-queries.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/capability-manifest-and-least-privilege-policy.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/catalog-categories-beyond-curated.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/catalogue-entries-carry-no-content-identity.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/chat-cites-sources-by-a-number-it-never-prints.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/chat-command-grounded-conversational-search.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/ci-job-timeout-minutes.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/ci-summary-step-fails-itself.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/ci-time-is-now-runner-queueing.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/clean-env-install-smoke-pip-and-pipx.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/cli-audit-2026-08-full-sweep.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/cli-command-audit.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/cli-output-ignored-the-terminal.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/code-scanning-rule-can-be-restored.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/codeql-job-rename-stranded-merge-protection.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/cold-search-reads-the-whole-catalogue.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/command-carousel-page.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/command-reference-docs-site.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/completions-complete-only-command-names.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/completions-install-could-eat-your-rc-file.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/complexity-and-dead-code-radar-xenon-vulture.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/concurrent-rag-builds-delete-each-others-temp-index.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/consolidate-skill-staleness-drift-logic-into-cor.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/corpus-refresh-updates-data-not-prose.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/corrupt-config-reads-as-ready-to-set-up.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/coverage-dashboard-codecov-free-for-oss.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/coverage-guided-fuzzing-atheris-oss-fuzz.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/crash-listing-branch-untested.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/crash-recorder-error-paths-core-logs-py.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/crash-reports-leak-api-keys.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/delay-true-defeats-the-log-suppress.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/demo-cannot-open-its-own-pr.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/demo-gif-workflow-has-never-succeeded.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/demo-workflow-cancels-other-prs.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/dense-kill-switch-has-no-reason-state.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/dense-no-key-guard-is-unreachable.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/dense-ready-but-embedder-cannot-run.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/dense-reindex-has-no-progress-or-durability.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/dense-reindex-reuses-whole-taps.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/dense-search-fallback-and-stale-tap-pruning.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/dense-search-rescans-every-vector.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/dense-store-holds-every-vector-once-per-copy.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/dependabot-missing-pip-ecosystem.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/dependabot-regeneration-drops-platform-pins.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/dependabot-root-pip-entry-duplicates-requirements.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/dependabot-splits-multi-path-action-repos.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/dependency-cve-gate-pip-audit.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/discover-searches-github-not-a-stale-sample.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/docsite-chrome-and-content-audit.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/docstring-coverage-interrogate.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/doctor-checks-rules-and-workflows.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/doctor-prescribes-sync-that-deletes-live-links.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/dry-run-promised-a-link-nobody-makes.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/efficiency-registries-ponytail-caveman.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/end-of-options-guard-on-git-commands.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/err-multiline-hint-colours-across-the-newline.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/est-items-counts-agent-mirrors-as-items.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/eval-corpus-cannot-see-real-retrieval.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/eval-corpus-counted-by-the-method-the-repo-disavows.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/eval-corpus-duplication-is-intra-tap-not-mirrors.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/eval-corpus-is-96x-smaller-than-a-real-install.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/eval-corpus-is-one-strangers-repo.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/eval-corpus-pins-have-no-refresh-path.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/eval-corpus-was-not-actually-pinned.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/eval-deduped-ranked-lists-by-name.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/eval-floor-calibration-stale-after-pin-refresh.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/eval-gate-scores-a-body-less-corpus.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/eval-stats-could-never-publish.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/exemplar-graded-golden-set-runs-in-no-gate.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/expanded-card-bodies-overflow.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/explain-outline-has-no-cap.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/extension-free-tests-core-dense-py.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/extract-mcp-http-servers-out-of-configuration-py.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/finish-mutation-hardening-across-core.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/fix-self-update-version-detection-dead-branch.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/fork-safe-network-proxy-handler.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/framework-adapter-langgraph.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/framework-adapter-multi-agent.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/framework-adapters-boost-adapt.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/frontmatter-scalar-over-coercion.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/gate-parity-test-ignores-k-and-golden.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/gated-golden-set-has-zero-exemplars.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/gemini-agent-frontmatter-sanitizer.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/gemini-cli-agent-target.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/gemini-duplicate-skill-discovery.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/gemini-hooks-host-aware.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/gemini-mcp-parity.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/github-community-health-files.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/github-pages-deploy-is-broken-every-push.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/golden-set-grades-by-name-not-by-skill.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/golden-set-statistical-power.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/gstack-tap-first-then-coexistence.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/hash-pinned-reproducible-toolchain-uv-lock.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/heal-deleted-links-it-never-made.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/html-validation-html-validate.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/info-deps-materialize-a-dir-they-then-reject.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/info-rejects-the-qualified-name-it-recommends.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/install-docs-never-mentioned-upgrading.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/install-from-path-bypasses-policy-and-pin-checks.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/install-path-disambiguation.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/install-resolves-skill-dependencies.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/install-scope-user-or-project.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/installed-skill-trust-audit.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/integrity-verification-boost-verify.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/internal-architecture-diagrams.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/invocation-pid-logging-for-crash-correlation.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/journal-rotation-race-and-handle-leak.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/keyless-dense-tier-local-static-embeddings.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/keyless-semantic-search-for-everyone.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/langchain-in-the-wheel.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/langchain-integration-explainer-page.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/langchain-langgraph-langsmith-integration.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/langchain-retriever-metadata-and-k-floor.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/layering-guard-import-linter.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/license-compliance-scanning.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/lighthouse-ci-on-the-pages-site.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/lighthouse-scored-a-page-nobody-is-served.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/lint-tap-misscopes-rule-workflow-entries.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/list-rules-and-workflows.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/localize-the-stored-bm25-snippet.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/lock-invariant-cannot-parse-extras-pins.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/lockfile-enforcement-and-commit-pinning.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/log-timestamps-mislabeled-utc.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/long-hints-overflow-narrow-panes.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/lowest-version-resolution-uv-resolution-lowest-d.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/main-has-no-branch-protection.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/main-ruleset-ref-pattern-has-literal-quotes.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/make-lint-masks-actionlint-failures.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/make-the-roadmaps-discoverable.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/markdown-consistency-markdownlint-cli2.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/markdownlint-lints-the-fuzz-corpus.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/marketing-crm-domain-had-no-category.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mcp-already-covered-defeater.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mcp-aware-skills.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mcp-cannot-read-a-skill-before-installing.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mcp-check-skills-before-starting-a-task.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mcp-hub-diagram-node-text-overflow.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mcp-install-description-omits-antigravity.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mcp-install-skips-the-injection-scan.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mcp-launch-objc-fork-safety.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mcp-one-benefit-nameable-task.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mcp-register-names-server-before-env.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mcp-search-before-reinventing.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mcp-search-cost-overstated-on-keyless-machines.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mcp-search-cost-was-understated.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mcp-search-hid-which-ranking-ran.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mcp-servers-ignore-install-scope.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mcp-skip-list-absent-from-tool-descriptions.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mcp-startup-self-harden-fork-safety.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mcp-zero-setup-and-three-kinds.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/memoize-config-load-in-process.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/merge-queue-would-deadlock-most-required-checks.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/merged-loop-branches-are-never-pruned.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/modernization-smells-refurb-pyupgrade.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mutation-gate-was-the-whole-critical-path.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mutation-hardening-core-frontmatter-py.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mutation-hardening-core-gitutil-py.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mutation-hardening-core-store-py.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mutation-shard-floor-is-one-file.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/mypy-strict-mode-for-commands.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/near-duplicate-items-eat-the-result-slots.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/negative-limit-inverts-log-pulse-output.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/onboard-overwrites-generated-files-without-confirm.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/one-command-every-env-nox.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/one-commit-can-cut-two-releases.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/one-dead-tap-broke-every-update.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/one-shared-atomic-write-helper.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/openssf-best-practices-badge.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/openssf-gold-ceiling.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/openssf-playbook.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/openssf-silver.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/osps-baseline-levels.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/package-metadata-validation-twine-check-friends.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/panel-fits-data-to-an-assumed-80-in-a-pipe.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/patch-coverage-gate-diff-cover.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/path-traversal-unsanitized-rule-workflow-name.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/pathlib-exists-is-not-total.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/pep585-604-modernization-sweep.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/performance-regression-gate-pytest-benchmark.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/pin-the-lint-toolchain.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/post-deploy-always-defeated-by-skipped-setup.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/post-deploy-smoke-headless-load-check.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/pre-release-python-canary-3-14t-free-threaded.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/prerequisites-and-semantic-search-setup.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/project-scope-across-every-command.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/project-scope-symlink-escape-on-write.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/promote-nav-footer-into-the-shared-style-system.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/prompt-injection-scanning-of-skill-markdown.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/property-based-tests-hypothesis-on-the-parsers.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/prose-and-terminology-linting-vale.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/prune-ignored-dirs-during-scan-dir-walk.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/publish-gate-ignores-pip-audit-and-metadata.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/publish-the-keyword-index.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/publish-trigger-was-reachable-from-a-fork.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/published-shards-have-no-consumer.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/pytest-tmpdir-cve-blocked-by-py39-floor.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/python-floor-moves-to-312.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/quality-dashboard-sonarcloud-free-for-oss.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/quickstart-drops-incompatible-shard-status.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/quickstart-manifest-error-drops-hint-and-misnames-cause.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/quickstart-says-ready-exit-0-after-every-tap-failed.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/quickstart-shard-download-invisible-in-preview-and-run.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/ragas-unpin-when-upstream-ships.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/ranx-significance-monitor.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/readme-81-command-table-lists-80-omits-quickstart.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/readme-hero-installs-a-name-no-starter-registry-ships.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/readme-prune-and-search-guide.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/recommend-recomputes-its-columns-per-row.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/reconcile-the-theme-drift.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/refresh-strands-the-natural-set-baseline.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/refresh-the-marketing-surface.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/rel-time-tests-race-the-wall-clock.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/release-verifies-the-wrong-commit.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/relicence-apache-2.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/reproducible-release-artifacts.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/required-checks-can-declare-a-check-that-deadlocks-prs.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/required-checks-config-drift.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/required-eval-gate-still-grades-by-name.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/resolve-vendored-duplicate-copies.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/retrieval-quality-eval-harness.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/reuse-helpers-kill-minor-dead-work.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/roadmap-boards-advertise-python-39.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/roadmap-html-goes-stale-on-every-rebase.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/roadmap-page-weight-grows-without-bound.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/roadmap-perf-budget-has-no-local-guard.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/robust-tag-argument-parsing.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/ruff-016-widens-the-default-rule-set.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/rule-install-native-materialization.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/rules-install-but-cannot-be-governed.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/runner-egress-monitoring-stepsecurity-harden-run.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/runtime-explain-faithfulness-guardrail.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/sbom-aware-scanning-osv-scanner.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/sbom-declares-the-wrong-version.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/sbom-on-every-release-cyclonedx-syft.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/sbom-release-event-never-fires.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/scan-and-sync-rules-and-workflows.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/scheduled-toolchain-lock-regeneration.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/scorecard-findings-triage.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/scripts-under-the-lint-gate.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/search-and-browse-visual-refresh.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/search-caps-the-two-copyable-identifiers.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/search-drops-symbol-language-queries-silently.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/search-footer-not-fitted-to-the-pane-its-rows-were-fitted-to.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/search-footer-overflows-40-col-pane-gate-passes-by-luck.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/search-never-notices-a-new-tap.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/search-relevance-meter-is-constant-on-default-page.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/search-rows-use-term-width-so-piping-drops-the-tap-column.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/second-type-checker-pyright.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/secret-and-pii-scanning-of-installed-skills.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/secret-scanning-gitleaks-push-protection.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/security-linting-bandit-via-ruff-s-rules.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/self-update-broken-for-pip-pipx-installs.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/self-update-claims-up-to-date-without-asking.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/serve-404-reflected-the-request.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/serve-is-a-searchable-catalogue.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/serve-py-traversal-guards-untested.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/shard-refresh-skips-processed-commits.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/shard-runs-reembed-everything-weekly.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/shards-pipeline-never-produced-a-shard.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/shareable-catalogue-bundle.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/shift-left-gate-pre-commit-pre-commit-ci.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/single-imperative-rule-extractor.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/single-tech-stack-prober.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/smart-rerank-pays-per-novel-query.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/split-oversized-command-modules.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/stale-gate-sizes-in-readme-and-contributing.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/stale-tap-hint-dead-for-tap-only-installs.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/startup-and-import-time-budget-x-importtime.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/stop-re-serializing-entry-meta-on-every-search.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/structured-json-log-output-mode.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/supply-chain-posture-openssf-scorecard.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/surface-dehyphenation-rationale-is-false.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/surface-every-docs-page-from-the-guide.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/sweep-died-at-a-page-not-at-launch.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/sweep-died-at-launch-not-at-a-page.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/sync-could-not-repair-a-gutted-skill.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/sync-deletes-unowned-broken-symlinks.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/sync-relinks-into-every-agent-ignoring-scope.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/sync-reported-success-for-a-link-it-refused.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/table-fit-widths-floor-destroys-columns-and-still-overflows.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/tap-signing-and-provenance-sigstore-minisign.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/taps-check-out-freight-they-never-index.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/the-catalogue-advertised-repos-that-no-longer-exist.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/the-scale-corpus-refreshed-the-wrong-rows.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/the-shard-job-that-could-not-finish.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/theme-asset-linting-stylelint-eslint.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/tier3-ceiling-unreachable-at-default-n.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/two-ci-controls-that-could-not-act.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/two-crashes-that-should-have-been-messages.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/typo-detection-codespell.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/typosquat-and-name-confusion-detection.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/unify-tilde-two-copies-have-a-boundary-bug.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/uninstall-has-no-confirmation-prompt.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/unreadable-tap-cache-healthy-doctor-crashing-heal.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/untrack-generated-build-noise.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/unwatched-crons-hid-a-real-fuzz-crash.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/unwritable-agent-dir-has-no-remedy.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/update-advertises-a-flag-it-rejects.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/update-diff-before-apply.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/update-refreshed-rules-without-a-gate.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/update-refreshes-rules-and-workflows.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/update-reinstall-widens-agent-scope.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/vex-openvex-feed.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/visual-regression-pass-on-the-guide.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/weekly-vectors-had-no-ingestion-path.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/widen-the-ruff-rule-surface-b-sim-c4-perf-ruf.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/windows-in-the-ci-matrix.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/wire-bdd-suite-into-ci.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/workflow-install-native-materialization.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/workflow-linting-actionlint.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/workflow-sast-zizmor.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/workspace-scope-install.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/zip-strict-audit.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/zizmor-ignores-drift-and-make-lint-never-ran-it.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/zizmor-pin-is-a-yanked-release.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/security-design.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/semantic-search.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/superpowers/specs/2026-08-16-catalogue-content-identity-design.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/verifying-releases.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/vex/meta.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/vex/openvex.json +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/vex/statements/gitleaks-secretscan-test-fixtures.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/vex/statements/quality-trust-fingerprint-not-sensitive.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/vex/statements/zizmor-adhoc-packages-lint-runners.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/vex/statements/zizmor-dangerous-triggers-workflow-run.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/eslint.config.mjs +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/evals/README.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/evals/__init__.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/evals/baseline.json +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/evals/faithfulness.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/evals/golden_set.json +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/evals/make_corpus.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/evals/make_golden.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/evals/metrics.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/evals/publish_golden_dataset.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/evals/run_evals.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/examples/README.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/examples/adapt-demo.sh +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/examples/boost-run-prototype.sh +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/index.html +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/noxfile.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/pyproject.toml +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/requirements/coverage-tools.in +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/requirements/coverage-tools.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/requirements/lint-tools.in +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/requirements/lint-tools.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/requirements/mutation-tools.in +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/requirements/mutation-tools.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/requirements/platform-pins.lock +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/requirements/release-tools.in +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/requirements/release-tools.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/requirements/test-tools.in +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/requirements/test-tools.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/a11y_check.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/add_spdx_headers.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/bench_cli.sh +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/build_command_reference.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/build_demo_index.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/build_registries.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/build_roadmap.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/build_scale_corpus.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/build_vex.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/check_anchors.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/check_branch_current.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/check_dco.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/check_licenses.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/check_reproducible.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/check_required_checks.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/ensure_eval_corpus.sh +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/eval_corpus.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/eval_explain.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/eval_gate.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/eval_recommend.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/eval_retrieval.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/eval_stats_summary.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/eval_tools.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/import_budget.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/lock_toolchain.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/measure_near_duplicate_bound.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/measure_registry.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/mutation_gate.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/mutation_shards.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/mutation_weights.json +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/normalize_sdist.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/page_budget.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/perf_gate.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/post_deploy_smoke.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/publish_eval_json.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/publish_shards.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/release_guard.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/release_preflight.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/serve_docs.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/scripts/shard_plan.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/setup.cfg +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/sonar-project.properties +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/style/README.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/style/boost.css +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/style/boost.js +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/style/demo.html +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/bdd/features/adapt.feature +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/bdd/features/browse.feature +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/bdd/features/count.feature +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/bdd/features/discover.feature +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/bdd/features/doctor.feature +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/bdd/features/environment.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/bdd/features/explain.feature +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/bdd/features/index.feature +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/bdd/features/install.feature +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/bdd/features/list.feature +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/bdd/features/mcp.feature +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/bdd/features/search.feature +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/bdd/features/steps/cli_steps.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/bdd/features/steps/discovery_steps.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/bdd/features/steps/mcp_steps.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/bdd/features/steps/quality_steps.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/conftest.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/eval/baseline.json +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/eval/explain.jsonl +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/eval/fixtures/claude_init_event.jsonl +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/eval/golden-natural.jsonl +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/eval/golden.jsonl +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/eval/recommend.jsonl +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/eval/taps-scale.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/eval/taps.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/eval/tool_calls.jsonl +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_bmad_all_hosts.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_capabilities_policy.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_cli_adapt.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_cli_bmad.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_cli_catalog.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_cli_chat.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_cli_configuration.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_cli_hooks.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_cli_hooks_gemini.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_cli_info.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_cli_intelligence.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_cli_json_reports.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_cli_pane_width.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_cli_pkg.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_cli_quality.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_cli_quickstart.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_cli_tap_pins.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_cli_taps.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_cli_team.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_everyday_loop.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_integrity_enforce.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_kind_conformance.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_property_parsers.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_run.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_tap_signing.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/functional/test_workspace_scope.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/README.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/frontmatter/01-typical.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/frontmatter/02-lossy-version.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/frontmatter/03-lossy-numbers.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/frontmatter/04-lists.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/frontmatter/05-nested.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/frontmatter/06-empty-block.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/frontmatter/07-unterminated.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/frontmatter/08-none.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/frontmatter/09-unbalanced-quote.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/frontmatter/10-keywords.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/frontmatter/11-crlf.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/frontmatter/12-bom.md +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/registry/01-shorthand.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/registry/02-https.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/registry/03-ssh.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/registry/04-traversal.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/registry/05-empty.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/registry/06-space.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/registry/07-slash.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/registry/08-bare-host.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/registry/09-nul.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/registry/10-name-too-long.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/corpus/registry/11-long-owner-repo.txt +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/fuzz_frontmatter.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/fuzz/fuzz_registry.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/langchain/conftest.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/langchain/test_graph.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/langchain/test_loader.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/langchain/test_retriever.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/make_fixture.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/perf/test_benchmarks.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/smoke.sh +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_a11y_check.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_action_pin_lockstep.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_adapters.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_adapters_multi.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_adapters_runner.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_agents.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_ai.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_aihost.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_archive.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_bmad_core.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_boost_first_offer.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_bootstrap.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_bot_pr_dco.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_branch_current.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_browse.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_builtin.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_capabilities.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_catalog.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_catalogbundle.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_chat.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_check_anchors.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_check_dco.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_check_licenses.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_check_reproducible.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_claude_settings.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_clean_internal_cache.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_cli_update_shards.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_cliparse.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_codeql_analysis_key.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_cohort.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_command_reference_fresh.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_community_health_files.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_complete.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_complete_rc_block.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_config.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_content_dedupe.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_content_identity.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_crash_redaction.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_dedup_trust.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_demo_index.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_dense.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_dense_boilerplate_cluster.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_dense_embed_dedupe.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_dense_entry_reuse.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_dense_entry_vectors.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_dense_fallback.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_dense_fix_hint.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_dense_progress.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_dense_quantized.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_dense_ready_order.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_dense_shard_real_schema.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_dense_shard_unreadable_vectors.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_dense_shards.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_dense_status.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_dense_status_cheap.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_dense_vector_dedupe.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_dependabot_config.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_deps.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_discovery.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_distill_merge.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_docs_pages_linked.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_docsite_chrome.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_doctor_output_polish.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_drift_hint.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_ed25519.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_embed.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_embed_local.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_embed_truncated_response.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_entry_key.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_errors_and_cli_table.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_eval_baseline.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_eval_corpus.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_eval_faithfulness.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_eval_gate.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_eval_grading.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_eval_metrics.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_eval_stats_summary.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_eval_tools.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_eval_tools_probe.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_failure_alerting_covers_unattended.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_faithfulness.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_frontmatter.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_fuzz_targets.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_gemini_agent_sanitize.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_gitleaks_config.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_gitutil.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_gitutil_lfs.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_gitutil_sparse.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_gstack_coexistence.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_hook_settings_hosts.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_hookhost.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_imperative.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_import_budget.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_injectscan.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_install_permission_error.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_installscan.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_integrity.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_journal.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_jsonstate.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_langchain_packaging.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_launcher_python_floor.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_link_ownership.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_localembed.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_localembed_e2e.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_lockfile.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_logs.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_marketing_counts.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_mcp.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_mcp_install_scan.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_mcp_read.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_mcpdecl.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_mcphost.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_measure_registry.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_minisign.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_mutation_hardening.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_mutation_shards.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_mutation_subfile_shards.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_mutmut_source_paths.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_near_duplicate_collapse.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_nethttp.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_normalize_sdist.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_output.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_page_budget.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_paths.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_perf_gate.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_pkg_confusions.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_pkg_injection.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_pkg_secrets.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_platform_pins.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_policy.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_post_deploy_smoke.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_project_mcp_sidecar.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_projectlock.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_provenance.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_publish_golden_dataset.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_rag.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_rag_fastpath.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_rag_fusion.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_registries_fresh.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_registry.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_registry_categories.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_registry_control_chars.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_registry_parallel.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_release_guard.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_release_preflight.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_report.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_required_checks.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_rerank_cache.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_resolve.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_retrieve_any_near_duplicates.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_roadmap_fresh.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_rules.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_scale_corpus.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_schedule_plist.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_scopes.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_secretscan.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_selfupdate.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_serve.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_serve_docs.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_shard_plan.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_shards.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_shards_incremental.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_shards_ingest.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_shards_matrix.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_smoke_covers_every_command.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_spdx_headers.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_spin.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_stackprobe.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_staleness.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_store.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_store_materialize.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_sync_blocked_links.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_sync_repairs_gutted_skill.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_tap_pins.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_token_parity.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_toolchain_lock.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_trustaudit.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_typedvalue.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_typosquat.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_updatediff.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_util.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_version.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_version_tags.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_vex.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_visual_harness_capture.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_visual_harness_flags.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_workflow_concurrency.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_workflow_concurrency_groups.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_workflow_push_has_credentials.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_workflow_timeouts.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_workflows.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/unit/test_zizmor_ignores_still_anchor.py +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/visual/a11y_check.mjs +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/visual/console_check.mjs +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/visual/package-lock.json +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/visual/package.json +0 -0
- {boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/tests/visual/visual_check.mjs +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: boost-skill-cli
|
|
3
|
-
Version: 1.2.
|
|
3
|
+
Version: 1.2.110
|
|
4
4
|
Summary: boost — Homebrew for AI coding skills
|
|
5
5
|
Author: Jonathan Reyes
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -217,8 +217,11 @@ refused rather than silently picking one.
|
|
|
217
217
|
|
|
218
218
|
Because vectors are keyed to a registry's commit, `quickstart` **pins** each tap
|
|
219
219
|
it fetches vectors for, and `boost update` skips a pinned tap rather than moving
|
|
220
|
-
it out from under them (`--force` moves it anyway and drops the pin).
|
|
221
|
-
|
|
220
|
+
it out from under them (`--force` moves it anyway and drops the pin). A pinned
|
|
221
|
+
tap with *no* clone is not skipped — there is nothing to hold still, so it is
|
|
222
|
+
cloned and checked out at its pin; if that pin cannot be reached the clone is
|
|
223
|
+
removed rather than left on HEAD with a pin that no longer describes it, and
|
|
224
|
+
`compact --reclone` follows the same rule. When a tap does move, boost checks whether a newer shard exists for the new commit and
|
|
222
225
|
imports it; if none does, it says so instead of leaving stale vectors looking
|
|
223
226
|
fresh. `boost search` never refreshes taps behind your back, and never checks
|
|
224
227
|
the manifest either — acting on that answer means moving taps and downloading
|
|
@@ -175,8 +175,11 @@ refused rather than silently picking one.
|
|
|
175
175
|
|
|
176
176
|
Because vectors are keyed to a registry's commit, `quickstart` **pins** each tap
|
|
177
177
|
it fetches vectors for, and `boost update` skips a pinned tap rather than moving
|
|
178
|
-
it out from under them (`--force` moves it anyway and drops the pin).
|
|
179
|
-
|
|
178
|
+
it out from under them (`--force` moves it anyway and drops the pin). A pinned
|
|
179
|
+
tap with *no* clone is not skipped — there is nothing to hold still, so it is
|
|
180
|
+
cloned and checked out at its pin; if that pin cannot be reached the clone is
|
|
181
|
+
removed rather than left on HEAD with a pin that no longer describes it, and
|
|
182
|
+
`compact --reclone` follows the same rule. When a tap does move, boost checks whether a newer shard exists for the new commit and
|
|
180
183
|
imports it; if none does, it says so instead of leaving stale vectors looking
|
|
181
184
|
fresh. `boost search` never refreshes taps behind your back, and never checks
|
|
182
185
|
the manifest either — acting on that answer means moving taps and downloading
|
|
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
|
|
|
18
18
|
commit_id: str | None
|
|
19
19
|
__commit_id__: str | None
|
|
20
20
|
|
|
21
|
-
__version__ = version = '1.2.
|
|
22
|
-
__version_tuple__ = version_tuple = (1, 2,
|
|
21
|
+
__version__ = version = '1.2.110'
|
|
22
|
+
__version_tuple__ = version_tuple = (1, 2, 110)
|
|
23
23
|
|
|
24
24
|
__commit_id__ = commit_id = None
|
|
@@ -370,9 +370,26 @@ def cmd_compact(argv) -> int:
|
|
|
370
370
|
# other — nothing about `--reclone` consults the pin — so
|
|
371
371
|
# without this the clone silently lands on HEAD while
|
|
372
372
|
# config.json, the catalog cache and `boost taps` keep
|
|
373
|
-
# naming the old commit.
|
|
374
|
-
|
|
375
|
-
|
|
373
|
+
# naming the old commit.
|
|
374
|
+
try:
|
|
375
|
+
gitutil.checkout_commit(tap.path, tap.pin)
|
|
376
|
+
except BoostError:
|
|
377
|
+
# `--reclone` removed the clone before making this
|
|
378
|
+
# one, so the pinned tree is already gone and there is
|
|
379
|
+
# nothing to fall back to. Letting the `except` below
|
|
380
|
+
# warn and carry on would leave a clone sitting on
|
|
381
|
+
# HEAD with the old pin still recorded beside it, and
|
|
382
|
+
# the next `update` reads `is_cloned` true plus a pin
|
|
383
|
+
# and answers "pinned at <sha> (skipped)" — forever,
|
|
384
|
+
# for a tree that is not on that commit. Remove it
|
|
385
|
+
# instead: `doctor` names a tap with no clone (`! tap
|
|
386
|
+
# <x> not cloned`, exit 1) and `update` re-clones it
|
|
387
|
+
# back onto its pin, so the tap ends in a state
|
|
388
|
+
# something reports and something repairs.
|
|
389
|
+
# `registry.update` takes the same exit on the same
|
|
390
|
+
# failure; this is the path that gets there first.
|
|
391
|
+
util.rmtree(tap.path)
|
|
392
|
+
raise
|
|
376
393
|
# The re-clone can change what's on disk even when the byte
|
|
377
394
|
# count doesn't (a pinned tap's tree is identical, but the
|
|
378
395
|
# cache's recorded commit and mtime are now stale either way).
|
|
@@ -578,15 +578,30 @@ def cmd_reindex(argv):
|
|
|
578
578
|
# and the count above reads exactly as it does for a full corpus. Say what
|
|
579
579
|
# the index actually holds, in the share of TEXT rather than of documents —
|
|
580
580
|
# a document share reads 100% until it reads 0%.
|
|
581
|
+
#
|
|
582
|
+
# The share quoted is of the tokens THIS INDEX holds, and the sentence says
|
|
583
|
+
# so. It used to read "this index holds N% of the searchable text", which
|
|
584
|
+
# is a share of the corpus — a number nothing here can compute, because the
|
|
585
|
+
# bodies that were never read have no token count to compare against. Since
|
|
586
|
+
# a body runs about an order of magnitude longer than the metadata standing
|
|
587
|
+
# in for it, that reading overstated badly in exactly the partly-cloned case
|
|
588
|
+
# this warning exists for: a half-cloned index announced itself as 94%
|
|
589
|
+
# complete, and one unreadable file among a thousand rendered as "100.0% of
|
|
590
|
+
# the searchable text" inside a warning about missing text.
|
|
581
591
|
if stats["metadata_only"]:
|
|
582
592
|
share = rag.index_completeness() or {}
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
593
|
+
tokens = share.get("tokens") or 0
|
|
594
|
+
meta_tokens = share.get("metadata_only_tokens") or 0
|
|
595
|
+
# No tokens at all means nothing but metadata got as far as the index,
|
|
596
|
+
# so 100% is the honest reading rather than a division to protect.
|
|
597
|
+
meta_pct = (100.0 * meta_tokens / tokens) if tokens else 100.0
|
|
598
|
+
out.warn("%d of %d indexed items have no body text — their registries "
|
|
599
|
+
"are not cloned here, so only their catalog metadata was "
|
|
600
|
+
"indexed, and that metadata is %.1f%% of everything this "
|
|
601
|
+
"index holds. Clone them with `boost update`, then re-run "
|
|
602
|
+
"`boost reindex --force` to index their bodies."
|
|
603
|
+
% (stats["metadata_only"], stats["docs"], meta_pct),
|
|
604
|
+
wrap=True)
|
|
590
605
|
if args.dense:
|
|
591
606
|
if dense_stats is None:
|
|
592
607
|
out.warn("dense index skipped — %s" % embed.fallback_note(),
|
|
@@ -789,10 +789,21 @@ def index_completeness() -> dict | None:
|
|
|
789
789
|
``body_share`` is a share of **tokens**, not of documents, and that is the
|
|
790
790
|
whole point. An entry whose body is missing still produces a document, so a
|
|
791
791
|
document share sits at 1.0 until the moment it drops to 0.0 and tells a
|
|
792
|
-
partially-cloned machine nothing.
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
792
|
+
partially-cloned machine nothing.
|
|
793
|
+
|
|
794
|
+
It describes **this index**, not the corpus behind it: the fraction of the
|
|
795
|
+
tokens actually indexed that came from a document carrying a body. The
|
|
796
|
+
share of the *corpus's* text that made it in is a different number, and it
|
|
797
|
+
is not computable here — the bodies that were never read have no token
|
|
798
|
+
count to compare against, by construction. An earlier version of this
|
|
799
|
+
docstring claimed the value "reproduces the measurement the roadmap card
|
|
800
|
+
made by hand ... or 6.0% of the searchable text". It does not: for that
|
|
801
|
+
input every token indexed came from metadata, so it returns **0.0**. The
|
|
802
|
+
two move in opposite directions, and because a body runs about an order of
|
|
803
|
+
magnitude longer than the metadata standing in for it, presenting this as
|
|
804
|
+
corpus completeness overstates a half-cloned machine badly. Callers must
|
|
805
|
+
say which share they are quoting; :func:`cmd_reindex` quotes
|
|
806
|
+
``metadata_only_tokens / tokens`` and names it.
|
|
796
807
|
|
|
797
808
|
Reads the persisted totals rather than re-deriving them, so asking is a
|
|
798
809
|
stat plus a cached parse — nothing walks the corpus.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: boost-skill-cli
|
|
3
|
-
Version: 1.2.
|
|
3
|
+
Version: 1.2.110
|
|
4
4
|
Summary: boost — Homebrew for AI coding skills
|
|
5
5
|
Author: Jonathan Reyes
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -217,8 +217,11 @@ refused rather than silently picking one.
|
|
|
217
217
|
|
|
218
218
|
Because vectors are keyed to a registry's commit, `quickstart` **pins** each tap
|
|
219
219
|
it fetches vectors for, and `boost update` skips a pinned tap rather than moving
|
|
220
|
-
it out from under them (`--force` moves it anyway and drops the pin).
|
|
221
|
-
|
|
220
|
+
it out from under them (`--force` moves it anyway and drops the pin). A pinned
|
|
221
|
+
tap with *no* clone is not skipped — there is nothing to hold still, so it is
|
|
222
|
+
cloned and checked out at its pin; if that pin cannot be reached the clone is
|
|
223
|
+
removed rather than left on HEAD with a pin that no longer describes it, and
|
|
224
|
+
`compact --reclone` follows the same rule. When a tap does move, boost checks whether a newer shard exists for the new commit and
|
|
222
225
|
imports it; if none does, it says so instead of leaving stale vectors looking
|
|
223
226
|
fresh. `boost search` never refreshes taps behind your back, and never checks
|
|
224
227
|
the manifest either — acting on that answer means moving taps and downloading
|
|
@@ -207,6 +207,7 @@ docs/roadmap/items/BOOST-D24.md
|
|
|
207
207
|
docs/roadmap/items/BOOST-D25.md
|
|
208
208
|
docs/roadmap/items/BOOST-D26.md
|
|
209
209
|
docs/roadmap/items/BOOST-D27.md
|
|
210
|
+
docs/roadmap/items/a-new-shipped-card-always-404s-its-own-write-up-link.md
|
|
210
211
|
docs/roadmap/items/a11y-sweep-flakes-on-color-contrast.md
|
|
211
212
|
docs/roadmap/items/accessibility-audit-pa11y-ci-axe-core.md
|
|
212
213
|
docs/roadmap/items/actionlint-skips-shellcheck-silently.md
|
|
@@ -357,6 +358,7 @@ docs/roadmap/items/codeql-job-rename-stranded-merge-protection.md
|
|
|
357
358
|
docs/roadmap/items/cold-search-reads-the-whole-catalogue.md
|
|
358
359
|
docs/roadmap/items/command-carousel-page.md
|
|
359
360
|
docs/roadmap/items/command-reference-docs-site.md
|
|
361
|
+
docs/roadmap/items/compact-answers-a-named-tap-with-a-global-all-clear.md
|
|
360
362
|
docs/roadmap/items/completions-complete-only-command-names.md
|
|
361
363
|
docs/roadmap/items/completions-install-could-eat-your-rc-file.md
|
|
362
364
|
docs/roadmap/items/complexity-and-dead-code-radar-xenon-vulture.md
|
|
@@ -455,6 +457,7 @@ docs/roadmap/items/langchain-retriever-metadata-and-k-floor.md
|
|
|
455
457
|
docs/roadmap/items/layering-guard-import-linter.md
|
|
456
458
|
docs/roadmap/items/license-compliance-scanning.md
|
|
457
459
|
docs/roadmap/items/lighthouse-ci-on-the-pages-site.md
|
|
460
|
+
docs/roadmap/items/lighthouse-flips-on-byte-identical-input.md
|
|
458
461
|
docs/roadmap/items/lighthouse-scored-a-page-nobody-is-served.md
|
|
459
462
|
docs/roadmap/items/lint-tap-misscopes-rule-workflow-entries.md
|
|
460
463
|
docs/roadmap/items/list-rules-and-workflows.md
|
|
@@ -548,10 +551,12 @@ docs/roadmap/items/ranx-significance-monitor.md
|
|
|
548
551
|
docs/roadmap/items/readme-81-command-table-lists-80-omits-quickstart.md
|
|
549
552
|
docs/roadmap/items/readme-hero-installs-a-name-no-starter-registry-ships.md
|
|
550
553
|
docs/roadmap/items/readme-prune-and-search-guide.md
|
|
554
|
+
docs/roadmap/items/reclone-leaves-a-clone-on-head-when-it-cannot-reach-the-pin.md
|
|
551
555
|
docs/roadmap/items/recommend-recomputes-its-columns-per-row.md
|
|
552
556
|
docs/roadmap/items/reconcile-the-theme-drift.md
|
|
553
557
|
docs/roadmap/items/refresh-strands-the-natural-set-baseline.md
|
|
554
558
|
docs/roadmap/items/refresh-the-marketing-surface.md
|
|
559
|
+
docs/roadmap/items/reindex-reported-a-completeness-share-it-could-not-compute.md
|
|
555
560
|
docs/roadmap/items/rel-time-tests-race-the-wall-clock.md
|
|
556
561
|
docs/roadmap/items/release-verifies-the-wrong-commit.md
|
|
557
562
|
docs/roadmap/items/relicence-apache-2.md
|
|
@@ -624,6 +629,7 @@ docs/roadmap/items/sync-reported-success-for-a-link-it-refused.md
|
|
|
624
629
|
docs/roadmap/items/table-fit-widths-floor-destroys-columns-and-still-overflows.md
|
|
625
630
|
docs/roadmap/items/tap-signing-and-provenance-sigstore-minisign.md
|
|
626
631
|
docs/roadmap/items/taps-check-out-freight-they-never-index.md
|
|
632
|
+
docs/roadmap/items/taps-vouches-for-a-clone-that-is-not-there.md
|
|
627
633
|
docs/roadmap/items/the-catalogue-advertised-repos-that-no-longer-exist.md
|
|
628
634
|
docs/roadmap/items/the-scale-corpus-refreshed-the-wrong-rows.md
|
|
629
635
|
docs/roadmap/items/the-shard-job-that-could-not-finish.md
|
boost_skill_cli-1.2.110/docs/roadmap/items/a-new-shipped-card-always-404s-its-own-write-up-link.md
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: a-new-shipped-card-always-404s-its-own-write-up-link
|
|
3
|
+
board: code
|
|
4
|
+
section: pipeline
|
|
5
|
+
status: planned
|
|
6
|
+
category: CI · Bug
|
|
7
|
+
complexity: S
|
|
8
|
+
impact: Medium
|
|
9
|
+
wow: 3
|
|
10
|
+
note: the links check goes red on every correct PR that files a new card as shipped, and green again on merge
|
|
11
|
+
order: 313
|
|
12
|
+
owner:
|
|
13
|
+
pr:
|
|
14
|
+
title: "A new card filed as <code>shipped</code> always 404s its own write-up link"
|
|
15
|
+
---
|
|
16
|
+
<code>build_roadmap.py</code> renders a settled card's body as a link to the item file on
|
|
17
|
+
<b><code>main</code></b> — <code>ITEMS_URL</code> (line 206) is
|
|
18
|
+
<code>https://github.com/jonnyeclectic/boost/blob/main/docs/roadmap/items</code>, and
|
|
19
|
+
<code>_body_html</code> emits it for any status in <code>_SETTLED</code>. The
|
|
20
|
+
<code>links</code> job runs on <code>pull_request</code> over
|
|
21
|
+
<code>docs/*.html</code>. So a PR that files a <em>new</em> card at
|
|
22
|
+
<code>status: shipped</code> renders a link to a file that does not exist on
|
|
23
|
+
<code>main</code> yet, and lychee rejects it 404 — on a PR where nothing is wrong.
|
|
24
|
+
It goes green by itself the moment the PR merges.
|
|
25
|
+
|
|
26
|
+
Observed on PR <code>#845</code>, whose 22 required checks were all green:
|
|
27
|
+
<em>“[404] <…/blob/main/docs/roadmap/items/reclone-leaves-a-clone-on-head-when-it-cannot-reach-the-pin.md> (at 4125:54) | Rejected status code: 404 Not Found”</em>.
|
|
28
|
+
The mechanism is deterministic from the three sources above rather than inferred from that
|
|
29
|
+
one run: any new item file whose first committed status is settled hits it. Cards that were
|
|
30
|
+
already on <code>main</code> and merely change status do not, which is why this went
|
|
31
|
+
unnoticed — the usual shape is claim-then-ship across two PRs.
|
|
32
|
+
|
|
33
|
+
It matters because the remedy people reach for is the wrong one: either the card gets
|
|
34
|
+
filed at a status that misdescribes it to keep CI quiet, or a check that is right about
|
|
35
|
+
everything else gets learned as noise. <code>links</code> is advisory rather than
|
|
36
|
+
required, which caps the damage and is also what lets it rot unnoticed. Options, cheapest
|
|
37
|
+
first: resolve the link against the <em>head</em> ref in CI
|
|
38
|
+
(<code>GITHUB_HEAD_REF</code>) and <code>main</code> elsewhere; or let lychee treat a
|
|
39
|
+
<code>blob/main</code> URL whose path exists in the working tree as satisfied; or link the
|
|
40
|
+
raw file relatively and accept that GitHub Pages serves <code>.md</code> as a download
|
|
41
|
+
rather than rendered Markdown — which is the reason the absolute URL was chosen, so
|
|
42
|
+
that one is a trade, not a fix.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
id: audit-ai-degrade-note-blames-path-api-keys-regardless-of-cause-sev
|
|
3
3
|
board: code
|
|
4
4
|
section: dx
|
|
5
|
-
status:
|
|
5
|
+
status: shipped
|
|
6
6
|
category: CLI · UX
|
|
7
7
|
complexity: M
|
|
8
8
|
impact: Med
|
|
@@ -10,7 +10,7 @@ wow: 2
|
|
|
10
10
|
note: fix implemented and unit/functional/smoke-tested locally; mutation/eval/full-lint gates unverified — this session had no PyPI/network egress to run them, PR relies on CI
|
|
11
11
|
order: 223
|
|
12
12
|
owner: loop/ai-fallback-attribution
|
|
13
|
-
pr:
|
|
13
|
+
pr: 760
|
|
14
14
|
title: "AI degrade note blames PATH/API keys regardless of cause; several commands fall back with no note at all"
|
|
15
15
|
---
|
|
16
16
|
<code>boost simulate</code> prints <code>! AI features need one of `claude` or `gemini` on PATH, or ANTHROPIC_API_KEY set — using the heuristic fallback</code> in two situations where that diagnosis is false: under <code>BOOST_NO_AI=1</code> with <code>claude</code> on PATH (AI was disabled by env, not missing), and with AI enabled while <code>~/.boost/logs/boost.log</code> records <code>ai: claude CLI call failed: exit 1: …workspace has not been trusted…</code> — the backend ran and failed. A controlled fake <code>claude</code> exiting 3 reproduces the same misblame for <code>evolve</code>. Meanwhile a second group degrades with <b>no note at all</b> when the call was attempted and failed: <code>explain</code> shows the extractive summary with stderr empty, <code>conflict</code> lists pairs as <code>(heuristic)</code> silently, <code>impact</code> and one-shot <code>chat</code> say nothing, and <code>search --smart</code> spent 4.62 s then reported <code>60 matches · ranked by full-content BM25</code> with no rerank-failed warning.
|
{boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-browse-findings.md
RENAMED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
id: audit-browse-findings
|
|
3
3
|
board: code
|
|
4
4
|
section: dx
|
|
5
|
-
status:
|
|
5
|
+
status: shipped
|
|
6
6
|
category: CLI · Bug
|
|
7
7
|
complexity: S
|
|
8
8
|
impact: Med
|
|
@@ -10,7 +10,7 @@ wow: 1
|
|
|
10
10
|
note: both findings fixed in PR; make check unrunnable in the sandbox (no PyPI/apt egress) — CI is the real gate
|
|
11
11
|
order: 251
|
|
12
12
|
owner: loop/browse-plain-fallback
|
|
13
|
-
pr:
|
|
13
|
+
pr: 790
|
|
14
14
|
title: "boost browse: CLI audit findings (2026-08)"
|
|
15
15
|
---
|
|
16
16
|
<b>A curses init failure crashes with a report instead of falling back</b> (cluster
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
id: audit-catalog-resolve-one-s-duplicate-name-hint-advertises-path-to
|
|
3
3
|
board: code
|
|
4
4
|
section: dx
|
|
5
|
-
status:
|
|
5
|
+
status: shipped
|
|
6
6
|
category: CLI · Bug
|
|
7
7
|
complexity: S
|
|
8
8
|
impact: High
|
|
@@ -10,7 +10,7 @@ wow: 1
|
|
|
10
10
|
note: Following the CLI's own hint earns `unrecognized arguments: --path`, exit 2
|
|
11
11
|
order: 215
|
|
12
12
|
owner: loop/resolve-one-path-hint
|
|
13
|
-
pr:
|
|
13
|
+
pr: 655
|
|
14
14
|
title: "<code>catalog.resolve_one</code>'s duplicate-name hint advertises <code>--path</code> to commands that reject it"
|
|
15
15
|
---
|
|
16
16
|
When a name matches two skills inside one tap, every <code>catalog.resolve_one</code> caller prints
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
id: audit-declined-confirms-never-name-y-boost-assume-yes-snapshot-cle
|
|
3
3
|
board: code
|
|
4
4
|
section: dx
|
|
5
|
-
status:
|
|
5
|
+
status: shipped
|
|
6
6
|
category: CLI · UX
|
|
7
7
|
complexity: M
|
|
8
8
|
impact: Med
|
|
@@ -10,7 +10,7 @@ wow: 1
|
|
|
10
10
|
note: implementation lands the full fix; make check's eval/mutation/smoke gates could not run in the claiming sandbox (no PyPI egress) — see PR for what did run
|
|
11
11
|
order: 224
|
|
12
12
|
owner: loop/confirm-bypass-hints
|
|
13
|
-
pr:
|
|
13
|
+
pr: 731
|
|
14
14
|
title: "Declined confirms never name <code>-y</code>/<code>BOOST_ASSUME_YES</code>; snapshot, clean, infer/distill/absorb and sync reject <code>--yes</code>"
|
|
15
15
|
---
|
|
16
16
|
One pattern across seven commands. <code>snapshot restore</code>, piped without <code>BOOST_ASSUME_YES</code>: output is exactly <code> cancelled</code>, exit 0 — no prompt shown, no reason, no bypass named — and <code>snapshot restore ID --yes</code> answers <code>Error: unrecognized arguments: --yes</code> (exit 2). <code>clean --deep --yes</code> hits the same error, and its declined path claims <code>✓ nothing to clean</code> when a snapshot was in fact kept. <code>sync --prune</code> declined tells the user to run <code>boost sync --prune</code> — the command just run. <code>untap</code> and <code>bmad uninstall</code> print bare <code>cancelled</code>/<code>aborted</code> lines (bmad exits 0 with nothing removed); <code>infer -o</code>/<code>distill</code> abort with no hint and reject <code>--yes</code>. <code>BOOST_ASSUME_YES</code> appears in zero command help texts.
|
{boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-install-findings.md
RENAMED
|
@@ -10,7 +10,7 @@ wow: 1
|
|
|
10
10
|
note: "3 of 4 clusters landed; cross-scope-name-block gets a safe refusal, not true coexistence"
|
|
11
11
|
order: 273
|
|
12
12
|
owner: loop/audit-install-findings
|
|
13
|
-
pr:
|
|
13
|
+
pr: 823
|
|
14
14
|
title: "<code>boost install</code>: CLI audit findings (2026-08)"
|
|
15
15
|
---
|
|
16
16
|
<b>Rule/workflow lock entries are name-keyed across scopes</b> <em>(med)</em>. With the
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
id: audit-log-simulate-changelog-headings-echo-the-raw-qualified-argum
|
|
3
3
|
board: code
|
|
4
4
|
section: dx
|
|
5
|
-
status:
|
|
5
|
+
status: shipped
|
|
6
6
|
category: CLI · Polish
|
|
7
7
|
complexity: S
|
|
8
8
|
impact: Low
|
|
@@ -10,7 +10,7 @@ wow: 1
|
|
|
10
10
|
note: "changelog for anthropics/skills:pdf (anthropics/skills) — the tap printed twice"
|
|
11
11
|
order: 243
|
|
12
12
|
owner: loop/qualified-name-headings
|
|
13
|
-
pr:
|
|
13
|
+
pr: 754
|
|
14
14
|
title: "<code>log</code>/<code>simulate</code>/<code>changelog</code> headings echo the raw qualified argument, printing the tap twice"
|
|
15
15
|
---
|
|
16
16
|
Give any of the three a tap-qualified name and the heading repeats the tap. Reproduced verbatim:
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
id: audit-output-wrap-tokens-splits-punctuation-off-backtick-spans-ins
|
|
3
3
|
board: code
|
|
4
4
|
section: dx
|
|
5
|
-
status:
|
|
5
|
+
status: shipped
|
|
6
6
|
category: CLI · Bug
|
|
7
7
|
complexity: S
|
|
8
8
|
impact: Low
|
|
@@ -10,7 +10,7 @@ wow: 1
|
|
|
10
10
|
note: the wrapper rejoins span + ")" with a space; one fix covers doctor, reindex and all help
|
|
11
11
|
order: 240
|
|
12
12
|
owner: loop/wrap-tokens-punctuation
|
|
13
|
-
pr:
|
|
13
|
+
pr: 665
|
|
14
14
|
title: "<code>output._wrap_tokens</code> splits punctuation off backtick spans, inserting a stray space"
|
|
15
15
|
---
|
|
16
16
|
CLAUDE.md's wrap law makes a backtick span one atomic token so pasteable commands survive folding
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
id: audit-pinned-taps-silently-moved-to-head-by-update-re-clone-and-co
|
|
3
3
|
board: code
|
|
4
4
|
section: internals
|
|
5
|
-
status:
|
|
5
|
+
status: shipped
|
|
6
6
|
category: Safety · Bug
|
|
7
7
|
complexity: M
|
|
8
8
|
impact: High
|
|
9
9
|
wow: 2
|
|
10
|
-
note:
|
|
10
|
+
note: three broken paths, three PRs claiming it, and one residual that took a second item to finish
|
|
11
11
|
order: 216
|
|
12
12
|
owner: loop/tap-pin-integrity
|
|
13
13
|
pr: 725
|
|
@@ -43,3 +43,14 @@ size-only report at <code>configuration.py:288-292</code> is what hid the move.
|
|
|
43
43
|
pinned-tap paragraph (lines 176-178) and its <code>compact --reclone</code> line (274); regenerate
|
|
44
44
|
<code>docs/commands.html</code> only if the <code>--force</code> help string changes. Found by the
|
|
45
45
|
2026-08 CLI audit (cluster <code>pinned-tap-integrity</code>); repro in the audit log.
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
<b>Closed 2026-09-10.</b> <code>#725</code> landed the <code>registry.update</code> half
|
|
49
|
+
(both the <code>--force</code> unpin and the re-clone of a pinned tap whose clone had
|
|
50
|
+
vanished, with <code>tests/unit/test_tap_pins.py</code> covering each). The
|
|
51
|
+
<code>compact --reclone</code> half landed in two pieces: the pin checkout, the
|
|
52
|
+
<code>catalog.rebuild_tap</code> and the size-independent report came with
|
|
53
|
+
<code>#725</code>; the unresolvable-pin guard was left behind when three PRs claimed this
|
|
54
|
+
one item and only one could merge, and is its own card —
|
|
55
|
+
<code>reclone-leaves-a-clone-on-head-when-it-cannot-reach-the-pin</code>. All three paths
|
|
56
|
+
named above are now closed, and README's pinned-tap paragraph says what the code does.
|
{boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-preview-findings.md
RENAMED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
id: audit-preview-findings
|
|
3
3
|
board: code
|
|
4
4
|
section: dx
|
|
5
|
-
status:
|
|
5
|
+
status: shipped
|
|
6
6
|
category: CLI · UX
|
|
7
7
|
complexity: S
|
|
8
8
|
impact: Med
|
|
@@ -10,7 +10,7 @@ wow: 1
|
|
|
10
10
|
note: piped preview strips ** with no substitute; at 60 cols 10 lines leak raw markers
|
|
11
11
|
order: 280
|
|
12
12
|
owner: loop/preview-render
|
|
13
|
-
pr:
|
|
13
|
+
pr: 807
|
|
14
14
|
title: "<code>boost preview</code>: CLI audit findings (2026-08)"
|
|
15
15
|
---
|
|
16
16
|
<b>Preview strips markdown markers with no substitute when piped, and leaks raw <code>**</code> when a bold span straddles a wrap boundary.</b> Piped <code>preview brainstorming</code> shows 0 lines containing <code>**</code> where piped <code>cat</code> shows the raw 22 — the markers are removed and no colour replaces them, <code>---</code> prints literally, and a wrapped <code>> quote</code> continuation loses its <code>></code>; neither raw Markdown nor a faithful render. On a TTY at <code>COLUMNS=60</code> the reverse bug: <b>10 lines leak literal <code>**</code></b> (0 at 120 columns) because <code>_render_markdown</code> wraps first and runs <code>_inline</code> per chunk, and <code>out.wrap</code>'s atomic-span protection (<code>output.py:369-390</code>, <code>_CODE_SPAN_RE</code>) covers only backtick spans. Fix per the verified recommendation: in <code>cmd_preview</code> (<code>boost_cli/commands/info.py:614-677</code>) emit the raw body when <code>not sys.stdout.isatty()</code>, mirroring <code>boost cat</code>; and extend the atomic-token handling in <code>out.wrap</code> to treat <code>**…**</code> like a backtick span (or apply <code>_inline</code> before wrapping with bold state carried across chunks). Regenerate <code>docs/commands.html</code>.<br><br><b>The title bar shows <code>v?</code> where <code>info</code>/<code>list</code>/<code>search</code> show 0.0.0 for the same skill.</b> Observed: <code>● ● ● brainstorming · v? · sickn33/antigravity-awesome-skills</code> while <code>info</code> prints <code>version 0.0.0</code> — and verification found it broader than filed: <em>every</em> skill whose SKILL.md omits <code>version:</code> disagrees, installed or not, because <code>cmd_preview</code> reads raw frontmatter while <code>catalog.scan_dir</code> normalises a missing version to "0.0.0" (<code>core/catalog.py:117</code>). The same titlebar line already falls back to the lock/catalog for the <em>tap</em>; version simply missed the pattern. One-line fix at <code>info.py:673</code>: <code>meta.get("version") or (lock or cat or {}).get("version") or "?"</code>, plus a unit test asserting preview and info agree.<br><br>Found by the 2026-08 CLI audit (clusters <code>preview-markdown-render</code>, <code>preview-version-placeholder</code>); repro in the audit log.
|
{boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-profile-findings.md
RENAMED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
id: audit-profile-findings
|
|
3
3
|
board: code
|
|
4
4
|
section: dx
|
|
5
|
-
status:
|
|
5
|
+
status: shipped
|
|
6
6
|
category: CLI · Bug
|
|
7
7
|
complexity: S
|
|
8
8
|
impact: Low
|
|
@@ -10,7 +10,7 @@ wow: 1
|
|
|
10
10
|
note: declined --prune leaves extras fully linked yet still prints "✓ switched"
|
|
11
11
|
order: 281
|
|
12
12
|
owner: loop/profile-use-drift-prune
|
|
13
|
-
pr:
|
|
13
|
+
pr: 820
|
|
14
14
|
title: "<code>boost profile use</code>: CLI audit findings (2026-08)"
|
|
15
15
|
---
|
|
16
16
|
<b><code>profile use</code> omits the version-drift warning <code>diff</code> reports, and a declined <code>--prune</code> still reports a clean switch with extras fully linked.</b> Reproduced: <code>profile diff daily</code> prints <code>~ brainstorming (version differs)</code> but <code>profile use daily</code> says only <code>✓ switched to profile daily</code> — <code>team.py:335</code> discards the <code>_changed</code> tuple element that <code>diff</code> prints at <code>team.py:315-316</code>. Worse, with an extra skill installed and the <code>--prune</code> confirm declined via EOF, the output is <code>kept extras installed</code> then the same unconditional <code>✓ switched to profile daily</code>, and the extra's symlink was confirmed still present in <code>.claude/skills/</code> — the non-prune path would have sidelined it, so the checkmark claims a state the machine is not in.<br><br>Verified fix (<code>boost_cli/commands/team.py:333-367</code>): print a warn line per entry in <code>_changed</code>, mirroring diff's "~ NAME (version differs)" wording; and after a declined <code>--prune</code> confirm either fall through to the sideline/unlink branch or drop the trailing checkmark and say the switch was partial. No flag changes, so no docs regeneration needed.<br><br>Found by the 2026-08 CLI audit (cluster <code>profile-use-drift-prune</code>); repro in the audit log.
|
{boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-pulse-findings.md
RENAMED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
id: audit-pulse-findings
|
|
3
3
|
board: code
|
|
4
4
|
section: dx
|
|
5
|
-
status:
|
|
5
|
+
status: shipped
|
|
6
6
|
category: CLI · UX
|
|
7
7
|
complexity: S
|
|
8
8
|
impact: Med
|
|
@@ -10,7 +10,7 @@ wow: 1
|
|
|
10
10
|
note: "fix implemented + tested; make check's eval/mutation/smoke gates could not run locally (no PyPI egress) — see PR for what did run"
|
|
11
11
|
order: 283
|
|
12
12
|
owner: loop/pulse-who-filtered-empty
|
|
13
|
-
pr:
|
|
13
|
+
pr: 780
|
|
14
14
|
title: "<code>boost pulse</code>: CLI audit findings (2026-08)"
|
|
15
15
|
---
|
|
16
16
|
<b><code>pulse --action</code> and <code>who <name></code> claim "no activity yet" when only the filter is empty.</b> Reproduced with a populated journal: <code>pulse --action nosuch</code> prints <code>○ no activity yet — events appear as you install and manage skills</code> and <code>who nosuchskill-zzz</code> prints <code>○ no journal activity yet — expertise builds as people install, edit, and evolve skills</code> — while <code>pulse.jsonl</code> held 35 events at audit time (23 on re-verification; both matched verbatim). Both commands compute a filtered <code>events</code> list and print the same global empty state when it is empty, with no branch distinguishing filter-empty from journal-empty — so the output asserts a state ("nothing has happened on this machine") that is simply false, and hides that the user's filter value matched nothing.<br><br>Verified fix (<code>boost_cli/commands/team.py:518-522</code> for <code>cmd_pulse</code>, <code>team.py:692-702</code> for <code>cmd_who</code>): when <code>args.action</code> / the skill argument is set and the unfiltered journal is non-empty, print a filter-specific empty state naming the filter value — e.g. <code>○ no events with action "nosuch" (35 events in the journal)</code> — ideally listing the distinct actions present; for <code>who</code>, name the subject and say "not installed" or offer a did-you-mean when the name is close to a known one. Keep the current message only for a truly empty journal. No flag changes, so no docs regeneration needed.<br><br>Found by the 2026-08 CLI audit (cluster <code>filtered-empty-state</code>); repro in the audit log.
|
{boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-replay-findings.md
RENAMED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
id: audit-replay-findings
|
|
3
3
|
board: code
|
|
4
4
|
section: dx
|
|
5
|
-
status:
|
|
5
|
+
status: shipped
|
|
6
6
|
category: CLI · Bug
|
|
7
7
|
complexity: S
|
|
8
8
|
impact: Low
|
|
@@ -10,7 +10,7 @@ wow: 1
|
|
|
10
10
|
note: rollback says "complete" (exit 0) with a skill unrestored, and replans it forever
|
|
11
11
|
order: 288
|
|
12
12
|
owner: loop/replay-audit-findings
|
|
13
|
-
pr:
|
|
13
|
+
pr: 798
|
|
14
14
|
title: "boost replay: CLI audit findings (2026-08)"
|
|
15
15
|
---
|
|
16
16
|
<b><code>replay list</code>'s ID and WHEN describe two different instants on one row.</b> <code>replay list --json</code> after two installs 4 s apart: <code>{"id": "20260831T140213Z", "updated": "2026-08-31T14:02:09Z"}</code>. <code>lockfile.write()</code> (<code>boost_cli/core/lockfile.py:78-99</code>) stamps the history filename with <em>now</em> — the moment the outgoing lock becomes historical — but that snapshot's own <code>updated</code> field was stamped by the <em>previous</em> write, and <code>cmd_replay list</code> (<code>boost_cli/commands/team.py:592</code>) prints the two side by side as if they were one instant; <code>replay show</code> reuses the earlier one. Fix: stamp the history filename with the lock's own <code>updated</code> so the id equals the state time, or relabel the column (e.g. STATE FROM) and note the distinction in <code>replay show</code>'s heading.
|
{boost_skill_cli-1.2.108 → boost_skill_cli-1.2.110}/docs/roadmap/items/audit-run-findings.md
RENAMED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
id: audit-run-findings
|
|
3
3
|
board: code
|
|
4
4
|
section: dx
|
|
5
|
-
status:
|
|
5
|
+
status: shipped
|
|
6
6
|
category: CLI · Bug
|
|
7
7
|
complexity: S
|
|
8
8
|
impact: Low
|
|
@@ -10,7 +10,7 @@ wow: 1
|
|
|
10
10
|
note: the 55-line runner's banner names a command that produces a 9-line file
|
|
11
11
|
order: 289
|
|
12
12
|
owner: loop/run-print-banner
|
|
13
|
-
pr:
|
|
13
|
+
pr: 791
|
|
14
14
|
title: "boost run: CLI audit findings (2026-08)"
|
|
15
15
|
---
|
|
16
16
|
<b><code>run --print</code>'s provenance banner names the wrong command.</b> The first line of the emitted runner reads <code># Generated by `boost adapt brainstorming --to agents-sdk`. Do not edit by hand.</code> — but that command produces a 9-line Agent module, while this is a 55-line runner with <code>_boost_brain</code>, <code>read_file</code>/<code>list_dir</code>/<code>grep</code> tools and <code>Runner.run_sync</code>. The banner's stated purpose is provenance (“Do not edit by hand” — regenerate instead), and the command it names cannot regenerate the file: <code>adapters.render_runner</code> (<code>boost_cli/core/adapters.py:539-562</code>) returns <code>render_agents_sdk(…)</code> plus tools and a main, inheriting the agents-sdk banner from line 267 verbatim. Fix: in <code>render_runner</code>, replace the first line with <code># Generated by `boost run NAME [TARGET] --print`. Do not edit by hand.</code> (including TARGET when given), and add a unit test asserting the runner's banner names <code>boost run</code>. No flag or summary changes, so docs/commands.html needs no regeneration. Found by the 2026-08 CLI audit (cluster <code>run-print-banner</code>); repro in the audit log.
|