boost-skill-cli 1.0.319__tar.gz → 1.0.320__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.0.319/boost_skill_cli.egg-info → boost_skill_cli-1.0.320}/PKG-INFO +1 -1
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/_version.py +2 -2
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/rag.py +40 -16
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320/boost_skill_cli.egg-info}/PKG-INFO +1 -1
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/bm25-index-is-one-json-blob.md +32 -2
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap.html +32 -2
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/eval/baseline.json +8 -8
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_rag.py +22 -5
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/.gitattributes +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/.gitignore +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/.gitleaks.toml +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/.htmlvalidate.json +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/.lighthouserc.json +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/.lycheeignore +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/.markdownlint-cli2.jsonc +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/.pre-commit-config.yaml +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/.stylelintrc.json +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/.vale/styles/boost/Terminology.yml +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/.vale/styles/config/vocabularies/boost/accept.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/.vale.ini +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/CLAUDE.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/CODE_OF_CONDUCT.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/CONTRIBUTING.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/LICENSE +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/MANIFEST.in +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/Makefile +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/README.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/SECURITY.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/__init__.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/__main__.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/cli.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/cliparse.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/commands/__init__.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/commands/_common.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/commands/bmad.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/commands/configuration.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/commands/discovery.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/commands/hooks.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/commands/info.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/commands/intelligence.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/commands/pkg.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/commands/quality.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/commands/run.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/commands/safety.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/commands/taps.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/commands/team.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/__init__.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/adapters.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/agents.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/ai.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/capabilities.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/catalog.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/claude_settings.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/config.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/dense.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/ed25519.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/embed.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/faithfulness.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/frontmatter.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/gitutil.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/imperative.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/injectscan.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/installscan.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/integrity.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/journal.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/localembed.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/lockfile.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/logs.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/mcp.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/mcpdecl.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/mcphost.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/minisign.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/nethttp.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/output.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/paths.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/policy.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/projectlock.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/provenance.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/registry.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/resolve.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/rules.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/scopes.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/secretscan.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/selfupdate.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/serve.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/stackprobe.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/staleness.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/store.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/trustaudit.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/typosquat.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/updatediff.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/util.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/core/workflows.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/data/registries.json +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/errors.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_cli/spin.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_skill_cli.egg-info/SOURCES.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_skill_cli.egg-info/dependency_links.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_skill_cli.egg-info/entry_points.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_skill_cli.egg-info/requires.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_skill_cli.egg-info/top_level.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/codecov.yml +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/.claude/settings.local.json +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/DEBUGGING.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/adapters.html +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/architecture/README.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/architecture/c4-components-core.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/architecture/c4-containers.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/architecture/c4-context.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/architecture/c4-dynamic-install.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/carousel/gifs/distill.gif +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/carousel/gifs/doctor.gif +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/carousel/gifs/explain.gif +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/carousel/gifs/hooks.gif +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/carousel/gifs/install.gif +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/carousel/gifs/pulse.gif +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/carousel/gifs/search.gif +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/carousel/gifs/tap.gif +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/carousel/tapes/distill.tape +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/carousel/tapes/doctor.tape +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/carousel/tapes/explain.tape +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/carousel/tapes/hooks.tape +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/carousel/tapes/install.tape +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/carousel/tapes/pulse.tape +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/carousel/tapes/search.tape +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/carousel/tapes/tap.tape +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/carousel.html +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/commands.html +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/demo.gif +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/demo.tape +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/design-roadmap.html +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/eval.html +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/index.html +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/mcp-hub.html +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/rag-architecture.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D01.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D02.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D03.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D04.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D05.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D06.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D07.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D08.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D09.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D10.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D11.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D12.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D13.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D14.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D15.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D16.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D17.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D18.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D19.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D20.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D21.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D22.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D23.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D24.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D25.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/BOOST-D26.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/accessibility-audit-pa11y-ci-axe-core.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/actionlint-skips-shellcheck-silently.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/adapter-conformance-langgraph-leg-never-ran.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/ai-bridge-silent-failure-logging.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/ambiguous-tap-short-name-resolution.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/atomic-corruption-safe-lock-file-writes.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/atomic-skill-install-temp-dir-swap.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/autonomous-ship-workflow-and-isolated-worktree.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/boost-run-live-agents.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/bring-commands-under-mutation-testing.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/broken-link-and-anchor-checking-lychee.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/browse-crashes-selecting-a-rule-or-workflow.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/build-provenance-slsa-attestations.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/cache-the-catalog-entry-set-across-rag-queries.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/capability-manifest-and-least-privilege-policy.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/ci-job-timeout-minutes.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/ci-summary-step-fails-itself.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/ci-time-is-now-runner-queueing.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/clean-env-install-smoke-pip-and-pipx.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/code-scanning-rule-can-be-restored.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/codeql-job-rename-stranded-merge-protection.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/command-carousel-page.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/command-reference-docs-site.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/complexity-and-dead-code-radar-xenon-vulture.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/consolidate-skill-staleness-drift-logic-into-cor.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/coverage-dashboard-codecov-free-for-oss.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/coverage-guided-fuzzing-atheris-oss-fuzz.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/crash-listing-branch-untested.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/crash-recorder-error-paths-core-logs-py.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/demo-cannot-open-its-own-pr.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/demo-gif-workflow-has-never-succeeded.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/dense-search-fallback-and-stale-tap-pruning.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/dependabot-missing-pip-ecosystem.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/dependabot-regeneration-drops-platform-pins.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/dependabot-root-pip-entry-duplicates-requirements.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/dependency-cve-gate-pip-audit.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/docsite-chrome-and-content-audit.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/docstring-coverage-interrogate.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/doctor-checks-rules-and-workflows.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/end-of-options-guard-on-git-commands.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/eval-corpus-cannot-see-real-retrieval.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/extension-free-tests-core-dense-py.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/extract-mcp-http-servers-out-of-configuration-py.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/finish-mutation-hardening-across-core.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/fix-self-update-version-detection-dead-branch.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/fork-safe-network-proxy-handler.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/framework-adapter-langgraph.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/framework-adapter-multi-agent.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/framework-adapters-boost-adapt.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/frontmatter-scalar-over-coercion.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/gemini-cli-agent-target.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/github-community-health-files.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/github-pages-deploy-is-broken-every-push.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/golden-set-statistical-power.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/hash-pinned-reproducible-toolchain-uv-lock.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/html-validation-html-validate.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/install-docs-never-mentioned-upgrading.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/install-from-path-bypasses-policy-and-pin-checks.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/install-resolves-skill-dependencies.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/install-scope-user-or-project.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/installed-skill-trust-audit.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/integrity-verification-boost-verify.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/internal-architecture-diagrams.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/invocation-pid-logging-for-crash-correlation.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/journal-rotation-race-and-handle-leak.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/keyless-dense-tier-local-static-embeddings.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/keyless-semantic-search-for-everyone.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/layering-guard-import-linter.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/license-compliance-scanning.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/lighthouse-ci-on-the-pages-site.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/lint-tap-misscopes-rule-workflow-entries.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/list-rules-and-workflows.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/localize-the-stored-bm25-snippet.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/lock-invariant-cannot-parse-extras-pins.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/lockfile-enforcement-and-commit-pinning.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/log-timestamps-mislabeled-utc.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/lowest-version-resolution-uv-resolution-lowest-d.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/main-has-no-branch-protection.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/main-ruleset-ref-pattern-has-literal-quotes.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/make-lint-masks-actionlint-failures.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/make-the-roadmaps-discoverable.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/markdown-consistency-markdownlint-cli2.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/markdownlint-lints-the-fuzz-corpus.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/mcp-aware-skills.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/mcp-check-skills-before-starting-a-task.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/mcp-hub-diagram-node-text-overflow.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/mcp-install-skips-the-injection-scan.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/mcp-launch-objc-fork-safety.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/mcp-one-benefit-nameable-task.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/mcp-register-names-server-before-env.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/mcp-search-before-reinventing.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/mcp-servers-ignore-install-scope.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/mcp-startup-self-harden-fork-safety.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/memoize-config-load-in-process.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/merge-queue-would-deadlock-most-required-checks.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/merged-loop-branches-are-never-pruned.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/modernization-smells-refurb-pyupgrade.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/mutation-gate-was-the-whole-critical-path.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/mutation-hardening-core-frontmatter-py.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/mutation-hardening-core-gitutil-py.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/mutation-hardening-core-store-py.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/mutation-shard-floor-is-one-file.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/mypy-strict-mode-for-commands.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/near-duplicate-items-eat-the-result-slots.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/negative-limit-inverts-log-pulse-output.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/onboard-overwrites-generated-files-without-confirm.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/one-command-every-env-nox.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/one-commit-can-cut-two-releases.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/one-shared-atomic-write-helper.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/package-metadata-validation-twine-check-friends.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/patch-coverage-gate-diff-cover.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/path-traversal-unsanitized-rule-workflow-name.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/performance-regression-gate-pytest-benchmark.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/pin-the-lint-toolchain.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/post-deploy-always-defeated-by-skipped-setup.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/post-deploy-smoke-headless-load-check.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/pre-release-python-canary-3-14t-free-threaded.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/prerequisites-and-semantic-search-setup.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/project-scope-across-every-command.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/project-scope-symlink-escape-on-write.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/promote-nav-footer-into-the-shared-style-system.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/prompt-injection-scanning-of-skill-markdown.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/property-based-tests-hypothesis-on-the-parsers.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/prose-and-terminology-linting-vale.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/prune-ignored-dirs-during-scan-dir-walk.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/publish-gate-ignores-pip-audit-and-metadata.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/publish-trigger-was-reachable-from-a-fork.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/pytest-tmpdir-cve-blocked-by-py39-floor.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/quality-dashboard-sonarcloud-free-for-oss.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/ranx-significance-monitor.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/reconcile-the-theme-drift.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/refresh-the-marketing-surface.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/rel-time-tests-race-the-wall-clock.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/release-verifies-the-wrong-commit.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/required-checks-can-declare-a-check-that-deadlocks-prs.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/required-checks-config-drift.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/retrieval-quality-eval-harness.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/reuse-helpers-kill-minor-dead-work.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/roadmap-html-goes-stale-on-every-rebase.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/robust-tag-argument-parsing.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/ruff-016-widens-the-default-rule-set.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/rule-install-native-materialization.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/runner-egress-monitoring-stepsecurity-harden-run.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/runtime-explain-faithfulness-guardrail.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/sbom-aware-scanning-osv-scanner.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/sbom-declares-the-wrong-version.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/sbom-on-every-release-cyclonedx-syft.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/sbom-release-event-never-fires.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/scan-and-sync-rules-and-workflows.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/scheduled-toolchain-lock-regeneration.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/scorecard-findings-triage.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/second-type-checker-pyright.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/secret-and-pii-scanning-of-installed-skills.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/secret-scanning-gitleaks-push-protection.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/security-linting-bandit-via-ruff-s-rules.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/self-update-broken-for-pip-pipx-installs.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/serve-py-traversal-guards-untested.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/shift-left-gate-pre-commit-pre-commit-ci.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/single-imperative-rule-extractor.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/single-tech-stack-prober.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/split-oversized-command-modules.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/startup-and-import-time-budget-x-importtime.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/stop-re-serializing-entry-meta-on-every-search.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/structured-json-log-output-mode.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/supply-chain-posture-openssf-scorecard.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/surface-every-docs-page-from-the-guide.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/sync-deletes-unowned-broken-symlinks.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/sync-relinks-into-every-agent-ignoring-scope.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/tap-signing-and-provenance-sigstore-minisign.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/theme-asset-linting-stylelint-eslint.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/typo-detection-codespell.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/typosquat-and-name-confusion-detection.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/unify-tilde-two-copies-have-a-boundary-bug.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/uninstall-has-no-confirmation-prompt.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/untrack-generated-build-noise.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/update-diff-before-apply.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/update-refreshes-rules-and-workflows.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/update-reinstall-widens-agent-scope.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/visual-regression-pass-on-the-guide.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/widen-the-ruff-rule-surface-b-sim-c4-perf-ruf.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/windows-in-the-ci-matrix.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/wire-bdd-suite-into-ci.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/workflow-install-native-materialization.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/workflow-linting-actionlint.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/workflow-sast-zizmor.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/workspace-scope-install.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/docs/roadmap/items/zizmor-pin-is-a-yanked-release.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/eslint.config.mjs +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/evals/README.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/evals/__init__.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/evals/baseline.json +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/evals/faithfulness.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/evals/golden_set.json +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/evals/make_corpus.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/evals/make_golden.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/evals/metrics.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/evals/run_evals.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/examples/README.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/examples/adapt-demo.sh +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/examples/boost-run-prototype.sh +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/index.html +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/noxfile.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/pyproject.toml +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/requirements/coverage-tools.in +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/requirements/coverage-tools.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/requirements/lint-tools.in +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/requirements/lint-tools.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/requirements/mutation-tools.in +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/requirements/mutation-tools.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/requirements/platform-pins.lock +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/requirements/release-tools.in +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/requirements/release-tools.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/requirements/test-tools.in +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/requirements/test-tools.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/a11y_check.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/bench_cli.sh +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/build_command_reference.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/build_registries.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/build_roadmap.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/check_anchors.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/check_licenses.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/check_required_checks.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/ensure_eval_corpus.sh +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/eval_explain.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/eval_gate.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/eval_recommend.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/eval_retrieval.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/eval_stats_summary.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/import_budget.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/lock_toolchain.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/mutation_gate.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/mutation_shards.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/mutation_weights.json +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/perf_gate.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/post_deploy_smoke.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/release_guard.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/scripts/release_preflight.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/setup.cfg +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/sonar-project.properties +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/style/README.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/style/boost.css +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/style/boost.js +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/style/demo.html +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/bdd/features/adapt.feature +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/bdd/features/browse.feature +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/bdd/features/count.feature +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/bdd/features/discover.feature +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/bdd/features/doctor.feature +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/bdd/features/environment.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/bdd/features/explain.feature +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/bdd/features/index.feature +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/bdd/features/install.feature +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/bdd/features/list.feature +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/bdd/features/mcp.feature +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/bdd/features/search.feature +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/bdd/features/steps/cli_steps.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/bdd/features/steps/discovery_steps.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/bdd/features/steps/mcp_steps.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/bdd/features/steps/quality_steps.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/conftest.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/eval/explain.jsonl +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/eval/golden-natural.jsonl +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/eval/golden.jsonl +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/eval/recommend.jsonl +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/eval/taps.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/functional/test_capabilities_policy.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/functional/test_cli_adapt.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/functional/test_cli_bmad.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/functional/test_cli_configuration.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/functional/test_cli_discovery.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/functional/test_cli_hooks.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/functional/test_cli_info.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/functional/test_cli_intelligence.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/functional/test_cli_pkg.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/functional/test_cli_quality.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/functional/test_cli_taps.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/functional/test_cli_team.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/functional/test_everyday_loop.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/functional/test_integrity_enforce.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/functional/test_property_parsers.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/functional/test_run.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/functional/test_tap_signing.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/functional/test_workspace_scope.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/README.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/frontmatter/01-typical.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/frontmatter/02-lossy-version.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/frontmatter/03-lossy-numbers.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/frontmatter/04-lists.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/frontmatter/05-nested.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/frontmatter/06-empty-block.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/frontmatter/07-unterminated.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/frontmatter/08-none.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/frontmatter/09-unbalanced-quote.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/frontmatter/10-keywords.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/frontmatter/11-crlf.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/frontmatter/12-bom.md +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/registry/01-shorthand.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/registry/02-https.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/registry/03-ssh.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/registry/04-traversal.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/registry/05-empty.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/registry/06-space.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/registry/07-slash.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/corpus/registry/08-bare-host.txt +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/fuzz_frontmatter.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/fuzz/fuzz_registry.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/make_fixture.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/perf/test_benchmarks.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/smoke.sh +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_a11y_check.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_adapters.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_adapters_multi.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_adapters_runner.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_agents.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_ai.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_capabilities.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_catalog.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_check_anchors.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_check_licenses.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_claude_settings.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_cliparse.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_codeql_analysis_key.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_command_reference_fresh.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_community_health_files.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_config.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_dense.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_dense_fallback.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_dense_fix_hint.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_dense_status.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_dependabot_config.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_docs_pages_linked.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_docsite_chrome.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_ed25519.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_embed.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_embed_local.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_entry_key.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_errors_and_cli_table.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_eval_baseline.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_eval_faithfulness.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_eval_gate.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_eval_metrics.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_eval_stats_summary.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_faithfulness.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_frontmatter.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_fuzz_targets.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_gitleaks_config.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_gitutil.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_imperative.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_import_budget.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_injectscan.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_installscan.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_integrity.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_journal.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_localembed.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_lockfile.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_logs.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_marketing_counts.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_mcp.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_mcp_install_scan.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_mcpdecl.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_mcphost.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_minisign.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_mutation_hardening.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_mutation_shards.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_mutation_subfile_shards.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_mutmut_source_paths.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_nethttp.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_output.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_paths.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_perf_gate.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_pkg_confusions.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_pkg_injection.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_pkg_secrets.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_platform_pins.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_policy.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_post_deploy_smoke.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_project_mcp_sidecar.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_projectlock.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_provenance.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_rag_fusion.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_registries_fresh.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_registry.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_registry_categories.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_release_guard.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_release_preflight.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_required_checks.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_resolve.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_roadmap_fresh.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_rules.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_scopes.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_secretscan.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_selfupdate.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_serve.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_spin.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_stackprobe.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_staleness.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_store.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_token_parity.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_toolchain_lock.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_trustaudit.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_typosquat.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_updatediff.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_util.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_version.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_workflow_concurrency.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_workflow_timeouts.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/unit/test_workflows.py +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/visual/a11y_check.mjs +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/visual/console_check.mjs +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/visual/package-lock.json +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/visual/package.json +0 -0
- {boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/tests/visual/visual_check.mjs +0 -0
|
@@ -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.0.
|
|
22
|
-
__version_tuple__ = version_tuple = (1, 0,
|
|
21
|
+
__version__ = version = '1.0.320'
|
|
22
|
+
__version_tuple__ = version_tuple = (1, 0, 320)
|
|
23
23
|
|
|
24
24
|
__commit_id__ = commit_id = None
|
|
@@ -33,7 +33,7 @@ from . import ai, catalog, frontmatter, gitutil, paths, registry, util
|
|
|
33
33
|
# v2: `snip` stores a larger head of the matched chunk (not just SNIP_WIDTH
|
|
34
34
|
# chars) so `retrieve` can window it onto the query terms; bump forces a
|
|
35
35
|
# one-time reindex.
|
|
36
|
-
INDEX_VERSION =
|
|
36
|
+
INDEX_VERSION = 4
|
|
37
37
|
ENGINE = "bm25"
|
|
38
38
|
|
|
39
39
|
# Chunking defaults (documented in docs/rag-architecture.md §4).
|
|
@@ -162,25 +162,49 @@ def index_path() -> Path:
|
|
|
162
162
|
return paths.cache_dir() / "rag_index.json"
|
|
163
163
|
|
|
164
164
|
|
|
165
|
+
def surface(entry: dict) -> str:
|
|
166
|
+
"""The item's own identifying text, indexed alongside its body.
|
|
167
|
+
|
|
168
|
+
A chunked index got name matching for free: the name sat in whichever chunk
|
|
169
|
+
happened to contain it. One document per entry has to state it, and the
|
|
170
|
+
de-hyphenated form matters because `tokenize` does not split on hyphens —
|
|
171
|
+
without it the query "code reviewer" cannot match the item `code-reviewer`.
|
|
172
|
+
"""
|
|
173
|
+
name = entry.get("name", "")
|
|
174
|
+
return " ".join([name, name.replace("-", " ").replace("_", " "),
|
|
175
|
+
entry.get("description") or ""])
|
|
176
|
+
|
|
177
|
+
|
|
165
178
|
def _make_docs(entries: List[dict], tap_paths: Dict[str, Path]) -> List[dict]:
|
|
166
|
-
"""
|
|
179
|
+
"""Tokenize every entry into ONE scored document.
|
|
180
|
+
|
|
181
|
+
Chunking cost far more than it bought. Each 1000-char window carried its own
|
|
182
|
+
copy of the shared per-doc fields and its own `snip`, which is how a 743-entry
|
|
183
|
+
corpus became 3,740 documents and how the roadmap item measured a real
|
|
184
|
+
83-tap install at 132 MB and 8-13 s of `json.loads` on *every cold search* —
|
|
185
|
+
against 31-70 ms of actual BM25 scoring.
|
|
186
|
+
|
|
187
|
+
The one thing chunking genuinely provided was locality: a term only had to
|
|
188
|
+
beat the length normalisation of its own window, not of an entire long
|
|
189
|
+
document. BM25's `b` parameter already handles that, and `retrieve` was
|
|
190
|
+
collapsing chunks back to one hit per entry anyway (max score across
|
|
191
|
+
chunks), so the extra documents were discarded at query time.
|
|
192
|
+
"""
|
|
167
193
|
docs: List[dict] = []
|
|
168
194
|
for e in entries:
|
|
169
195
|
body = read_body(e, tap_paths)
|
|
170
|
-
|
|
171
|
-
for
|
|
172
|
-
tf
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
"tf": dict(tf), # noqa: FURB123 tf is a defaultdict; .copy() would keep the factory
|
|
183
|
-
})
|
|
196
|
+
tf: Dict[str, int] = defaultdict(int)
|
|
197
|
+
for tok in tokenize(surface(e) + "\n" + body):
|
|
198
|
+
tf[tok] += 1
|
|
199
|
+
if not tf:
|
|
200
|
+
continue
|
|
201
|
+
docs.append({
|
|
202
|
+
"n": e["name"], "t": e["tap"], "f": e["skill_md"],
|
|
203
|
+
"k": e.get("kind", "skill"),
|
|
204
|
+
"c": 0, "l": sum(tf.values()),
|
|
205
|
+
"snip": body[:SNIP_STORE].strip(), # windowed at retrieve time
|
|
206
|
+
"tf": dict(tf), # noqa: FURB123 tf is a defaultdict; .copy() would keep the factory
|
|
207
|
+
})
|
|
184
208
|
return docs
|
|
185
209
|
|
|
186
210
|
|
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
id: bm25-index-is-one-json-blob
|
|
3
3
|
board: code
|
|
4
4
|
section: pipeline
|
|
5
|
-
status:
|
|
5
|
+
status: inflight
|
|
6
6
|
category: Search · Index
|
|
7
7
|
complexity: L
|
|
8
8
|
impact: High
|
|
9
9
|
wow: 5
|
|
10
10
|
note: 2.5 GB RSS per search at 50k items
|
|
11
11
|
order: 72
|
|
12
|
-
owner:
|
|
12
|
+
owner: loop/unchunked-bm25-index
|
|
13
13
|
pr:
|
|
14
14
|
title: The BM25 index is one JSON blob, and it stops working between 10k and 50k items
|
|
15
15
|
---
|
|
@@ -43,3 +43,33 @@ Also note <code>build()</code>'s incremental path is O(entire corpus): reusing
|
|
|
43
43
|
unchanged taps runs <code>_kept_docs</code> → <code>_postings_to_doc_tf</code>,
|
|
44
44
|
which inverts every posting in the index — measured 35 s and 1.72 GB RSS at
|
|
45
45
|
11.1k entries to reindex a single changed file.
|
|
46
|
+
|
|
47
|
+
<b>Win (1) is shipped, and the “better on every metric” claim did not survive
|
|
48
|
+
re-measurement.</b> On the pinned 6-tap corpus unchunking is a <em>trade</em>, not a free win, and
|
|
49
|
+
which way it falls depends entirely on the shape of the query.
|
|
50
|
+
|
|
51
|
+
On the keyword golden set — which grades items by <b>name</b> — recall@10 fell
|
|
52
|
+
1.000 → <b>0.978</b> and nDCG 0.895 → 0.882, while hit@1 rose 0.780 → <b>0.791</b>.
|
|
53
|
+
On the 50 natural-language queries in <code>golden-natural.jsonl</code>, over identical data, every
|
|
54
|
+
metric improved and not marginally: recall 0.690 → <b>0.750</b>, hit@1 0.240 → <b>0.340</b>,
|
|
55
|
+
MRR 0.382 → 0.474, nDCG 0.446 → 0.524. That +0.100 hit@1 is 5 of 50 queries, which is at
|
|
56
|
+
the edge of what 50 queries can resolve — worth stating rather than rounding up.
|
|
57
|
+
|
|
58
|
+
Index cost on the same corpus: <b>5.3 MB → 2.1 MB</b> and 3,740 documents → 743, one per
|
|
59
|
+
entry, with load time 0.032 s → 0.015 s. The card's headline figures are from an 83-tap install
|
|
60
|
+
where the constant factors are far larger; this is the small-scale confirmation of the same shape,
|
|
61
|
+
not a substitute for it.
|
|
62
|
+
|
|
63
|
+
Chunking's one real contribution was locality — a term only had to beat the length
|
|
64
|
+
normalisation of its own 1000-char window. BM25's <code>b</code> already does that, and
|
|
65
|
+
<code>retrieve</code> collapsed chunks back to one hit per entry regardless, so the extra documents
|
|
66
|
+
were built, stored, re-parsed on every cold search and then discarded. What chunking <em>did</em>
|
|
67
|
+
provide for free was name matching, since the name sat in whichever chunk contained it; one document
|
|
68
|
+
per entry has to state the surface explicitly, so <code>rag.surface</code> indexes the name, its
|
|
69
|
+
de-hyphenated form (<code>tokenize</code> does not split hyphens, so “code reviewer”
|
|
70
|
+
would otherwise never match <code>code-reviewer</code>) and the description alongside the body.
|
|
71
|
+
|
|
72
|
+
<b>Still open:</b> win (2), getting postings out of JSON — the FTS5 probe and the mmap-able
|
|
73
|
+
binary format are both untouched, as is moving <code>snip</code> text off the hot path. So is
|
|
74
|
+
<code>build()</code>'s O(entire-corpus) incremental path, which still inverts every posting to
|
|
75
|
+
reindex one changed file.
|
|
@@ -3436,7 +3436,7 @@ that were never the same from being merged by accident.</p>
|
|
|
3436
3436
|
</article>
|
|
3437
3437
|
|
|
3438
3438
|
<article class="cap rcard" id="bm25-index-is-one-json-blob">
|
|
3439
|
-
<div class="head"><span class="pill
|
|
3439
|
+
<div class="head"><span class="pill inflight">In flight</span><span class="cat">Search · Index</span></div>
|
|
3440
3440
|
<h3>The BM25 index is one JSON blob, and it stops working between 10k and 50k items</h3>
|
|
3441
3441
|
<p><code>rag.py</code> persists the whole index as a single JSON file and
|
|
3442
3442
|
<code>json.loads</code> it on every invocation. <code>_CACHE</code>
|
|
@@ -3467,7 +3467,37 @@ out of the hot path.
|
|
|
3467
3467
|
Also note <code>build()</code>'s incremental path is O(entire corpus): reusing
|
|
3468
3468
|
unchanged taps runs <code>_kept_docs</code> → <code>_postings_to_doc_tf</code>,
|
|
3469
3469
|
which inverts every posting in the index — measured 35 s and 1.72 GB RSS at
|
|
3470
|
-
11.1k entries to reindex a single changed file
|
|
3470
|
+
11.1k entries to reindex a single changed file.
|
|
3471
|
+
|
|
3472
|
+
<b>Win (1) is shipped, and the “better on every metric” claim did not survive
|
|
3473
|
+
re-measurement.</b> On the pinned 6-tap corpus unchunking is a <em>trade</em>, not a free win, and
|
|
3474
|
+
which way it falls depends entirely on the shape of the query.
|
|
3475
|
+
|
|
3476
|
+
On the keyword golden set — which grades items by <b>name</b> — recall@10 fell
|
|
3477
|
+
1.000 → <b>0.978</b> and nDCG 0.895 → 0.882, while hit@1 rose 0.780 → <b>0.791</b>.
|
|
3478
|
+
On the 50 natural-language queries in <code>golden-natural.jsonl</code>, over identical data, every
|
|
3479
|
+
metric improved and not marginally: recall 0.690 → <b>0.750</b>, hit@1 0.240 → <b>0.340</b>,
|
|
3480
|
+
MRR 0.382 → 0.474, nDCG 0.446 → 0.524. That +0.100 hit@1 is 5 of 50 queries, which is at
|
|
3481
|
+
the edge of what 50 queries can resolve — worth stating rather than rounding up.
|
|
3482
|
+
|
|
3483
|
+
Index cost on the same corpus: <b>5.3 MB → 2.1 MB</b> and 3,740 documents → 743, one per
|
|
3484
|
+
entry, with load time 0.032 s → 0.015 s. The card's headline figures are from an 83-tap install
|
|
3485
|
+
where the constant factors are far larger; this is the small-scale confirmation of the same shape,
|
|
3486
|
+
not a substitute for it.
|
|
3487
|
+
|
|
3488
|
+
Chunking's one real contribution was locality — a term only had to beat the length
|
|
3489
|
+
normalisation of its own 1000-char window. BM25's <code>b</code> already does that, and
|
|
3490
|
+
<code>retrieve</code> collapsed chunks back to one hit per entry regardless, so the extra documents
|
|
3491
|
+
were built, stored, re-parsed on every cold search and then discarded. What chunking <em>did</em>
|
|
3492
|
+
provide for free was name matching, since the name sat in whichever chunk contained it; one document
|
|
3493
|
+
per entry has to state the surface explicitly, so <code>rag.surface</code> indexes the name, its
|
|
3494
|
+
de-hyphenated form (<code>tokenize</code> does not split hyphens, so “code reviewer”
|
|
3495
|
+
would otherwise never match <code>code-reviewer</code>) and the description alongside the body.
|
|
3496
|
+
|
|
3497
|
+
<b>Still open:</b> win (2), getting postings out of JSON — the FTS5 probe and the mmap-able
|
|
3498
|
+
binary format are both untouched, as is moving <code>snip</code> text off the hot path. So is
|
|
3499
|
+
<code>build()</code>'s O(entire-corpus) incremental path, which still inverts every posting to
|
|
3500
|
+
reindex one changed file.</p>
|
|
3471
3501
|
<div class="meta">
|
|
3472
3502
|
<span class="m">Complexity <b>L</b></span>
|
|
3473
3503
|
<span class="m hi">Impact <b>High</b></span>
|
|
@@ -11,10 +11,10 @@
|
|
|
11
11
|
"nDCG@k": 0.8098096631332409
|
|
12
12
|
},
|
|
13
13
|
"BM25 full-content": {
|
|
14
|
-
"recall@k":
|
|
15
|
-
"hit@1": 0.
|
|
16
|
-
"MRR": 0.
|
|
17
|
-
"nDCG@k": 0.
|
|
14
|
+
"recall@k": 0.978021978021978,
|
|
15
|
+
"hit@1": 0.7912087912087912,
|
|
16
|
+
"MRR": 0.8542124542124542,
|
|
17
|
+
"nDCG@k": 0.8823506423411086
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
20
|
},
|
|
@@ -29,10 +29,10 @@
|
|
|
29
29
|
"nDCG@k": 0.19698368469243419
|
|
30
30
|
},
|
|
31
31
|
"BM25 full-content": {
|
|
32
|
-
"recall@k": 0.
|
|
33
|
-
"hit@1": 0.
|
|
34
|
-
"MRR": 0.
|
|
35
|
-
"nDCG@k": 0.
|
|
32
|
+
"recall@k": 0.75,
|
|
33
|
+
"hit@1": 0.34,
|
|
34
|
+
"MRR": 0.47449253613769743,
|
|
35
|
+
"nDCG@k": 0.5243426877966659
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
38
|
}
|
|
@@ -605,18 +605,35 @@ class TestMakeDocs:
|
|
|
605
605
|
docs = rag._make_docs([e], {})
|
|
606
606
|
assert docs[0]["snip"] == "Q" * rag.SNIP_STORE
|
|
607
607
|
|
|
608
|
-
def
|
|
608
|
+
def test_one_document_per_entry_however_long_the_body(self, monkeypatch):
|
|
609
|
+
# Inverted deliberately. This asserted `len(docs) > 1`, the chunking the
|
|
610
|
+
# index no longer does: each window carried its own copy of the shared
|
|
611
|
+
# fields and its own snippet, and `retrieve` collapsed them back to one
|
|
612
|
+
# hit per entry anyway, so the extra documents were built, stored,
|
|
613
|
+
# re-parsed on every cold search, and then discarded.
|
|
609
614
|
monkeypatch.setattr(rag, "read_body", lambda e, tp: "widget " * 400)
|
|
610
|
-
|
|
611
|
-
docs
|
|
612
|
-
assert
|
|
615
|
+
docs = rag._make_docs([_entry("n")], {})
|
|
616
|
+
assert len(docs) == 1
|
|
617
|
+
assert docs[0]["tf"]["widget"] == 400
|
|
618
|
+
|
|
619
|
+
def test_the_entry_surface_is_indexed_with_the_body(self, monkeypatch):
|
|
620
|
+
# A chunked index matched names for free — the name sat in whatever
|
|
621
|
+
# chunk contained it. One doc per entry has to state the surface, or
|
|
622
|
+
# searching for an item by its own name stops working.
|
|
623
|
+
monkeypatch.setattr(rag, "read_body", lambda e, tp: "unrelated prose")
|
|
624
|
+
docs = rag._make_docs(
|
|
625
|
+
[_entry("code-reviewer", desc="reviews diffs")], {})
|
|
626
|
+
tf = docs[0]["tf"]
|
|
627
|
+
assert "reviewer" in tf, "the de-hyphenated name must be searchable"
|
|
628
|
+
assert "diffs" in tf, "the description must be searchable"
|
|
613
629
|
|
|
614
630
|
def test_empty_chunk_is_skipped_not_break(self, monkeypatch):
|
|
615
631
|
body = ("the " * 220) + "\n\n" + ("widget " * 130)
|
|
616
632
|
monkeypatch.setattr(rag, "read_body", lambda e, tp: body)
|
|
617
633
|
e = _entry("n")
|
|
618
634
|
docs = rag._make_docs([e], {})
|
|
619
|
-
#
|
|
635
|
+
# An all-stopword passage contributes no terms; the entry still yields
|
|
636
|
+
# its one document, carrying the terms from the rest of the body.
|
|
620
637
|
assert len(docs) == 1
|
|
621
638
|
assert "widget" in docs[0]["tf"]
|
|
622
639
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_skill_cli.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
{boost_skill_cli-1.0.319 → boost_skill_cli-1.0.320}/boost_skill_cli.egg-info/entry_points.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|