boost-skill-cli 1.0.284__tar.gz → 1.0.285__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 (534) hide show
  1. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/CLAUDE.md +1 -1
  2. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/Makefile +11 -1
  3. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/PKG-INFO +1 -1
  4. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/_version.py +2 -2
  5. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_skill_cli.egg-info/PKG-INFO +1 -1
  6. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_skill_cli.egg-info/SOURCES.txt +1 -0
  7. boost_skill_cli-1.0.285/docs/roadmap/items/actionlint-skips-shellcheck-silently.md +58 -0
  8. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap.html +55 -1
  9. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/requirements/lint-tools.in +10 -0
  10. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/requirements/lint-tools.txt +7 -0
  11. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/.gitattributes +0 -0
  12. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/.gitignore +0 -0
  13. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/.gitleaks.toml +0 -0
  14. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/.htmlvalidate.json +0 -0
  15. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/.lighthouserc.json +0 -0
  16. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/.lycheeignore +0 -0
  17. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/.markdownlint-cli2.jsonc +0 -0
  18. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/.pre-commit-config.yaml +0 -0
  19. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/.stylelintrc.json +0 -0
  20. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/.vale/styles/boost/Terminology.yml +0 -0
  21. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/.vale/styles/config/vocabularies/boost/accept.txt +0 -0
  22. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/.vale.ini +0 -0
  23. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/CODE_OF_CONDUCT.md +0 -0
  24. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/CONTRIBUTING.md +0 -0
  25. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/LICENSE +0 -0
  26. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/MANIFEST.in +0 -0
  27. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/README.md +0 -0
  28. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/SECURITY.md +0 -0
  29. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost +0 -0
  30. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/__init__.py +0 -0
  31. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/__main__.py +0 -0
  32. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/cli.py +0 -0
  33. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/cliparse.py +0 -0
  34. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/commands/__init__.py +0 -0
  35. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/commands/_common.py +0 -0
  36. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/commands/bmad.py +0 -0
  37. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/commands/configuration.py +0 -0
  38. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/commands/discovery.py +0 -0
  39. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/commands/hooks.py +0 -0
  40. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/commands/info.py +0 -0
  41. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/commands/intelligence.py +0 -0
  42. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/commands/pkg.py +0 -0
  43. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/commands/quality.py +0 -0
  44. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/commands/run.py +0 -0
  45. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/commands/safety.py +0 -0
  46. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/commands/taps.py +0 -0
  47. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/commands/team.py +0 -0
  48. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/__init__.py +0 -0
  49. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/adapters.py +0 -0
  50. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/agents.py +0 -0
  51. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/ai.py +0 -0
  52. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/capabilities.py +0 -0
  53. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/catalog.py +0 -0
  54. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/claude_settings.py +0 -0
  55. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/config.py +0 -0
  56. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/dense.py +0 -0
  57. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/ed25519.py +0 -0
  58. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/embed.py +0 -0
  59. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/faithfulness.py +0 -0
  60. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/frontmatter.py +0 -0
  61. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/gitutil.py +0 -0
  62. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/imperative.py +0 -0
  63. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/injectscan.py +0 -0
  64. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/integrity.py +0 -0
  65. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/journal.py +0 -0
  66. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/lockfile.py +0 -0
  67. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/logs.py +0 -0
  68. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/mcp.py +0 -0
  69. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/mcpdecl.py +0 -0
  70. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/minisign.py +0 -0
  71. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/nethttp.py +0 -0
  72. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/output.py +0 -0
  73. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/paths.py +0 -0
  74. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/policy.py +0 -0
  75. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/projectlock.py +0 -0
  76. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/provenance.py +0 -0
  77. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/rag.py +0 -0
  78. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/registry.py +0 -0
  79. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/resolve.py +0 -0
  80. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/rules.py +0 -0
  81. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/scopes.py +0 -0
  82. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/secretscan.py +0 -0
  83. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/selfupdate.py +0 -0
  84. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/serve.py +0 -0
  85. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/stackprobe.py +0 -0
  86. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/staleness.py +0 -0
  87. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/store.py +0 -0
  88. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/trustaudit.py +0 -0
  89. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/typosquat.py +0 -0
  90. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/updatediff.py +0 -0
  91. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/util.py +0 -0
  92. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/core/workflows.py +0 -0
  93. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/data/registries.json +0 -0
  94. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/errors.py +0 -0
  95. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_cli/spin.py +0 -0
  96. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_skill_cli.egg-info/dependency_links.txt +0 -0
  97. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_skill_cli.egg-info/entry_points.txt +0 -0
  98. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_skill_cli.egg-info/requires.txt +0 -0
  99. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/boost_skill_cli.egg-info/top_level.txt +0 -0
  100. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/codecov.yml +0 -0
  101. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/.claude/settings.local.json +0 -0
  102. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/DEBUGGING.md +0 -0
  103. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/adapters.html +0 -0
  104. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/carousel/gifs/distill.gif +0 -0
  105. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/carousel/gifs/doctor.gif +0 -0
  106. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/carousel/gifs/explain.gif +0 -0
  107. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/carousel/gifs/hooks.gif +0 -0
  108. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/carousel/gifs/install.gif +0 -0
  109. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/carousel/gifs/pulse.gif +0 -0
  110. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/carousel/gifs/search.gif +0 -0
  111. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/carousel/gifs/tap.gif +0 -0
  112. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/carousel/tapes/distill.tape +0 -0
  113. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/carousel/tapes/doctor.tape +0 -0
  114. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/carousel/tapes/explain.tape +0 -0
  115. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/carousel/tapes/hooks.tape +0 -0
  116. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/carousel/tapes/install.tape +0 -0
  117. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/carousel/tapes/pulse.tape +0 -0
  118. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/carousel/tapes/search.tape +0 -0
  119. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/carousel/tapes/tap.tape +0 -0
  120. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/carousel.html +0 -0
  121. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/commands.html +0 -0
  122. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/demo.gif +0 -0
  123. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/demo.tape +0 -0
  124. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/design-roadmap.html +0 -0
  125. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/eval.html +0 -0
  126. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/index.html +0 -0
  127. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/mcp-hub.html +0 -0
  128. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/rag-architecture.md +0 -0
  129. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D01.md +0 -0
  130. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D02.md +0 -0
  131. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D03.md +0 -0
  132. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D04.md +0 -0
  133. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D05.md +0 -0
  134. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D06.md +0 -0
  135. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D07.md +0 -0
  136. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D08.md +0 -0
  137. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D09.md +0 -0
  138. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D10.md +0 -0
  139. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D11.md +0 -0
  140. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D12.md +0 -0
  141. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D13.md +0 -0
  142. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D14.md +0 -0
  143. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D15.md +0 -0
  144. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D16.md +0 -0
  145. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D17.md +0 -0
  146. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D18.md +0 -0
  147. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D19.md +0 -0
  148. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D20.md +0 -0
  149. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D21.md +0 -0
  150. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D22.md +0 -0
  151. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D23.md +0 -0
  152. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D24.md +0 -0
  153. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D25.md +0 -0
  154. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/BOOST-D26.md +0 -0
  155. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/accessibility-audit-pa11y-ci-axe-core.md +0 -0
  156. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/adapter-conformance-langgraph-leg-never-ran.md +0 -0
  157. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/ai-bridge-silent-failure-logging.md +0 -0
  158. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/ambiguous-tap-short-name-resolution.md +0 -0
  159. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/atomic-corruption-safe-lock-file-writes.md +0 -0
  160. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/atomic-skill-install-temp-dir-swap.md +0 -0
  161. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/autonomous-ship-workflow-and-isolated-worktree.md +0 -0
  162. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/boost-run-live-agents.md +0 -0
  163. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/bring-commands-under-mutation-testing.md +0 -0
  164. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/broken-link-and-anchor-checking-lychee.md +0 -0
  165. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/browse-crashes-selecting-a-rule-or-workflow.md +0 -0
  166. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/build-provenance-slsa-attestations.md +0 -0
  167. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/cache-the-catalog-entry-set-across-rag-queries.md +0 -0
  168. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/capability-manifest-and-least-privilege-policy.md +0 -0
  169. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/ci-job-timeout-minutes.md +0 -0
  170. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/ci-summary-step-fails-itself.md +0 -0
  171. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/ci-time-is-now-runner-queueing.md +0 -0
  172. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/clean-env-install-smoke-pip-and-pipx.md +0 -0
  173. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/code-scanning-rule-can-be-restored.md +0 -0
  174. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/codeql-job-rename-stranded-merge-protection.md +0 -0
  175. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/command-carousel-page.md +0 -0
  176. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/command-reference-docs-site.md +0 -0
  177. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/complexity-and-dead-code-radar-xenon-vulture.md +0 -0
  178. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/consolidate-skill-staleness-drift-logic-into-cor.md +0 -0
  179. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/coverage-dashboard-codecov-free-for-oss.md +0 -0
  180. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/coverage-guided-fuzzing-atheris-oss-fuzz.md +0 -0
  181. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/crash-listing-branch-untested.md +0 -0
  182. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/crash-recorder-error-paths-core-logs-py.md +0 -0
  183. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/demo-cannot-open-its-own-pr.md +0 -0
  184. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/demo-gif-workflow-has-never-succeeded.md +0 -0
  185. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/dense-search-fallback-and-stale-tap-pruning.md +0 -0
  186. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/dependabot-missing-pip-ecosystem.md +0 -0
  187. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/dependabot-regeneration-drops-platform-pins.md +0 -0
  188. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/dependabot-root-pip-entry-duplicates-requirements.md +0 -0
  189. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/dependency-cve-gate-pip-audit.md +0 -0
  190. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/docsite-chrome-and-content-audit.md +0 -0
  191. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/docstring-coverage-interrogate.md +0 -0
  192. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/doctor-checks-rules-and-workflows.md +0 -0
  193. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/end-of-options-guard-on-git-commands.md +0 -0
  194. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/extension-free-tests-core-dense-py.md +0 -0
  195. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/extract-mcp-http-servers-out-of-configuration-py.md +0 -0
  196. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/finish-mutation-hardening-across-core.md +0 -0
  197. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/fix-self-update-version-detection-dead-branch.md +0 -0
  198. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/fork-safe-network-proxy-handler.md +0 -0
  199. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/framework-adapter-langgraph.md +0 -0
  200. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/framework-adapter-multi-agent.md +0 -0
  201. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/framework-adapters-boost-adapt.md +0 -0
  202. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/frontmatter-scalar-over-coercion.md +0 -0
  203. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/github-community-health-files.md +0 -0
  204. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/github-pages-deploy-is-broken-every-push.md +0 -0
  205. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/golden-set-statistical-power.md +0 -0
  206. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/hash-pinned-reproducible-toolchain-uv-lock.md +0 -0
  207. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/html-validation-html-validate.md +0 -0
  208. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/install-docs-never-mentioned-upgrading.md +0 -0
  209. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/install-from-path-bypasses-policy-and-pin-checks.md +0 -0
  210. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/install-resolves-skill-dependencies.md +0 -0
  211. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/install-scope-user-or-project.md +0 -0
  212. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/installed-skill-trust-audit.md +0 -0
  213. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/integrity-verification-boost-verify.md +0 -0
  214. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/invocation-pid-logging-for-crash-correlation.md +0 -0
  215. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/journal-rotation-race-and-handle-leak.md +0 -0
  216. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/layering-guard-import-linter.md +0 -0
  217. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/license-compliance-scanning.md +0 -0
  218. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/lighthouse-ci-on-the-pages-site.md +0 -0
  219. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/lint-tap-misscopes-rule-workflow-entries.md +0 -0
  220. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/list-rules-and-workflows.md +0 -0
  221. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/localize-the-stored-bm25-snippet.md +0 -0
  222. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/lock-invariant-cannot-parse-extras-pins.md +0 -0
  223. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/lockfile-enforcement-and-commit-pinning.md +0 -0
  224. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/log-timestamps-mislabeled-utc.md +0 -0
  225. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/lowest-version-resolution-uv-resolution-lowest-d.md +0 -0
  226. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/main-has-no-branch-protection.md +0 -0
  227. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/main-ruleset-ref-pattern-has-literal-quotes.md +0 -0
  228. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/make-lint-masks-actionlint-failures.md +0 -0
  229. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/make-the-roadmaps-discoverable.md +0 -0
  230. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/markdown-consistency-markdownlint-cli2.md +0 -0
  231. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/markdownlint-lints-the-fuzz-corpus.md +0 -0
  232. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/mcp-aware-skills.md +0 -0
  233. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/mcp-check-skills-before-starting-a-task.md +0 -0
  234. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/mcp-hub-diagram-node-text-overflow.md +0 -0
  235. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/mcp-launch-objc-fork-safety.md +0 -0
  236. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/mcp-register-names-server-before-env.md +0 -0
  237. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/mcp-search-before-reinventing.md +0 -0
  238. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/mcp-startup-self-harden-fork-safety.md +0 -0
  239. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/memoize-config-load-in-process.md +0 -0
  240. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/merge-queue-would-deadlock-most-required-checks.md +0 -0
  241. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/merged-loop-branches-are-never-pruned.md +0 -0
  242. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/modernization-smells-refurb-pyupgrade.md +0 -0
  243. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/mutation-gate-was-the-whole-critical-path.md +0 -0
  244. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/mutation-hardening-core-frontmatter-py.md +0 -0
  245. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/mutation-hardening-core-gitutil-py.md +0 -0
  246. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/mutation-hardening-core-store-py.md +0 -0
  247. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/mutation-shard-floor-is-one-file.md +0 -0
  248. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/mypy-strict-mode-for-commands.md +0 -0
  249. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/negative-limit-inverts-log-pulse-output.md +0 -0
  250. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/onboard-overwrites-generated-files-without-confirm.md +0 -0
  251. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/one-command-every-env-nox.md +0 -0
  252. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/one-commit-can-cut-two-releases.md +0 -0
  253. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/one-shared-atomic-write-helper.md +0 -0
  254. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/package-metadata-validation-twine-check-friends.md +0 -0
  255. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/patch-coverage-gate-diff-cover.md +0 -0
  256. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/path-traversal-unsanitized-rule-workflow-name.md +0 -0
  257. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/performance-regression-gate-pytest-benchmark.md +0 -0
  258. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/pin-the-lint-toolchain.md +0 -0
  259. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/post-deploy-always-defeated-by-skipped-setup.md +0 -0
  260. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/post-deploy-smoke-headless-load-check.md +0 -0
  261. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/pre-release-python-canary-3-14t-free-threaded.md +0 -0
  262. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/project-scope-across-every-command.md +0 -0
  263. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/project-scope-symlink-escape-on-write.md +0 -0
  264. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/promote-nav-footer-into-the-shared-style-system.md +0 -0
  265. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/prompt-injection-scanning-of-skill-markdown.md +0 -0
  266. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/property-based-tests-hypothesis-on-the-parsers.md +0 -0
  267. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/prose-and-terminology-linting-vale.md +0 -0
  268. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/prune-ignored-dirs-during-scan-dir-walk.md +0 -0
  269. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/publish-gate-ignores-pip-audit-and-metadata.md +0 -0
  270. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/publish-trigger-was-reachable-from-a-fork.md +0 -0
  271. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/pytest-tmpdir-cve-blocked-by-py39-floor.md +0 -0
  272. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/quality-dashboard-sonarcloud-free-for-oss.md +0 -0
  273. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/ranx-significance-monitor.md +0 -0
  274. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/reconcile-the-theme-drift.md +0 -0
  275. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/refresh-the-marketing-surface.md +0 -0
  276. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/rel-time-tests-race-the-wall-clock.md +0 -0
  277. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/release-verifies-the-wrong-commit.md +0 -0
  278. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/required-checks-can-declare-a-check-that-deadlocks-prs.md +0 -0
  279. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/required-checks-config-drift.md +0 -0
  280. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/retrieval-quality-eval-harness.md +0 -0
  281. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/reuse-helpers-kill-minor-dead-work.md +0 -0
  282. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/roadmap-html-goes-stale-on-every-rebase.md +0 -0
  283. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/robust-tag-argument-parsing.md +0 -0
  284. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/ruff-016-widens-the-default-rule-set.md +0 -0
  285. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/rule-install-native-materialization.md +0 -0
  286. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/runner-egress-monitoring-stepsecurity-harden-run.md +0 -0
  287. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/runtime-explain-faithfulness-guardrail.md +0 -0
  288. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/sbom-aware-scanning-osv-scanner.md +0 -0
  289. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/sbom-declares-the-wrong-version.md +0 -0
  290. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/sbom-on-every-release-cyclonedx-syft.md +0 -0
  291. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/sbom-release-event-never-fires.md +0 -0
  292. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/scan-and-sync-rules-and-workflows.md +0 -0
  293. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/scorecard-findings-triage.md +0 -0
  294. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/second-type-checker-pyright.md +0 -0
  295. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/secret-and-pii-scanning-of-installed-skills.md +0 -0
  296. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/secret-scanning-gitleaks-push-protection.md +0 -0
  297. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/security-linting-bandit-via-ruff-s-rules.md +0 -0
  298. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/self-update-broken-for-pip-pipx-installs.md +0 -0
  299. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/serve-py-traversal-guards-untested.md +0 -0
  300. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/shift-left-gate-pre-commit-pre-commit-ci.md +0 -0
  301. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/single-imperative-rule-extractor.md +0 -0
  302. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/single-tech-stack-prober.md +0 -0
  303. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/split-oversized-command-modules.md +0 -0
  304. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/startup-and-import-time-budget-x-importtime.md +0 -0
  305. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/stop-re-serializing-entry-meta-on-every-search.md +0 -0
  306. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/structured-json-log-output-mode.md +0 -0
  307. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/supply-chain-posture-openssf-scorecard.md +0 -0
  308. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/surface-every-docs-page-from-the-guide.md +0 -0
  309. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/sync-deletes-unowned-broken-symlinks.md +0 -0
  310. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/sync-relinks-into-every-agent-ignoring-scope.md +0 -0
  311. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/tap-signing-and-provenance-sigstore-minisign.md +0 -0
  312. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/theme-asset-linting-stylelint-eslint.md +0 -0
  313. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/typo-detection-codespell.md +0 -0
  314. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/typosquat-and-name-confusion-detection.md +0 -0
  315. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/unify-tilde-two-copies-have-a-boundary-bug.md +0 -0
  316. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/uninstall-has-no-confirmation-prompt.md +0 -0
  317. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/untrack-generated-build-noise.md +0 -0
  318. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/update-diff-before-apply.md +0 -0
  319. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/update-refreshes-rules-and-workflows.md +0 -0
  320. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/update-reinstall-widens-agent-scope.md +0 -0
  321. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/visual-regression-pass-on-the-guide.md +0 -0
  322. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/widen-the-ruff-rule-surface-b-sim-c4-perf-ruf.md +0 -0
  323. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/windows-in-the-ci-matrix.md +0 -0
  324. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/wire-bdd-suite-into-ci.md +0 -0
  325. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/workflow-install-native-materialization.md +0 -0
  326. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/workflow-linting-actionlint.md +0 -0
  327. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/workflow-sast-zizmor.md +0 -0
  328. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/workspace-scope-install.md +0 -0
  329. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/docs/roadmap/items/zizmor-pin-is-a-yanked-release.md +0 -0
  330. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/eslint.config.mjs +0 -0
  331. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/evals/README.md +0 -0
  332. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/evals/__init__.py +0 -0
  333. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/evals/baseline.json +0 -0
  334. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/evals/faithfulness.py +0 -0
  335. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/evals/golden_set.json +0 -0
  336. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/evals/make_corpus.py +0 -0
  337. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/evals/make_golden.py +0 -0
  338. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/evals/metrics.py +0 -0
  339. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/evals/run_evals.py +0 -0
  340. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/examples/README.md +0 -0
  341. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/examples/adapt-demo.sh +0 -0
  342. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/examples/boost-run-prototype.sh +0 -0
  343. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/index.html +0 -0
  344. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/noxfile.py +0 -0
  345. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/pyproject.toml +0 -0
  346. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/requirements/coverage-tools.in +0 -0
  347. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/requirements/coverage-tools.txt +0 -0
  348. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/requirements/mutation-tools.in +0 -0
  349. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/requirements/mutation-tools.txt +0 -0
  350. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/requirements/release-tools.in +0 -0
  351. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/requirements/release-tools.txt +0 -0
  352. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/requirements/test-tools.in +0 -0
  353. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/requirements/test-tools.txt +0 -0
  354. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/a11y_check.py +0 -0
  355. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/bench_cli.sh +0 -0
  356. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/build_command_reference.py +0 -0
  357. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/build_registries.py +0 -0
  358. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/build_roadmap.py +0 -0
  359. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/check_anchors.py +0 -0
  360. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/check_licenses.py +0 -0
  361. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/check_required_checks.py +0 -0
  362. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/ensure_eval_corpus.sh +0 -0
  363. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/eval_explain.py +0 -0
  364. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/eval_gate.py +0 -0
  365. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/eval_recommend.py +0 -0
  366. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/eval_retrieval.py +0 -0
  367. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/eval_stats_summary.py +0 -0
  368. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/import_budget.py +0 -0
  369. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/lock_toolchain.py +0 -0
  370. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/mutation_gate.py +0 -0
  371. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/mutation_shards.py +0 -0
  372. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/mutation_weights.json +0 -0
  373. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/perf_gate.py +0 -0
  374. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/post_deploy_smoke.py +0 -0
  375. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/scripts/release_preflight.py +0 -0
  376. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/setup.cfg +0 -0
  377. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/sonar-project.properties +0 -0
  378. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/style/README.md +0 -0
  379. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/style/boost.css +0 -0
  380. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/style/boost.js +0 -0
  381. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/style/demo.html +0 -0
  382. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/bdd/features/adapt.feature +0 -0
  383. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/bdd/features/browse.feature +0 -0
  384. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/bdd/features/count.feature +0 -0
  385. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/bdd/features/discover.feature +0 -0
  386. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/bdd/features/doctor.feature +0 -0
  387. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/bdd/features/environment.py +0 -0
  388. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/bdd/features/explain.feature +0 -0
  389. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/bdd/features/index.feature +0 -0
  390. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/bdd/features/install.feature +0 -0
  391. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/bdd/features/list.feature +0 -0
  392. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/bdd/features/mcp.feature +0 -0
  393. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/bdd/features/search.feature +0 -0
  394. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/bdd/features/steps/cli_steps.py +0 -0
  395. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/bdd/features/steps/discovery_steps.py +0 -0
  396. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/bdd/features/steps/mcp_steps.py +0 -0
  397. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/bdd/features/steps/quality_steps.py +0 -0
  398. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/conftest.py +0 -0
  399. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/eval/baseline.json +0 -0
  400. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/eval/explain.jsonl +0 -0
  401. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/eval/golden.jsonl +0 -0
  402. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/eval/recommend.jsonl +0 -0
  403. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/eval/taps.txt +0 -0
  404. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/functional/test_capabilities_policy.py +0 -0
  405. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/functional/test_cli_adapt.py +0 -0
  406. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/functional/test_cli_bmad.py +0 -0
  407. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/functional/test_cli_configuration.py +0 -0
  408. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/functional/test_cli_discovery.py +0 -0
  409. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/functional/test_cli_hooks.py +0 -0
  410. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/functional/test_cli_info.py +0 -0
  411. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/functional/test_cli_intelligence.py +0 -0
  412. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/functional/test_cli_pkg.py +0 -0
  413. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/functional/test_cli_quality.py +0 -0
  414. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/functional/test_cli_taps.py +0 -0
  415. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/functional/test_cli_team.py +0 -0
  416. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/functional/test_everyday_loop.py +0 -0
  417. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/functional/test_integrity_enforce.py +0 -0
  418. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/functional/test_property_parsers.py +0 -0
  419. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/functional/test_run.py +0 -0
  420. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/functional/test_tap_signing.py +0 -0
  421. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/functional/test_workspace_scope.py +0 -0
  422. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/README.md +0 -0
  423. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/frontmatter/01-typical.md +0 -0
  424. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/frontmatter/02-lossy-version.md +0 -0
  425. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/frontmatter/03-lossy-numbers.md +0 -0
  426. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/frontmatter/04-lists.md +0 -0
  427. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/frontmatter/05-nested.md +0 -0
  428. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/frontmatter/06-empty-block.md +0 -0
  429. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/frontmatter/07-unterminated.md +0 -0
  430. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/frontmatter/08-none.md +0 -0
  431. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/frontmatter/09-unbalanced-quote.md +0 -0
  432. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/frontmatter/10-keywords.md +0 -0
  433. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/frontmatter/11-crlf.md +0 -0
  434. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/frontmatter/12-bom.md +0 -0
  435. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/registry/01-shorthand.txt +0 -0
  436. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/registry/02-https.txt +0 -0
  437. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/registry/03-ssh.txt +0 -0
  438. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/registry/04-traversal.txt +0 -0
  439. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/registry/05-empty.txt +0 -0
  440. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/registry/06-space.txt +0 -0
  441. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/registry/07-slash.txt +0 -0
  442. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/corpus/registry/08-bare-host.txt +0 -0
  443. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/fuzz_frontmatter.py +0 -0
  444. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/fuzz/fuzz_registry.py +0 -0
  445. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/make_fixture.py +0 -0
  446. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/perf/test_benchmarks.py +0 -0
  447. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/smoke.sh +0 -0
  448. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_a11y_check.py +0 -0
  449. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_adapters.py +0 -0
  450. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_adapters_multi.py +0 -0
  451. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_adapters_runner.py +0 -0
  452. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_agents.py +0 -0
  453. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_ai.py +0 -0
  454. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_capabilities.py +0 -0
  455. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_catalog.py +0 -0
  456. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_check_anchors.py +0 -0
  457. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_check_licenses.py +0 -0
  458. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_claude_settings.py +0 -0
  459. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_cliparse.py +0 -0
  460. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_codeql_analysis_key.py +0 -0
  461. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_command_reference_fresh.py +0 -0
  462. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_community_health_files.py +0 -0
  463. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_config.py +0 -0
  464. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_dense.py +0 -0
  465. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_dense_fallback.py +0 -0
  466. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_dependabot_config.py +0 -0
  467. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_docs_pages_linked.py +0 -0
  468. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_docsite_chrome.py +0 -0
  469. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_ed25519.py +0 -0
  470. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_embed.py +0 -0
  471. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_errors_and_cli_table.py +0 -0
  472. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_eval_faithfulness.py +0 -0
  473. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_eval_gate.py +0 -0
  474. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_eval_metrics.py +0 -0
  475. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_eval_stats_summary.py +0 -0
  476. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_faithfulness.py +0 -0
  477. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_frontmatter.py +0 -0
  478. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_fuzz_targets.py +0 -0
  479. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_gitleaks_config.py +0 -0
  480. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_gitutil.py +0 -0
  481. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_imperative.py +0 -0
  482. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_import_budget.py +0 -0
  483. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_injectscan.py +0 -0
  484. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_integrity.py +0 -0
  485. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_journal.py +0 -0
  486. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_lockfile.py +0 -0
  487. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_logs.py +0 -0
  488. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_marketing_counts.py +0 -0
  489. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_mcp.py +0 -0
  490. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_mcpdecl.py +0 -0
  491. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_minisign.py +0 -0
  492. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_mutation_hardening.py +0 -0
  493. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_mutation_shards.py +0 -0
  494. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_mutmut_source_paths.py +0 -0
  495. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_nethttp.py +0 -0
  496. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_output.py +0 -0
  497. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_paths.py +0 -0
  498. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_perf_gate.py +0 -0
  499. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_pkg_confusions.py +0 -0
  500. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_pkg_injection.py +0 -0
  501. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_pkg_secrets.py +0 -0
  502. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_policy.py +0 -0
  503. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_post_deploy_smoke.py +0 -0
  504. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_projectlock.py +0 -0
  505. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_provenance.py +0 -0
  506. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_rag.py +0 -0
  507. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_registries_fresh.py +0 -0
  508. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_registry.py +0 -0
  509. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_release_preflight.py +0 -0
  510. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_required_checks.py +0 -0
  511. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_resolve.py +0 -0
  512. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_roadmap_fresh.py +0 -0
  513. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_rules.py +0 -0
  514. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_scopes.py +0 -0
  515. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_secretscan.py +0 -0
  516. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_selfupdate.py +0 -0
  517. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_serve.py +0 -0
  518. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_spin.py +0 -0
  519. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_stackprobe.py +0 -0
  520. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_staleness.py +0 -0
  521. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_store.py +0 -0
  522. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_token_parity.py +0 -0
  523. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_toolchain_lock.py +0 -0
  524. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_trustaudit.py +0 -0
  525. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_typosquat.py +0 -0
  526. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_updatediff.py +0 -0
  527. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_util.py +0 -0
  528. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_version.py +0 -0
  529. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_workflow_timeouts.py +0 -0
  530. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/unit/test_workflows.py +0 -0
  531. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/visual/a11y_check.mjs +0 -0
  532. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/visual/console_check.mjs +0 -0
  533. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/visual/package.json +0 -0
  534. {boost_skill_cli-1.0.284 → boost_skill_cli-1.0.285}/tests/visual/visual_check.mjs +0 -0
@@ -11,7 +11,7 @@ make venv # .venv from the hash-pinned requ
11
11
  .venv/bin/pytest tests/unit/test_catalog.py -q # one test file
12
12
  .venv/bin/pytest tests/unit/test_catalog.py::test_scan_dir -q # one test
13
13
  .venv/bin/pytest tests/functional -q -k install # functional tests matching "install"
14
- make lint # the whole static tier — see the recipe, it is 18 commands
14
+ make lint # the whole static tier — read the recipe, it is long
15
15
  make test # unit + functional with 80% coverage gate
16
16
  make check # the full required gate — see table below
17
17
 
@@ -61,7 +61,17 @@ lint:
61
61
  $(VENV)/bin/interrogate boost_cli/core
62
62
  $(VENV)/bin/refurb boost_cli
63
63
  $(VENV)/bin/codespell boost_cli docs README.md
64
- @if command -v actionlint >/dev/null 2>&1; then actionlint; \
64
+ @# actionlint does not lint `run:` blocks itself — it shells out to
65
+ @# shellcheck, and if shellcheck is not on PATH it skips them silently and
66
+ @# still exits 0. So `make lint` could report a clean workflow lint having
67
+ @# never looked inside a single script. shellcheck is pinned in
68
+ @# requirements/lint-tools.in for exactly this; put $(VENV)/bin on PATH so
69
+ @# actionlint finds it, and fail loudly rather than run a hollow check.
70
+ @if command -v actionlint >/dev/null 2>&1; then \
71
+ if [ ! -x $(VENV)/bin/shellcheck ]; then \
72
+ echo "shellcheck missing from $(VENV) — actionlint would skip every run: block. Re-run 'make venv'."; exit 1; \
73
+ fi; \
74
+ PATH="$(CURDIR)/$(VENV)/bin:$$PATH" actionlint; \
65
75
  else echo "actionlint not on PATH — skipping (CI enforces it)"; fi
66
76
  $(PY) scripts/build_registries.py --check
67
77
  $(PY) scripts/build_roadmap.py --check
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: boost-skill-cli
3
- Version: 1.0.284
3
+ Version: 1.0.285
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.284'
22
- __version_tuple__ = version_tuple = (1, 0, 284)
21
+ __version__ = version = '1.0.285'
22
+ __version_tuple__ = version_tuple = (1, 0, 285)
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.284
3
+ Version: 1.0.285
4
4
  Summary: boost — Homebrew for AI coding skills
5
5
  Author: Jonathan Reyes
6
6
  License: GNU GENERAL PUBLIC LICENSE
@@ -155,6 +155,7 @@ docs/roadmap/items/BOOST-D24.md
155
155
  docs/roadmap/items/BOOST-D25.md
156
156
  docs/roadmap/items/BOOST-D26.md
157
157
  docs/roadmap/items/accessibility-audit-pa11y-ci-axe-core.md
158
+ docs/roadmap/items/actionlint-skips-shellcheck-silently.md
158
159
  docs/roadmap/items/adapter-conformance-langgraph-leg-never-ran.md
159
160
  docs/roadmap/items/ai-bridge-silent-failure-logging.md
160
161
  docs/roadmap/items/ambiguous-tap-short-name-resolution.md
@@ -0,0 +1,58 @@
1
+ ---
2
+ id: actionlint-skips-shellcheck-silently
3
+ board: code
4
+ section: dx
5
+ status: shipped
6
+ category: Testing · Bug
7
+ complexity: S
8
+ impact: Med
9
+ wow: 4
10
+ note: fixed — shellcheck is pinned in lint-tools and both gates now assert it is there
11
+ order: 69
12
+ owner: loop/lint-shellcheck
13
+ pr:
14
+ title: The second silent skip &mdash; <code>actionlint</code> runs, and checks no <code>run:</code> block at all
15
+ ---
16
+ <code>make-lint-masks-actionlint-failures</code> fixed the layer everyone can see: <code>make
17
+ lint</code> discarded actionlint's exit status. There is a second layer underneath it, and the
18
+ first fix does not reach it. <b><code>actionlint</code> does not lint <code>run:</code> blocks
19
+ itself.</b> It shells out to <code>shellcheck</code>, and when shellcheck is not on
20
+ <code>PATH</code> it skips every one of them &mdash; no warning, no note, exit 0.
21
+
22
+ Same workflow file, same actionlint binary, only <code>PATH</code> differs:
23
+
24
+ <code>without shellcheck -&gt; (no output) exit=0</code><br>
25
+ <code>with shellcheck -&gt; bad.yml:8:9: shellcheck reported issue in this script: SC2001 &hellip; exit=1</code>
26
+
27
+ So the honest description of the gate before this change was: <code>make lint</code> ran a workflow
28
+ linter that silently declined to look inside any script, and reported success. That is not
29
+ hypothetical either &mdash; it is exactly how an <code>SC2001</code> reached CI from a green local
30
+ gate, in the very change that fixed layer one.
31
+
32
+ <b>CI was not safe, only lucky.</b> Its actionlint step carried the comment "shellcheck is
33
+ preinstalled on the runner, so run: blocks are checked too" &mdash; true today, and an unpinned,
34
+ unversioned, silently revocable dependency on somebody else's base image. If GitHub ever drops it
35
+ from <code>ubuntu-latest</code>, CI degrades to the same hollow check with no signal that anything
36
+ changed. For a repository that hash-pins its entire lint toolchain precisely so an upstream release
37
+ cannot move a gate underneath it, an implicit dependency on a runner image is the same bug in a
38
+ different coat.
39
+
40
+ <b>Shipped.</b> <code>shellcheck-py==0.11.0.1</code> is declared in
41
+ <code>requirements/lint-tools.in</code> and hash-pinned into the generated
42
+ <code>lint-tools.txt</code> like every other tool, which puts it on both sides: CI installs it from
43
+ that lock, and <code>make venv</code> puts it in <code>.venv/bin</code>. <code>make lint</code> now
44
+ prepends <code>.venv/bin</code> to <code>PATH</code> so actionlint can find it, and <b>fails</b> if
45
+ it is missing rather than running a check it knows is hollow; CI asserts <code>command -v
46
+ shellcheck</code> before invoking actionlint. Verified in four states against the real recipe: the
47
+ tool absent (skip message, exit 0), shellcheck missing from the venv (exit 1 with a message naming
48
+ the fix), both present and workflows clean (exit 0), and both present with an <code>SC2001</code> in
49
+ a <code>run:</code> block (exit 1 &mdash; the case that used to pass). The old recipe on that same
50
+ file exits 0.
51
+
52
+ <b>What is deliberately still skipped.</b> If <code>actionlint</code> itself is absent,
53
+ <code>make lint</code> prints a message and continues. Closing that would mean pinning
54
+ <code>actionlint-py</code>, which is sdist-only and fetches the binary from the network at install
55
+ time, and which tracks a different actionlint version than the URL-pinned one CI uses. Trading a
56
+ pinned binary for a build-time download is a worse trade than the skip, so the skip stays and is
57
+ documented rather than quietly tolerated. The wider gap named by the earlier card is also still
58
+ open: <code>zizmor</code> and <code>gitleaks</code> run only in CI and have no Makefile equivalent.
@@ -110,7 +110,7 @@
110
110
  <div class="stat"><b>16</b><span>Shipped</span></div>
111
111
  <div class="stat"><b>1</b><span>Next up</span></div>
112
112
  <div class="stat"><b>4</b><span>Planned</span></div>
113
- <div class="stat"><b>175</b><span>Loop finds</span></div>
113
+ <div class="stat"><b>176</b><span>Loop finds</span></div>
114
114
  <!-- /ROADMAP:stats -->
115
115
  </div>
116
116
  </section>
@@ -3181,6 +3181,60 @@ regresses.</p>
3181
3181
  <span class="m">agent reflex</span>
3182
3182
  </div>
3183
3183
  </article>
3184
+
3185
+ <article class="cap rcard" id="actionlint-skips-shellcheck-silently">
3186
+ <div class="head"><span class="pill shipped">Shipped</span><span class="cat">Testing · Bug</span></div>
3187
+ <h3>The second silent skip &mdash; <code>actionlint</code> runs, and checks no <code>run:</code> block at all</h3>
3188
+ <p><code>make-lint-masks-actionlint-failures</code> fixed the layer everyone can see: <code>make
3189
+ lint</code> discarded actionlint's exit status. There is a second layer underneath it, and the
3190
+ first fix does not reach it. <b><code>actionlint</code> does not lint <code>run:</code> blocks
3191
+ itself.</b> It shells out to <code>shellcheck</code>, and when shellcheck is not on
3192
+ <code>PATH</code> it skips every one of them &mdash; no warning, no note, exit 0.
3193
+
3194
+ Same workflow file, same actionlint binary, only <code>PATH</code> differs:
3195
+
3196
+ <code>without shellcheck -&gt; (no output) exit=0</code><br>
3197
+ <code>with shellcheck -&gt; bad.yml:8:9: shellcheck reported issue in this script: SC2001 &hellip; exit=1</code>
3198
+
3199
+ So the honest description of the gate before this change was: <code>make lint</code> ran a workflow
3200
+ linter that silently declined to look inside any script, and reported success. That is not
3201
+ hypothetical either &mdash; it is exactly how an <code>SC2001</code> reached CI from a green local
3202
+ gate, in the very change that fixed layer one.
3203
+
3204
+ <b>CI was not safe, only lucky.</b> Its actionlint step carried the comment "shellcheck is
3205
+ preinstalled on the runner, so run: blocks are checked too" &mdash; true today, and an unpinned,
3206
+ unversioned, silently revocable dependency on somebody else's base image. If GitHub ever drops it
3207
+ from <code>ubuntu-latest</code>, CI degrades to the same hollow check with no signal that anything
3208
+ changed. For a repository that hash-pins its entire lint toolchain precisely so an upstream release
3209
+ cannot move a gate underneath it, an implicit dependency on a runner image is the same bug in a
3210
+ different coat.
3211
+
3212
+ <b>Shipped.</b> <code>shellcheck-py==0.11.0.1</code> is declared in
3213
+ <code>requirements/lint-tools.in</code> and hash-pinned into the generated
3214
+ <code>lint-tools.txt</code> like every other tool, which puts it on both sides: CI installs it from
3215
+ that lock, and <code>make venv</code> puts it in <code>.venv/bin</code>. <code>make lint</code> now
3216
+ prepends <code>.venv/bin</code> to <code>PATH</code> so actionlint can find it, and <b>fails</b> if
3217
+ it is missing rather than running a check it knows is hollow; CI asserts <code>command -v
3218
+ shellcheck</code> before invoking actionlint. Verified in four states against the real recipe: the
3219
+ tool absent (skip message, exit 0), shellcheck missing from the venv (exit 1 with a message naming
3220
+ the fix), both present and workflows clean (exit 0), and both present with an <code>SC2001</code> in
3221
+ a <code>run:</code> block (exit 1 &mdash; the case that used to pass). The old recipe on that same
3222
+ file exits 0.
3223
+
3224
+ <b>What is deliberately still skipped.</b> If <code>actionlint</code> itself is absent,
3225
+ <code>make lint</code> prints a message and continues. Closing that would mean pinning
3226
+ <code>actionlint-py</code>, which is sdist-only and fetches the binary from the network at install
3227
+ time, and which tracks a different actionlint version than the URL-pinned one CI uses. Trading a
3228
+ pinned binary for a build-time download is a worse trade than the skip, so the skip stays and is
3229
+ documented rather than quietly tolerated. The wider gap named by the earlier card is also still
3230
+ open: <code>zizmor</code> and <code>gitleaks</code> run only in CI and have no Makefile equivalent.</p>
3231
+ <div class="meta">
3232
+ <span class="m">Complexity <b>S</b></span>
3233
+ <span class="m">Impact <b>Med</b></span>
3234
+ <span class="m">Wow <b class="wow">★★★★</b></span>
3235
+ <span class="m">fixed — shellcheck is pinned in lint-tools and both gates now assert it is there</span>
3236
+ </div>
3237
+ </article>
3184
3238
  <!-- /ROADMAP:cards -->
3185
3239
 
3186
3240
  </div>
@@ -30,3 +30,13 @@ interrogate==1.7.0
30
30
  # itself, which is why this set is lint-only and never a runtime dependency.
31
31
  # Reuses the mypy pinned above.
32
32
  refurb==2.3.1
33
+ # shellcheck, as a pinned dependency rather than an assumption. actionlint does
34
+ # not lint `run:` blocks itself — it shells out to shellcheck, and when
35
+ # shellcheck is not on PATH it skips that entirely and still exits 0. Same
36
+ # workflow file, same actionlint: without shellcheck, no output and exit 0; with
37
+ # it, `SC2001` and exit 1. CI got away with it because the GitHub runner image
38
+ # happens to preinstall shellcheck, which is an unpinned, unversioned, silently
39
+ # revocable dependency on somebody else's base image — and locally, where it is
40
+ # usually absent, `make lint` was passing a check it never ran. Pinning it here
41
+ # puts it on both sides and makes the version reviewable like every other tool.
42
+ shellcheck-py==0.11.0.1
@@ -564,6 +564,13 @@ ruff==0.16.0 \
564
564
  --hash=sha256:e5115729eb08c585e5121978ba5d5b60caeae394ce21b9fb5e6cd33a1c6c9b1e \
565
565
  --hash=sha256:e95c448fca1fb2a18372a9440926c5a6ee789639bb975c72e7ae6d0b04218ab4
566
566
  # via -r requirements/lint-tools.in
567
+ shellcheck-py==0.11.0.1 \
568
+ --hash=sha256:1b274df81de5b000ff78db433e7328b87e52e3c38481c60f8e488c3095beef05 \
569
+ --hash=sha256:5c620c88901e8f1d3be5934b31ea99e3310065e1245253741eafd0a275c8c9cc \
570
+ --hash=sha256:6b88d0a244c82ed07e06a53e444da841f69330ca59ae15d4a66c391655dae7a0 \
571
+ --hash=sha256:784156289ecb17e91c692cd783ab5152333309588cabb10032a047331c63e759 \
572
+ --hash=sha256:b6a3fee28efda2e16e38d6e6d59faf7224300256456639727370d404730849e8
573
+ # via -r requirements/lint-tools.in
567
574
  six==1.17.0 \
568
575
  --hash=sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274 \
569
576
  --hash=sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81