boost-skill-cli 1.0.285__tar.gz → 1.0.286__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.
Files changed (536) hide show
  1. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/.gitignore +8 -2
  2. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/MANIFEST.in +3 -0
  3. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/PKG-INFO +1 -1
  4. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/_version.py +2 -2
  5. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_skill_cli.egg-info/PKG-INFO +1 -1
  6. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_skill_cli.egg-info/SOURCES.txt +1 -0
  7. boost_skill_cli-1.0.286/docs/roadmap/items/scorecard-findings-triage.md +74 -0
  8. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap.html +48 -12
  9. boost_skill_cli-1.0.286/tests/visual/package-lock.json +933 -0
  10. boost_skill_cli-1.0.285/docs/roadmap/items/scorecard-findings-triage.md +0 -38
  11. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/.gitattributes +0 -0
  12. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/.gitleaks.toml +0 -0
  13. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/.htmlvalidate.json +0 -0
  14. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/.lighthouserc.json +0 -0
  15. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/.lycheeignore +0 -0
  16. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/.markdownlint-cli2.jsonc +0 -0
  17. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/.pre-commit-config.yaml +0 -0
  18. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/.stylelintrc.json +0 -0
  19. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/.vale/styles/boost/Terminology.yml +0 -0
  20. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/.vale/styles/config/vocabularies/boost/accept.txt +0 -0
  21. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/.vale.ini +0 -0
  22. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/CLAUDE.md +0 -0
  23. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/CODE_OF_CONDUCT.md +0 -0
  24. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/CONTRIBUTING.md +0 -0
  25. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/LICENSE +0 -0
  26. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/Makefile +0 -0
  27. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/README.md +0 -0
  28. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/SECURITY.md +0 -0
  29. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost +0 -0
  30. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/__init__.py +0 -0
  31. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/__main__.py +0 -0
  32. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/cli.py +0 -0
  33. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/cliparse.py +0 -0
  34. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/commands/__init__.py +0 -0
  35. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/commands/_common.py +0 -0
  36. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/commands/bmad.py +0 -0
  37. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/commands/configuration.py +0 -0
  38. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/commands/discovery.py +0 -0
  39. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/commands/hooks.py +0 -0
  40. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/commands/info.py +0 -0
  41. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/commands/intelligence.py +0 -0
  42. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/commands/pkg.py +0 -0
  43. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/commands/quality.py +0 -0
  44. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/commands/run.py +0 -0
  45. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/commands/safety.py +0 -0
  46. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/commands/taps.py +0 -0
  47. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/commands/team.py +0 -0
  48. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/__init__.py +0 -0
  49. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/adapters.py +0 -0
  50. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/agents.py +0 -0
  51. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/ai.py +0 -0
  52. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/capabilities.py +0 -0
  53. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/catalog.py +0 -0
  54. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/claude_settings.py +0 -0
  55. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/config.py +0 -0
  56. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/dense.py +0 -0
  57. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/ed25519.py +0 -0
  58. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/embed.py +0 -0
  59. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/faithfulness.py +0 -0
  60. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/frontmatter.py +0 -0
  61. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/gitutil.py +0 -0
  62. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/imperative.py +0 -0
  63. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/injectscan.py +0 -0
  64. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/integrity.py +0 -0
  65. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/journal.py +0 -0
  66. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/lockfile.py +0 -0
  67. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/logs.py +0 -0
  68. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/mcp.py +0 -0
  69. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/mcpdecl.py +0 -0
  70. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/minisign.py +0 -0
  71. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/nethttp.py +0 -0
  72. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/output.py +0 -0
  73. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/paths.py +0 -0
  74. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/policy.py +0 -0
  75. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/projectlock.py +0 -0
  76. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/provenance.py +0 -0
  77. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/rag.py +0 -0
  78. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/registry.py +0 -0
  79. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/resolve.py +0 -0
  80. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/rules.py +0 -0
  81. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/scopes.py +0 -0
  82. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/secretscan.py +0 -0
  83. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/selfupdate.py +0 -0
  84. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/serve.py +0 -0
  85. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/stackprobe.py +0 -0
  86. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/staleness.py +0 -0
  87. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/store.py +0 -0
  88. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/trustaudit.py +0 -0
  89. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/typosquat.py +0 -0
  90. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/updatediff.py +0 -0
  91. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/util.py +0 -0
  92. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/core/workflows.py +0 -0
  93. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/data/registries.json +0 -0
  94. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/errors.py +0 -0
  95. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_cli/spin.py +0 -0
  96. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_skill_cli.egg-info/dependency_links.txt +0 -0
  97. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_skill_cli.egg-info/entry_points.txt +0 -0
  98. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_skill_cli.egg-info/requires.txt +0 -0
  99. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/boost_skill_cli.egg-info/top_level.txt +0 -0
  100. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/codecov.yml +0 -0
  101. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/.claude/settings.local.json +0 -0
  102. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/DEBUGGING.md +0 -0
  103. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/adapters.html +0 -0
  104. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/carousel/gifs/distill.gif +0 -0
  105. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/carousel/gifs/doctor.gif +0 -0
  106. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/carousel/gifs/explain.gif +0 -0
  107. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/carousel/gifs/hooks.gif +0 -0
  108. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/carousel/gifs/install.gif +0 -0
  109. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/carousel/gifs/pulse.gif +0 -0
  110. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/carousel/gifs/search.gif +0 -0
  111. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/carousel/gifs/tap.gif +0 -0
  112. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/carousel/tapes/distill.tape +0 -0
  113. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/carousel/tapes/doctor.tape +0 -0
  114. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/carousel/tapes/explain.tape +0 -0
  115. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/carousel/tapes/hooks.tape +0 -0
  116. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/carousel/tapes/install.tape +0 -0
  117. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/carousel/tapes/pulse.tape +0 -0
  118. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/carousel/tapes/search.tape +0 -0
  119. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/carousel/tapes/tap.tape +0 -0
  120. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/carousel.html +0 -0
  121. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/commands.html +0 -0
  122. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/demo.gif +0 -0
  123. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/demo.tape +0 -0
  124. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/design-roadmap.html +0 -0
  125. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/eval.html +0 -0
  126. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/index.html +0 -0
  127. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/mcp-hub.html +0 -0
  128. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/rag-architecture.md +0 -0
  129. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D01.md +0 -0
  130. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D02.md +0 -0
  131. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D03.md +0 -0
  132. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D04.md +0 -0
  133. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D05.md +0 -0
  134. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D06.md +0 -0
  135. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D07.md +0 -0
  136. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D08.md +0 -0
  137. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D09.md +0 -0
  138. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D10.md +0 -0
  139. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D11.md +0 -0
  140. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D12.md +0 -0
  141. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D13.md +0 -0
  142. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D14.md +0 -0
  143. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D15.md +0 -0
  144. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D16.md +0 -0
  145. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D17.md +0 -0
  146. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D18.md +0 -0
  147. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D19.md +0 -0
  148. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D20.md +0 -0
  149. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D21.md +0 -0
  150. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D22.md +0 -0
  151. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D23.md +0 -0
  152. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D24.md +0 -0
  153. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D25.md +0 -0
  154. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/BOOST-D26.md +0 -0
  155. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/accessibility-audit-pa11y-ci-axe-core.md +0 -0
  156. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/actionlint-skips-shellcheck-silently.md +0 -0
  157. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/adapter-conformance-langgraph-leg-never-ran.md +0 -0
  158. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/ai-bridge-silent-failure-logging.md +0 -0
  159. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/ambiguous-tap-short-name-resolution.md +0 -0
  160. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/atomic-corruption-safe-lock-file-writes.md +0 -0
  161. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/atomic-skill-install-temp-dir-swap.md +0 -0
  162. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/autonomous-ship-workflow-and-isolated-worktree.md +0 -0
  163. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/boost-run-live-agents.md +0 -0
  164. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/bring-commands-under-mutation-testing.md +0 -0
  165. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/broken-link-and-anchor-checking-lychee.md +0 -0
  166. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/browse-crashes-selecting-a-rule-or-workflow.md +0 -0
  167. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/build-provenance-slsa-attestations.md +0 -0
  168. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/cache-the-catalog-entry-set-across-rag-queries.md +0 -0
  169. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/capability-manifest-and-least-privilege-policy.md +0 -0
  170. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/ci-job-timeout-minutes.md +0 -0
  171. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/ci-summary-step-fails-itself.md +0 -0
  172. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/ci-time-is-now-runner-queueing.md +0 -0
  173. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/clean-env-install-smoke-pip-and-pipx.md +0 -0
  174. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/code-scanning-rule-can-be-restored.md +0 -0
  175. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/codeql-job-rename-stranded-merge-protection.md +0 -0
  176. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/command-carousel-page.md +0 -0
  177. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/command-reference-docs-site.md +0 -0
  178. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/complexity-and-dead-code-radar-xenon-vulture.md +0 -0
  179. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/consolidate-skill-staleness-drift-logic-into-cor.md +0 -0
  180. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/coverage-dashboard-codecov-free-for-oss.md +0 -0
  181. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/coverage-guided-fuzzing-atheris-oss-fuzz.md +0 -0
  182. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/crash-listing-branch-untested.md +0 -0
  183. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/crash-recorder-error-paths-core-logs-py.md +0 -0
  184. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/demo-cannot-open-its-own-pr.md +0 -0
  185. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/demo-gif-workflow-has-never-succeeded.md +0 -0
  186. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/dense-search-fallback-and-stale-tap-pruning.md +0 -0
  187. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/dependabot-missing-pip-ecosystem.md +0 -0
  188. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/dependabot-regeneration-drops-platform-pins.md +0 -0
  189. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/dependabot-root-pip-entry-duplicates-requirements.md +0 -0
  190. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/dependency-cve-gate-pip-audit.md +0 -0
  191. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/docsite-chrome-and-content-audit.md +0 -0
  192. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/docstring-coverage-interrogate.md +0 -0
  193. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/doctor-checks-rules-and-workflows.md +0 -0
  194. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/end-of-options-guard-on-git-commands.md +0 -0
  195. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/extension-free-tests-core-dense-py.md +0 -0
  196. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/extract-mcp-http-servers-out-of-configuration-py.md +0 -0
  197. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/finish-mutation-hardening-across-core.md +0 -0
  198. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/fix-self-update-version-detection-dead-branch.md +0 -0
  199. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/fork-safe-network-proxy-handler.md +0 -0
  200. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/framework-adapter-langgraph.md +0 -0
  201. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/framework-adapter-multi-agent.md +0 -0
  202. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/framework-adapters-boost-adapt.md +0 -0
  203. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/frontmatter-scalar-over-coercion.md +0 -0
  204. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/github-community-health-files.md +0 -0
  205. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/github-pages-deploy-is-broken-every-push.md +0 -0
  206. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/golden-set-statistical-power.md +0 -0
  207. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/hash-pinned-reproducible-toolchain-uv-lock.md +0 -0
  208. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/html-validation-html-validate.md +0 -0
  209. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/install-docs-never-mentioned-upgrading.md +0 -0
  210. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/install-from-path-bypasses-policy-and-pin-checks.md +0 -0
  211. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/install-resolves-skill-dependencies.md +0 -0
  212. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/install-scope-user-or-project.md +0 -0
  213. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/installed-skill-trust-audit.md +0 -0
  214. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/integrity-verification-boost-verify.md +0 -0
  215. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/invocation-pid-logging-for-crash-correlation.md +0 -0
  216. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/journal-rotation-race-and-handle-leak.md +0 -0
  217. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/layering-guard-import-linter.md +0 -0
  218. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/license-compliance-scanning.md +0 -0
  219. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/lighthouse-ci-on-the-pages-site.md +0 -0
  220. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/lint-tap-misscopes-rule-workflow-entries.md +0 -0
  221. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/list-rules-and-workflows.md +0 -0
  222. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/localize-the-stored-bm25-snippet.md +0 -0
  223. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/lock-invariant-cannot-parse-extras-pins.md +0 -0
  224. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/lockfile-enforcement-and-commit-pinning.md +0 -0
  225. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/log-timestamps-mislabeled-utc.md +0 -0
  226. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/lowest-version-resolution-uv-resolution-lowest-d.md +0 -0
  227. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/main-has-no-branch-protection.md +0 -0
  228. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/main-ruleset-ref-pattern-has-literal-quotes.md +0 -0
  229. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/make-lint-masks-actionlint-failures.md +0 -0
  230. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/make-the-roadmaps-discoverable.md +0 -0
  231. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/markdown-consistency-markdownlint-cli2.md +0 -0
  232. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/markdownlint-lints-the-fuzz-corpus.md +0 -0
  233. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/mcp-aware-skills.md +0 -0
  234. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/mcp-check-skills-before-starting-a-task.md +0 -0
  235. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/mcp-hub-diagram-node-text-overflow.md +0 -0
  236. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/mcp-launch-objc-fork-safety.md +0 -0
  237. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/mcp-register-names-server-before-env.md +0 -0
  238. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/mcp-search-before-reinventing.md +0 -0
  239. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/mcp-startup-self-harden-fork-safety.md +0 -0
  240. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/memoize-config-load-in-process.md +0 -0
  241. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/merge-queue-would-deadlock-most-required-checks.md +0 -0
  242. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/merged-loop-branches-are-never-pruned.md +0 -0
  243. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/modernization-smells-refurb-pyupgrade.md +0 -0
  244. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/mutation-gate-was-the-whole-critical-path.md +0 -0
  245. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/mutation-hardening-core-frontmatter-py.md +0 -0
  246. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/mutation-hardening-core-gitutil-py.md +0 -0
  247. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/mutation-hardening-core-store-py.md +0 -0
  248. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/mutation-shard-floor-is-one-file.md +0 -0
  249. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/mypy-strict-mode-for-commands.md +0 -0
  250. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/negative-limit-inverts-log-pulse-output.md +0 -0
  251. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/onboard-overwrites-generated-files-without-confirm.md +0 -0
  252. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/one-command-every-env-nox.md +0 -0
  253. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/one-commit-can-cut-two-releases.md +0 -0
  254. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/one-shared-atomic-write-helper.md +0 -0
  255. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/package-metadata-validation-twine-check-friends.md +0 -0
  256. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/patch-coverage-gate-diff-cover.md +0 -0
  257. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/path-traversal-unsanitized-rule-workflow-name.md +0 -0
  258. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/performance-regression-gate-pytest-benchmark.md +0 -0
  259. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/pin-the-lint-toolchain.md +0 -0
  260. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/post-deploy-always-defeated-by-skipped-setup.md +0 -0
  261. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/post-deploy-smoke-headless-load-check.md +0 -0
  262. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/pre-release-python-canary-3-14t-free-threaded.md +0 -0
  263. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/project-scope-across-every-command.md +0 -0
  264. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/project-scope-symlink-escape-on-write.md +0 -0
  265. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/promote-nav-footer-into-the-shared-style-system.md +0 -0
  266. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/prompt-injection-scanning-of-skill-markdown.md +0 -0
  267. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/property-based-tests-hypothesis-on-the-parsers.md +0 -0
  268. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/prose-and-terminology-linting-vale.md +0 -0
  269. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/prune-ignored-dirs-during-scan-dir-walk.md +0 -0
  270. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/publish-gate-ignores-pip-audit-and-metadata.md +0 -0
  271. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/publish-trigger-was-reachable-from-a-fork.md +0 -0
  272. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/pytest-tmpdir-cve-blocked-by-py39-floor.md +0 -0
  273. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/quality-dashboard-sonarcloud-free-for-oss.md +0 -0
  274. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/ranx-significance-monitor.md +0 -0
  275. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/reconcile-the-theme-drift.md +0 -0
  276. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/refresh-the-marketing-surface.md +0 -0
  277. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/rel-time-tests-race-the-wall-clock.md +0 -0
  278. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/release-verifies-the-wrong-commit.md +0 -0
  279. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/required-checks-can-declare-a-check-that-deadlocks-prs.md +0 -0
  280. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/required-checks-config-drift.md +0 -0
  281. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/retrieval-quality-eval-harness.md +0 -0
  282. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/reuse-helpers-kill-minor-dead-work.md +0 -0
  283. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/roadmap-html-goes-stale-on-every-rebase.md +0 -0
  284. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/robust-tag-argument-parsing.md +0 -0
  285. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/ruff-016-widens-the-default-rule-set.md +0 -0
  286. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/rule-install-native-materialization.md +0 -0
  287. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/runner-egress-monitoring-stepsecurity-harden-run.md +0 -0
  288. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/runtime-explain-faithfulness-guardrail.md +0 -0
  289. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/sbom-aware-scanning-osv-scanner.md +0 -0
  290. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/sbom-declares-the-wrong-version.md +0 -0
  291. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/sbom-on-every-release-cyclonedx-syft.md +0 -0
  292. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/sbom-release-event-never-fires.md +0 -0
  293. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/scan-and-sync-rules-and-workflows.md +0 -0
  294. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/second-type-checker-pyright.md +0 -0
  295. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/secret-and-pii-scanning-of-installed-skills.md +0 -0
  296. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/secret-scanning-gitleaks-push-protection.md +0 -0
  297. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/security-linting-bandit-via-ruff-s-rules.md +0 -0
  298. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/self-update-broken-for-pip-pipx-installs.md +0 -0
  299. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/serve-py-traversal-guards-untested.md +0 -0
  300. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/shift-left-gate-pre-commit-pre-commit-ci.md +0 -0
  301. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/single-imperative-rule-extractor.md +0 -0
  302. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/single-tech-stack-prober.md +0 -0
  303. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/split-oversized-command-modules.md +0 -0
  304. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/startup-and-import-time-budget-x-importtime.md +0 -0
  305. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/stop-re-serializing-entry-meta-on-every-search.md +0 -0
  306. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/structured-json-log-output-mode.md +0 -0
  307. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/supply-chain-posture-openssf-scorecard.md +0 -0
  308. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/surface-every-docs-page-from-the-guide.md +0 -0
  309. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/sync-deletes-unowned-broken-symlinks.md +0 -0
  310. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/sync-relinks-into-every-agent-ignoring-scope.md +0 -0
  311. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/tap-signing-and-provenance-sigstore-minisign.md +0 -0
  312. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/theme-asset-linting-stylelint-eslint.md +0 -0
  313. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/typo-detection-codespell.md +0 -0
  314. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/typosquat-and-name-confusion-detection.md +0 -0
  315. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/unify-tilde-two-copies-have-a-boundary-bug.md +0 -0
  316. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/uninstall-has-no-confirmation-prompt.md +0 -0
  317. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/untrack-generated-build-noise.md +0 -0
  318. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/update-diff-before-apply.md +0 -0
  319. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/update-refreshes-rules-and-workflows.md +0 -0
  320. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/update-reinstall-widens-agent-scope.md +0 -0
  321. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/visual-regression-pass-on-the-guide.md +0 -0
  322. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/widen-the-ruff-rule-surface-b-sim-c4-perf-ruf.md +0 -0
  323. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/windows-in-the-ci-matrix.md +0 -0
  324. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/wire-bdd-suite-into-ci.md +0 -0
  325. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/workflow-install-native-materialization.md +0 -0
  326. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/workflow-linting-actionlint.md +0 -0
  327. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/workflow-sast-zizmor.md +0 -0
  328. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/workspace-scope-install.md +0 -0
  329. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/docs/roadmap/items/zizmor-pin-is-a-yanked-release.md +0 -0
  330. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/eslint.config.mjs +0 -0
  331. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/evals/README.md +0 -0
  332. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/evals/__init__.py +0 -0
  333. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/evals/baseline.json +0 -0
  334. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/evals/faithfulness.py +0 -0
  335. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/evals/golden_set.json +0 -0
  336. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/evals/make_corpus.py +0 -0
  337. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/evals/make_golden.py +0 -0
  338. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/evals/metrics.py +0 -0
  339. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/evals/run_evals.py +0 -0
  340. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/examples/README.md +0 -0
  341. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/examples/adapt-demo.sh +0 -0
  342. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/examples/boost-run-prototype.sh +0 -0
  343. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/index.html +0 -0
  344. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/noxfile.py +0 -0
  345. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/pyproject.toml +0 -0
  346. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/requirements/coverage-tools.in +0 -0
  347. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/requirements/coverage-tools.txt +0 -0
  348. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/requirements/lint-tools.in +0 -0
  349. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/requirements/lint-tools.txt +0 -0
  350. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/requirements/mutation-tools.in +0 -0
  351. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/requirements/mutation-tools.txt +0 -0
  352. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/requirements/release-tools.in +0 -0
  353. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/requirements/release-tools.txt +0 -0
  354. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/requirements/test-tools.in +0 -0
  355. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/requirements/test-tools.txt +0 -0
  356. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/a11y_check.py +0 -0
  357. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/bench_cli.sh +0 -0
  358. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/build_command_reference.py +0 -0
  359. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/build_registries.py +0 -0
  360. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/build_roadmap.py +0 -0
  361. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/check_anchors.py +0 -0
  362. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/check_licenses.py +0 -0
  363. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/check_required_checks.py +0 -0
  364. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/ensure_eval_corpus.sh +0 -0
  365. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/eval_explain.py +0 -0
  366. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/eval_gate.py +0 -0
  367. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/eval_recommend.py +0 -0
  368. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/eval_retrieval.py +0 -0
  369. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/eval_stats_summary.py +0 -0
  370. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/import_budget.py +0 -0
  371. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/lock_toolchain.py +0 -0
  372. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/mutation_gate.py +0 -0
  373. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/mutation_shards.py +0 -0
  374. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/mutation_weights.json +0 -0
  375. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/perf_gate.py +0 -0
  376. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/post_deploy_smoke.py +0 -0
  377. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/scripts/release_preflight.py +0 -0
  378. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/setup.cfg +0 -0
  379. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/sonar-project.properties +0 -0
  380. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/style/README.md +0 -0
  381. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/style/boost.css +0 -0
  382. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/style/boost.js +0 -0
  383. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/style/demo.html +0 -0
  384. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/bdd/features/adapt.feature +0 -0
  385. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/bdd/features/browse.feature +0 -0
  386. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/bdd/features/count.feature +0 -0
  387. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/bdd/features/discover.feature +0 -0
  388. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/bdd/features/doctor.feature +0 -0
  389. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/bdd/features/environment.py +0 -0
  390. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/bdd/features/explain.feature +0 -0
  391. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/bdd/features/index.feature +0 -0
  392. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/bdd/features/install.feature +0 -0
  393. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/bdd/features/list.feature +0 -0
  394. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/bdd/features/mcp.feature +0 -0
  395. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/bdd/features/search.feature +0 -0
  396. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/bdd/features/steps/cli_steps.py +0 -0
  397. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/bdd/features/steps/discovery_steps.py +0 -0
  398. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/bdd/features/steps/mcp_steps.py +0 -0
  399. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/bdd/features/steps/quality_steps.py +0 -0
  400. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/conftest.py +0 -0
  401. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/eval/baseline.json +0 -0
  402. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/eval/explain.jsonl +0 -0
  403. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/eval/golden.jsonl +0 -0
  404. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/eval/recommend.jsonl +0 -0
  405. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/eval/taps.txt +0 -0
  406. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/functional/test_capabilities_policy.py +0 -0
  407. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/functional/test_cli_adapt.py +0 -0
  408. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/functional/test_cli_bmad.py +0 -0
  409. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/functional/test_cli_configuration.py +0 -0
  410. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/functional/test_cli_discovery.py +0 -0
  411. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/functional/test_cli_hooks.py +0 -0
  412. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/functional/test_cli_info.py +0 -0
  413. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/functional/test_cli_intelligence.py +0 -0
  414. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/functional/test_cli_pkg.py +0 -0
  415. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/functional/test_cli_quality.py +0 -0
  416. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/functional/test_cli_taps.py +0 -0
  417. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/functional/test_cli_team.py +0 -0
  418. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/functional/test_everyday_loop.py +0 -0
  419. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/functional/test_integrity_enforce.py +0 -0
  420. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/functional/test_property_parsers.py +0 -0
  421. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/functional/test_run.py +0 -0
  422. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/functional/test_tap_signing.py +0 -0
  423. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/functional/test_workspace_scope.py +0 -0
  424. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/README.md +0 -0
  425. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/frontmatter/01-typical.md +0 -0
  426. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/frontmatter/02-lossy-version.md +0 -0
  427. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/frontmatter/03-lossy-numbers.md +0 -0
  428. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/frontmatter/04-lists.md +0 -0
  429. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/frontmatter/05-nested.md +0 -0
  430. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/frontmatter/06-empty-block.md +0 -0
  431. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/frontmatter/07-unterminated.md +0 -0
  432. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/frontmatter/08-none.md +0 -0
  433. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/frontmatter/09-unbalanced-quote.md +0 -0
  434. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/frontmatter/10-keywords.md +0 -0
  435. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/frontmatter/11-crlf.md +0 -0
  436. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/frontmatter/12-bom.md +0 -0
  437. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/registry/01-shorthand.txt +0 -0
  438. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/registry/02-https.txt +0 -0
  439. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/registry/03-ssh.txt +0 -0
  440. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/registry/04-traversal.txt +0 -0
  441. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/registry/05-empty.txt +0 -0
  442. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/registry/06-space.txt +0 -0
  443. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/registry/07-slash.txt +0 -0
  444. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/corpus/registry/08-bare-host.txt +0 -0
  445. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/fuzz_frontmatter.py +0 -0
  446. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/fuzz/fuzz_registry.py +0 -0
  447. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/make_fixture.py +0 -0
  448. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/perf/test_benchmarks.py +0 -0
  449. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/smoke.sh +0 -0
  450. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_a11y_check.py +0 -0
  451. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_adapters.py +0 -0
  452. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_adapters_multi.py +0 -0
  453. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_adapters_runner.py +0 -0
  454. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_agents.py +0 -0
  455. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_ai.py +0 -0
  456. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_capabilities.py +0 -0
  457. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_catalog.py +0 -0
  458. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_check_anchors.py +0 -0
  459. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_check_licenses.py +0 -0
  460. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_claude_settings.py +0 -0
  461. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_cliparse.py +0 -0
  462. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_codeql_analysis_key.py +0 -0
  463. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_command_reference_fresh.py +0 -0
  464. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_community_health_files.py +0 -0
  465. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_config.py +0 -0
  466. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_dense.py +0 -0
  467. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_dense_fallback.py +0 -0
  468. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_dependabot_config.py +0 -0
  469. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_docs_pages_linked.py +0 -0
  470. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_docsite_chrome.py +0 -0
  471. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_ed25519.py +0 -0
  472. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_embed.py +0 -0
  473. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_errors_and_cli_table.py +0 -0
  474. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_eval_faithfulness.py +0 -0
  475. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_eval_gate.py +0 -0
  476. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_eval_metrics.py +0 -0
  477. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_eval_stats_summary.py +0 -0
  478. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_faithfulness.py +0 -0
  479. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_frontmatter.py +0 -0
  480. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_fuzz_targets.py +0 -0
  481. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_gitleaks_config.py +0 -0
  482. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_gitutil.py +0 -0
  483. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_imperative.py +0 -0
  484. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_import_budget.py +0 -0
  485. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_injectscan.py +0 -0
  486. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_integrity.py +0 -0
  487. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_journal.py +0 -0
  488. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_lockfile.py +0 -0
  489. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_logs.py +0 -0
  490. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_marketing_counts.py +0 -0
  491. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_mcp.py +0 -0
  492. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_mcpdecl.py +0 -0
  493. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_minisign.py +0 -0
  494. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_mutation_hardening.py +0 -0
  495. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_mutation_shards.py +0 -0
  496. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_mutmut_source_paths.py +0 -0
  497. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_nethttp.py +0 -0
  498. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_output.py +0 -0
  499. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_paths.py +0 -0
  500. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_perf_gate.py +0 -0
  501. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_pkg_confusions.py +0 -0
  502. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_pkg_injection.py +0 -0
  503. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_pkg_secrets.py +0 -0
  504. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_policy.py +0 -0
  505. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_post_deploy_smoke.py +0 -0
  506. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_projectlock.py +0 -0
  507. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_provenance.py +0 -0
  508. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_rag.py +0 -0
  509. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_registries_fresh.py +0 -0
  510. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_registry.py +0 -0
  511. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_release_preflight.py +0 -0
  512. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_required_checks.py +0 -0
  513. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_resolve.py +0 -0
  514. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_roadmap_fresh.py +0 -0
  515. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_rules.py +0 -0
  516. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_scopes.py +0 -0
  517. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_secretscan.py +0 -0
  518. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_selfupdate.py +0 -0
  519. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_serve.py +0 -0
  520. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_spin.py +0 -0
  521. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_stackprobe.py +0 -0
  522. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_staleness.py +0 -0
  523. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_store.py +0 -0
  524. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_token_parity.py +0 -0
  525. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_toolchain_lock.py +0 -0
  526. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_trustaudit.py +0 -0
  527. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_typosquat.py +0 -0
  528. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_updatediff.py +0 -0
  529. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_util.py +0 -0
  530. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_version.py +0 -0
  531. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_workflow_timeouts.py +0 -0
  532. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/unit/test_workflows.py +0 -0
  533. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/visual/a11y_check.mjs +0 -0
  534. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/visual/console_check.mjs +0 -0
  535. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/visual/package.json +0 -0
  536. {boost_skill_cli-1.0.285 → boost_skill_cli-1.0.286}/tests/visual/visual_check.mjs +0 -0
@@ -235,6 +235,12 @@ mutants/
235
235
  # dir (see evals/run_evals.py), so only the per-run scores land here; the
236
236
  # committed evals/baseline.json is what regressions are measured against.
237
237
  evals/results.json
238
- tests/visual/node_modules/
239
238
  tests/visual/out/
240
- tests/visual/package-lock.json
239
+
240
+ # Installed npm trees, never the lockfiles that describe them. Both
241
+ # package-lock.json files ARE committed on purpose: package.json pins only the
242
+ # direct dependencies, so without the lock every transitive package resolves
243
+ # fresh at install time. The lock carries an integrity hash for all 181 (root)
244
+ # and 81 (tests/visual) packages, which is what makes `npm ci` reproducible and
245
+ # what OpenSSF Scorecard's Pinned-Dependencies check asks for.
246
+ node_modules/
@@ -9,4 +9,7 @@ prune .idea
9
9
  prune .claude
10
10
  prune .github
11
11
  exclude .coverage
12
+ # The npm lint/test toolchain (stylelint, eslint, puppeteer-core, axe-core). CI
13
+ # only; nothing in the shipped runtime touches node.
14
+ exclude package.json package-lock.json
12
15
  global-exclude __pycache__ *.pyc *.pyo .DS_Store
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: boost-skill-cli
3
- Version: 1.0.285
3
+ Version: 1.0.286
4
4
  Summary: boost — Homebrew for AI coding skills
5
5
  Author: Jonathan Reyes
6
6
  License: GNU GENERAL PUBLIC LICENSE
@@ -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.285'
22
- __version_tuple__ = version_tuple = (1, 0, 285)
21
+ __version__ = version = '1.0.286'
22
+ __version_tuple__ = version_tuple = (1, 0, 286)
23
23
 
24
24
  __commit_id__ = commit_id = None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: boost-skill-cli
3
- Version: 1.0.285
3
+ Version: 1.0.286
4
4
  Summary: boost — Homebrew for AI coding skills
5
5
  Author: Jonathan Reyes
6
6
  License: GNU GENERAL PUBLIC LICENSE
@@ -529,5 +529,6 @@ tests/unit/test_workflow_timeouts.py
529
529
  tests/unit/test_workflows.py
530
530
  tests/visual/a11y_check.mjs
531
531
  tests/visual/console_check.mjs
532
+ tests/visual/package-lock.json
532
533
  tests/visual/package.json
533
534
  tests/visual/visual_check.mjs
@@ -0,0 +1,74 @@
1
+ ---
2
+ id: scorecard-findings-triage
3
+ board: code
4
+ section: pipeline
5
+ status: shipped
6
+ category: Supply chain
7
+ complexity: M
8
+ impact: Med
9
+ wow: 2
10
+ note: 7 open · 3 now hash-pinned, 3 decided, 1 clears itself
11
+ order: 13
12
+ owner: loop/scorecard-pinned-deps
13
+ pr:
14
+ title: OpenSSF Scorecard's findings, triaged into three piles
15
+ ---
16
+ Scorecard files into the same code-scanning inbox as CodeQL, so its findings read like
17
+ code defects and get ignored alongside the false positives. They are not defects — they
18
+ are <b>posture metrics</b>, and they must not be dismissed as "false positive" the way the
19
+ <code>serve.py</code> traversal alerts legitimately were, because that misrepresents the
20
+ repo's security posture. Triaged 2026-07-25, re-triaged 2026-07-29 against the 7 still open.
21
+ <b>Fixed</b> — <code>TokenPermissions</code> #26/#27/#28: <code>ci</code>,
22
+ <code>codeql</code> and <code>adapter-conformance</code> had no top-level
23
+ <code>permissions:</code> block at all, scoring 0. Added <code>contents: read</code> as the
24
+ least-privilege default.
25
+ <b>Intentional, leave</b> — <code>TokenPermissions</code> #39/#37/#25/#24:
26
+ <code>publish.yml</code> needs <code>contents: write</code> to create the release and tag,
27
+ <code>osv-scanner</code> needs <code>security-events: write</code> to upload SARIF, and
28
+ <code>ci.yml</code>'s <code>tests</code> job needs <code>contents: write</code> for the
29
+ coverage-badge push. "Fixing" these breaks the release pipeline. They should be
30
+ <b>dismissed as used-in-tests/acceptable-risk with a reason</b>, not left open to rot the list.
31
+ <b>Correction — <code>PinnedDependencies</code> was NOT "not code-fixable".</b> The first
32
+ pass filed #40/#41/#48 under <i>"npx and pip invocations inside steps, not actions, so
33
+ SHA-pinning does not apply"</i>. That reads the check as being about action SHAs, and it
34
+ is not: for npm the remediation is a <b>committed lockfile</b>, and all three hits were
35
+ <code>npm install</code> steps. <code>tests/visual/package.json</code> pinned its two direct
36
+ deps exactly — and <code>.gitignore</code> then <i>excluded the lockfile</i>, so 79
37
+ transitive packages resolved fresh on every run. <code>theme-lint</code> was worse:
38
+ <code>npm install stylelint@16 eslint@9</code> re-resolved the whole linter every run, so
39
+ the linter CI executed was never the linter anyone reviewed. Both trees are now hash-pinned
40
+ (181 + 81 packages, integrity on every one) and installed with <code>npm ci</code>;
41
+ <code>dependabot.yml</code> gains both npm directories, because a pin with no update path is
42
+ only half the job.
43
+ <b>What the pin immediately exposed.</b> Committing the lock made
44
+ <code>osv-scanner</code> able to see the transitive tree for the first time, and it failed
45
+ the branch at once on <b>CVE-2026-14257</b> (<code>brace-expansion</code>, CVSS 7.5,
46
+ unbounded expansion → OOM). Pre-existing, not introduced: the old floating
47
+ <code>npm install eslint@9</code> resolved the same package, invisibly. The advisory's range
48
+ is <i>all versions below 5.0.8</i>, so the 1.x maintenance line has no fix — and the obvious
49
+ patch, an <code>overrides</code> entry forcing <code>brace-expansion@^5</code>, <b>breaks
50
+ eslint</b>: v5 exports <code>{ expand }</code> where <code>minimatch@3</code> requires a
51
+ callable default, so <code>eslint "style/**/*.{js,mjs}"</code> dies with
52
+ <i>"expand is not a function"</i> while plain <code>eslint style/</code> still passes — a
53
+ green-looking linter with a broken glob path. The real fix is upstream:
54
+ <code>eslint@10</code> depends on <code>minimatch@^10.2.5</code>, which requires the patched
55
+ <code>brace-expansion@^5.0.8</code>. Bumped 9.39.5 → 10.8.0; all 262 packages across both
56
+ locks now return zero OSV advisories.
57
+ <b>Open by decision, correctly</b> — <code>BranchProtectionID</code> #33 (4/10) and
58
+ <code>CodeReviewID</code> #34 (0/26 approved changesets) are two readings of one deliberate
59
+ choice recorded in <a href="#main-has-no-branch-protection">its own card</a>: require status
60
+ checks, do <i>not</i> require reviews, because the working model is parallel
61
+ <code>loop/*</code> branches that self-merge and there is no second reviewer. Every warning
62
+ Scorecard prints under #33 — stale-review dismissal, required approvers, CODEOWNERS review,
63
+ last-push approval — follows from that one choice. They stay open because the score is
64
+ <b>accurate</b>: this repo really does merge without human review. Dismissing them would be
65
+ the lie.
66
+ <b>Clears itself</b> — <code>MaintainedID</code> #35 is <i>"repository was created within the
67
+ last 90 days"</i>. Created 2026-07-17, so it resolves on its own around 2026-10-15. Nothing
68
+ to do but not dismiss it.
69
+ <b>Needs a human, not a commit</b> — <code>CIIBestPracticesID</code> #36 is the one
70
+ remaining actionable finding, and it cannot be fixed from a branch: it asks whether the
71
+ project is registered for an OpenSSF Best Practices badge, which means creating a project
72
+ entry at <code>bestpractices.dev</code> under a real account and answering its criteria. The
73
+ prerequisites are already in place (LICENSE, SECURITY.md, CONTRIBUTING.md,
74
+ CODE_OF_CONDUCT.md, a published CI gate); only the registration is missing.
@@ -2015,13 +2015,13 @@ path is never used — that fixes the behaviour without satisfying Dependabot's
2015
2015
  </article>
2016
2016
 
2017
2017
  <article class="cap rcard" id="scorecard-findings-triage">
2018
- <div class="head"><span class="pill planned">Planned</span><span class="cat">Supply chain</span></div>
2019
- <h3>OpenSSF Scorecard's 15 findings, triaged into three piles</h3>
2018
+ <div class="head"><span class="pill shipped">Shipped</span><span class="cat">Supply chain</span></div>
2019
+ <h3>OpenSSF Scorecard's findings, triaged into three piles</h3>
2020
2020
  <p>Scorecard files into the same code-scanning inbox as CodeQL, so its findings read like
2021
2021
  code defects and get ignored alongside the false positives. They are not defects — they
2022
2022
  are <b>posture metrics</b>, and they must not be dismissed as "false positive" the way the
2023
2023
  <code>serve.py</code> traversal alerts legitimately were, because that misrepresents the
2024
- repo's security posture. Triaged 2026-07-25:
2024
+ repo's security posture. Triaged 2026-07-25, re-triaged 2026-07-29 against the 7 still open.
2025
2025
  <b>Fixed</b> — <code>TokenPermissions</code> #26/#27/#28: <code>ci</code>,
2026
2026
  <code>codeql</code> and <code>adapter-conformance</code> had no top-level
2027
2027
  <code>permissions:</code> block at all, scoring 0. Added <code>contents: read</code> as the
@@ -2032,19 +2032,55 @@ least-privilege default.
2032
2032
  <code>ci.yml</code>'s <code>tests</code> job needs <code>contents: write</code> for the
2033
2033
  coverage-badge push. "Fixing" these breaks the release pipeline. They should be
2034
2034
  <b>dismissed as used-in-tests/acceptable-risk with a reason</b>, not left open to rot the list.
2035
- <b>Not code-fixable</b> — <code>MaintainedID</code> is repository age; <code>CodeReviewID</code>
2036
- counts approved changesets and is structurally 0 while loops self-merge;
2037
- <code>CIIBestPracticesID</code> is an opt-in badge programme; the four
2038
- <code>PinnedDependencies</code> hits are <code>npx</code> and <code>pip</code> invocations
2039
- inside steps, not actions, so SHA-pinning does not apply to them as written.
2040
- <code>BranchProtectionID</code> is tracked separately in
2041
- <a href="#main-has-no-branch-protection">its own card</a> — it is a workflow decision, not a
2042
- config oversight.</p>
2035
+ <b>Correction — <code>PinnedDependencies</code> was NOT "not code-fixable".</b> The first
2036
+ pass filed #40/#41/#48 under <i>"npx and pip invocations inside steps, not actions, so
2037
+ SHA-pinning does not apply"</i>. That reads the check as being about action SHAs, and it
2038
+ is not: for npm the remediation is a <b>committed lockfile</b>, and all three hits were
2039
+ <code>npm install</code> steps. <code>tests/visual/package.json</code> pinned its two direct
2040
+ deps exactly — and <code>.gitignore</code> then <i>excluded the lockfile</i>, so 79
2041
+ transitive packages resolved fresh on every run. <code>theme-lint</code> was worse:
2042
+ <code>npm install stylelint@16 eslint@9</code> re-resolved the whole linter every run, so
2043
+ the linter CI executed was never the linter anyone reviewed. Both trees are now hash-pinned
2044
+ (181 + 81 packages, integrity on every one) and installed with <code>npm ci</code>;
2045
+ <code>dependabot.yml</code> gains both npm directories, because a pin with no update path is
2046
+ only half the job.
2047
+ <b>What the pin immediately exposed.</b> Committing the lock made
2048
+ <code>osv-scanner</code> able to see the transitive tree for the first time, and it failed
2049
+ the branch at once on <b>CVE-2026-14257</b> (<code>brace-expansion</code>, CVSS 7.5,
2050
+ unbounded expansion → OOM). Pre-existing, not introduced: the old floating
2051
+ <code>npm install eslint@9</code> resolved the same package, invisibly. The advisory's range
2052
+ is <i>all versions below 5.0.8</i>, so the 1.x maintenance line has no fix — and the obvious
2053
+ patch, an <code>overrides</code> entry forcing <code>brace-expansion@^5</code>, <b>breaks
2054
+ eslint</b>: v5 exports <code>{ expand }</code> where <code>minimatch@3</code> requires a
2055
+ callable default, so <code>eslint "style/**/*.{js,mjs}"</code> dies with
2056
+ <i>"expand is not a function"</i> while plain <code>eslint style/</code> still passes — a
2057
+ green-looking linter with a broken glob path. The real fix is upstream:
2058
+ <code>eslint@10</code> depends on <code>minimatch@^10.2.5</code>, which requires the patched
2059
+ <code>brace-expansion@^5.0.8</code>. Bumped 9.39.5 → 10.8.0; all 262 packages across both
2060
+ locks now return zero OSV advisories.
2061
+ <b>Open by decision, correctly</b> — <code>BranchProtectionID</code> #33 (4/10) and
2062
+ <code>CodeReviewID</code> #34 (0/26 approved changesets) are two readings of one deliberate
2063
+ choice recorded in <a href="#main-has-no-branch-protection">its own card</a>: require status
2064
+ checks, do <i>not</i> require reviews, because the working model is parallel
2065
+ <code>loop/*</code> branches that self-merge and there is no second reviewer. Every warning
2066
+ Scorecard prints under #33 — stale-review dismissal, required approvers, CODEOWNERS review,
2067
+ last-push approval — follows from that one choice. They stay open because the score is
2068
+ <b>accurate</b>: this repo really does merge without human review. Dismissing them would be
2069
+ the lie.
2070
+ <b>Clears itself</b> — <code>MaintainedID</code> #35 is <i>"repository was created within the
2071
+ last 90 days"</i>. Created 2026-07-17, so it resolves on its own around 2026-10-15. Nothing
2072
+ to do but not dismiss it.
2073
+ <b>Needs a human, not a commit</b> — <code>CIIBestPracticesID</code> #36 is the one
2074
+ remaining actionable finding, and it cannot be fixed from a branch: it asks whether the
2075
+ project is registered for an OpenSSF Best Practices badge, which means creating a project
2076
+ entry at <code>bestpractices.dev</code> under a real account and answering its criteria. The
2077
+ prerequisites are already in place (LICENSE, SECURITY.md, CONTRIBUTING.md,
2078
+ CODE_OF_CONDUCT.md, a published CI gate); only the registration is missing.</p>
2043
2079
  <div class="meta">
2044
2080
  <span class="m">Complexity <b>M</b></span>
2045
2081
  <span class="m">Impact <b>Med</b></span>
2046
2082
  <span class="m">Wow <b class="wow">★★</b></span>
2047
- <span class="m">15 open · 3 fixed, 4 intentional, 5 not code-fixable</span>
2083
+ <span class="m">7 open · 3 now hash-pinned, 3 decided, 1 clears itself</span>
2048
2084
  </div>
2049
2085
  </article>
2050
2086