boost-skill-cli 1.0.286__tar.gz → 1.0.287__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.286 → boost_skill_cli-1.0.287}/PKG-INFO +1 -1
  2. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/_version.py +2 -2
  3. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_skill_cli.egg-info/PKG-INFO +1 -1
  4. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/bring-commands-under-mutation-testing.md +28 -3
  5. boost_skill_cli-1.0.287/docs/roadmap/items/roadmap-html-goes-stale-on-every-rebase.md +69 -0
  6. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap.html +61 -4
  7. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/build_roadmap.py +5 -0
  8. boost_skill_cli-1.0.286/docs/roadmap/items/roadmap-html-goes-stale-on-every-rebase.md +0 -39
  9. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/.gitattributes +0 -0
  10. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/.gitignore +0 -0
  11. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/.gitleaks.toml +0 -0
  12. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/.htmlvalidate.json +0 -0
  13. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/.lighthouserc.json +0 -0
  14. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/.lycheeignore +0 -0
  15. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/.markdownlint-cli2.jsonc +0 -0
  16. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/.pre-commit-config.yaml +0 -0
  17. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/.stylelintrc.json +0 -0
  18. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/.vale/styles/boost/Terminology.yml +0 -0
  19. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/.vale/styles/config/vocabularies/boost/accept.txt +0 -0
  20. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/.vale.ini +0 -0
  21. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/CLAUDE.md +0 -0
  22. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/CODE_OF_CONDUCT.md +0 -0
  23. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/CONTRIBUTING.md +0 -0
  24. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/LICENSE +0 -0
  25. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/MANIFEST.in +0 -0
  26. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/Makefile +0 -0
  27. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/README.md +0 -0
  28. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/SECURITY.md +0 -0
  29. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost +0 -0
  30. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/__init__.py +0 -0
  31. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/__main__.py +0 -0
  32. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/cli.py +0 -0
  33. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/cliparse.py +0 -0
  34. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/commands/__init__.py +0 -0
  35. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/commands/_common.py +0 -0
  36. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/commands/bmad.py +0 -0
  37. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/commands/configuration.py +0 -0
  38. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/commands/discovery.py +0 -0
  39. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/commands/hooks.py +0 -0
  40. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/commands/info.py +0 -0
  41. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/commands/intelligence.py +0 -0
  42. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/commands/pkg.py +0 -0
  43. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/commands/quality.py +0 -0
  44. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/commands/run.py +0 -0
  45. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/commands/safety.py +0 -0
  46. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/commands/taps.py +0 -0
  47. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/commands/team.py +0 -0
  48. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/__init__.py +0 -0
  49. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/adapters.py +0 -0
  50. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/agents.py +0 -0
  51. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/ai.py +0 -0
  52. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/capabilities.py +0 -0
  53. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/catalog.py +0 -0
  54. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/claude_settings.py +0 -0
  55. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/config.py +0 -0
  56. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/dense.py +0 -0
  57. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/ed25519.py +0 -0
  58. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/embed.py +0 -0
  59. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/faithfulness.py +0 -0
  60. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/frontmatter.py +0 -0
  61. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/gitutil.py +0 -0
  62. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/imperative.py +0 -0
  63. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/injectscan.py +0 -0
  64. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/integrity.py +0 -0
  65. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/journal.py +0 -0
  66. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/lockfile.py +0 -0
  67. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/logs.py +0 -0
  68. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/mcp.py +0 -0
  69. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/mcpdecl.py +0 -0
  70. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/minisign.py +0 -0
  71. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/nethttp.py +0 -0
  72. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/output.py +0 -0
  73. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/paths.py +0 -0
  74. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/policy.py +0 -0
  75. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/projectlock.py +0 -0
  76. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/provenance.py +0 -0
  77. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/rag.py +0 -0
  78. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/registry.py +0 -0
  79. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/resolve.py +0 -0
  80. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/rules.py +0 -0
  81. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/scopes.py +0 -0
  82. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/secretscan.py +0 -0
  83. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/selfupdate.py +0 -0
  84. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/serve.py +0 -0
  85. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/stackprobe.py +0 -0
  86. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/staleness.py +0 -0
  87. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/store.py +0 -0
  88. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/trustaudit.py +0 -0
  89. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/typosquat.py +0 -0
  90. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/updatediff.py +0 -0
  91. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/util.py +0 -0
  92. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/core/workflows.py +0 -0
  93. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/data/registries.json +0 -0
  94. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/errors.py +0 -0
  95. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_cli/spin.py +0 -0
  96. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_skill_cli.egg-info/SOURCES.txt +0 -0
  97. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_skill_cli.egg-info/dependency_links.txt +0 -0
  98. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_skill_cli.egg-info/entry_points.txt +0 -0
  99. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_skill_cli.egg-info/requires.txt +0 -0
  100. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/boost_skill_cli.egg-info/top_level.txt +0 -0
  101. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/codecov.yml +0 -0
  102. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/.claude/settings.local.json +0 -0
  103. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/DEBUGGING.md +0 -0
  104. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/adapters.html +0 -0
  105. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/carousel/gifs/distill.gif +0 -0
  106. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/carousel/gifs/doctor.gif +0 -0
  107. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/carousel/gifs/explain.gif +0 -0
  108. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/carousel/gifs/hooks.gif +0 -0
  109. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/carousel/gifs/install.gif +0 -0
  110. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/carousel/gifs/pulse.gif +0 -0
  111. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/carousel/gifs/search.gif +0 -0
  112. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/carousel/gifs/tap.gif +0 -0
  113. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/carousel/tapes/distill.tape +0 -0
  114. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/carousel/tapes/doctor.tape +0 -0
  115. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/carousel/tapes/explain.tape +0 -0
  116. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/carousel/tapes/hooks.tape +0 -0
  117. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/carousel/tapes/install.tape +0 -0
  118. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/carousel/tapes/pulse.tape +0 -0
  119. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/carousel/tapes/search.tape +0 -0
  120. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/carousel/tapes/tap.tape +0 -0
  121. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/carousel.html +0 -0
  122. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/commands.html +0 -0
  123. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/demo.gif +0 -0
  124. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/demo.tape +0 -0
  125. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/design-roadmap.html +0 -0
  126. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/eval.html +0 -0
  127. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/index.html +0 -0
  128. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/mcp-hub.html +0 -0
  129. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/rag-architecture.md +0 -0
  130. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D01.md +0 -0
  131. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D02.md +0 -0
  132. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D03.md +0 -0
  133. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D04.md +0 -0
  134. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D05.md +0 -0
  135. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D06.md +0 -0
  136. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D07.md +0 -0
  137. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D08.md +0 -0
  138. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D09.md +0 -0
  139. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D10.md +0 -0
  140. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D11.md +0 -0
  141. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D12.md +0 -0
  142. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D13.md +0 -0
  143. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D14.md +0 -0
  144. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D15.md +0 -0
  145. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D16.md +0 -0
  146. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D17.md +0 -0
  147. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D18.md +0 -0
  148. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D19.md +0 -0
  149. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D20.md +0 -0
  150. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D21.md +0 -0
  151. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D22.md +0 -0
  152. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D23.md +0 -0
  153. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D24.md +0 -0
  154. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D25.md +0 -0
  155. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/BOOST-D26.md +0 -0
  156. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/accessibility-audit-pa11y-ci-axe-core.md +0 -0
  157. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/actionlint-skips-shellcheck-silently.md +0 -0
  158. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/adapter-conformance-langgraph-leg-never-ran.md +0 -0
  159. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/ai-bridge-silent-failure-logging.md +0 -0
  160. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/ambiguous-tap-short-name-resolution.md +0 -0
  161. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/atomic-corruption-safe-lock-file-writes.md +0 -0
  162. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/atomic-skill-install-temp-dir-swap.md +0 -0
  163. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/autonomous-ship-workflow-and-isolated-worktree.md +0 -0
  164. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/boost-run-live-agents.md +0 -0
  165. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/broken-link-and-anchor-checking-lychee.md +0 -0
  166. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/browse-crashes-selecting-a-rule-or-workflow.md +0 -0
  167. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/build-provenance-slsa-attestations.md +0 -0
  168. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/cache-the-catalog-entry-set-across-rag-queries.md +0 -0
  169. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/capability-manifest-and-least-privilege-policy.md +0 -0
  170. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/ci-job-timeout-minutes.md +0 -0
  171. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/ci-summary-step-fails-itself.md +0 -0
  172. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/ci-time-is-now-runner-queueing.md +0 -0
  173. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/clean-env-install-smoke-pip-and-pipx.md +0 -0
  174. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/code-scanning-rule-can-be-restored.md +0 -0
  175. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/codeql-job-rename-stranded-merge-protection.md +0 -0
  176. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/command-carousel-page.md +0 -0
  177. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/command-reference-docs-site.md +0 -0
  178. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/complexity-and-dead-code-radar-xenon-vulture.md +0 -0
  179. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/consolidate-skill-staleness-drift-logic-into-cor.md +0 -0
  180. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/coverage-dashboard-codecov-free-for-oss.md +0 -0
  181. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/coverage-guided-fuzzing-atheris-oss-fuzz.md +0 -0
  182. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/crash-listing-branch-untested.md +0 -0
  183. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/crash-recorder-error-paths-core-logs-py.md +0 -0
  184. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/demo-cannot-open-its-own-pr.md +0 -0
  185. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/demo-gif-workflow-has-never-succeeded.md +0 -0
  186. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/dense-search-fallback-and-stale-tap-pruning.md +0 -0
  187. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/dependabot-missing-pip-ecosystem.md +0 -0
  188. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/dependabot-regeneration-drops-platform-pins.md +0 -0
  189. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/dependabot-root-pip-entry-duplicates-requirements.md +0 -0
  190. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/dependency-cve-gate-pip-audit.md +0 -0
  191. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/docsite-chrome-and-content-audit.md +0 -0
  192. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/docstring-coverage-interrogate.md +0 -0
  193. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/doctor-checks-rules-and-workflows.md +0 -0
  194. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/end-of-options-guard-on-git-commands.md +0 -0
  195. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/extension-free-tests-core-dense-py.md +0 -0
  196. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/extract-mcp-http-servers-out-of-configuration-py.md +0 -0
  197. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/finish-mutation-hardening-across-core.md +0 -0
  198. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/fix-self-update-version-detection-dead-branch.md +0 -0
  199. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/fork-safe-network-proxy-handler.md +0 -0
  200. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/framework-adapter-langgraph.md +0 -0
  201. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/framework-adapter-multi-agent.md +0 -0
  202. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/framework-adapters-boost-adapt.md +0 -0
  203. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/frontmatter-scalar-over-coercion.md +0 -0
  204. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/github-community-health-files.md +0 -0
  205. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/github-pages-deploy-is-broken-every-push.md +0 -0
  206. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/golden-set-statistical-power.md +0 -0
  207. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/hash-pinned-reproducible-toolchain-uv-lock.md +0 -0
  208. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/html-validation-html-validate.md +0 -0
  209. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/install-docs-never-mentioned-upgrading.md +0 -0
  210. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/install-from-path-bypasses-policy-and-pin-checks.md +0 -0
  211. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/install-resolves-skill-dependencies.md +0 -0
  212. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/install-scope-user-or-project.md +0 -0
  213. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/installed-skill-trust-audit.md +0 -0
  214. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/integrity-verification-boost-verify.md +0 -0
  215. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/invocation-pid-logging-for-crash-correlation.md +0 -0
  216. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/journal-rotation-race-and-handle-leak.md +0 -0
  217. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/layering-guard-import-linter.md +0 -0
  218. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/license-compliance-scanning.md +0 -0
  219. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/lighthouse-ci-on-the-pages-site.md +0 -0
  220. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/lint-tap-misscopes-rule-workflow-entries.md +0 -0
  221. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/list-rules-and-workflows.md +0 -0
  222. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/localize-the-stored-bm25-snippet.md +0 -0
  223. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/lock-invariant-cannot-parse-extras-pins.md +0 -0
  224. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/lockfile-enforcement-and-commit-pinning.md +0 -0
  225. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/log-timestamps-mislabeled-utc.md +0 -0
  226. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/lowest-version-resolution-uv-resolution-lowest-d.md +0 -0
  227. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/main-has-no-branch-protection.md +0 -0
  228. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/main-ruleset-ref-pattern-has-literal-quotes.md +0 -0
  229. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/make-lint-masks-actionlint-failures.md +0 -0
  230. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/make-the-roadmaps-discoverable.md +0 -0
  231. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/markdown-consistency-markdownlint-cli2.md +0 -0
  232. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/markdownlint-lints-the-fuzz-corpus.md +0 -0
  233. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/mcp-aware-skills.md +0 -0
  234. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/mcp-check-skills-before-starting-a-task.md +0 -0
  235. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/mcp-hub-diagram-node-text-overflow.md +0 -0
  236. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/mcp-launch-objc-fork-safety.md +0 -0
  237. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/mcp-register-names-server-before-env.md +0 -0
  238. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/mcp-search-before-reinventing.md +0 -0
  239. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/mcp-startup-self-harden-fork-safety.md +0 -0
  240. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/memoize-config-load-in-process.md +0 -0
  241. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/merge-queue-would-deadlock-most-required-checks.md +0 -0
  242. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/merged-loop-branches-are-never-pruned.md +0 -0
  243. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/modernization-smells-refurb-pyupgrade.md +0 -0
  244. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/mutation-gate-was-the-whole-critical-path.md +0 -0
  245. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/mutation-hardening-core-frontmatter-py.md +0 -0
  246. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/mutation-hardening-core-gitutil-py.md +0 -0
  247. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/mutation-hardening-core-store-py.md +0 -0
  248. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/mutation-shard-floor-is-one-file.md +0 -0
  249. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/mypy-strict-mode-for-commands.md +0 -0
  250. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/negative-limit-inverts-log-pulse-output.md +0 -0
  251. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/onboard-overwrites-generated-files-without-confirm.md +0 -0
  252. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/one-command-every-env-nox.md +0 -0
  253. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/one-commit-can-cut-two-releases.md +0 -0
  254. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/one-shared-atomic-write-helper.md +0 -0
  255. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/package-metadata-validation-twine-check-friends.md +0 -0
  256. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/patch-coverage-gate-diff-cover.md +0 -0
  257. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/path-traversal-unsanitized-rule-workflow-name.md +0 -0
  258. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/performance-regression-gate-pytest-benchmark.md +0 -0
  259. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/pin-the-lint-toolchain.md +0 -0
  260. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/post-deploy-always-defeated-by-skipped-setup.md +0 -0
  261. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/post-deploy-smoke-headless-load-check.md +0 -0
  262. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/pre-release-python-canary-3-14t-free-threaded.md +0 -0
  263. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/project-scope-across-every-command.md +0 -0
  264. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/project-scope-symlink-escape-on-write.md +0 -0
  265. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/promote-nav-footer-into-the-shared-style-system.md +0 -0
  266. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/prompt-injection-scanning-of-skill-markdown.md +0 -0
  267. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/property-based-tests-hypothesis-on-the-parsers.md +0 -0
  268. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/prose-and-terminology-linting-vale.md +0 -0
  269. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/prune-ignored-dirs-during-scan-dir-walk.md +0 -0
  270. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/publish-gate-ignores-pip-audit-and-metadata.md +0 -0
  271. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/publish-trigger-was-reachable-from-a-fork.md +0 -0
  272. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/pytest-tmpdir-cve-blocked-by-py39-floor.md +0 -0
  273. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/quality-dashboard-sonarcloud-free-for-oss.md +0 -0
  274. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/ranx-significance-monitor.md +0 -0
  275. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/reconcile-the-theme-drift.md +0 -0
  276. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/refresh-the-marketing-surface.md +0 -0
  277. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/rel-time-tests-race-the-wall-clock.md +0 -0
  278. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/release-verifies-the-wrong-commit.md +0 -0
  279. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/required-checks-can-declare-a-check-that-deadlocks-prs.md +0 -0
  280. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/required-checks-config-drift.md +0 -0
  281. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/retrieval-quality-eval-harness.md +0 -0
  282. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/reuse-helpers-kill-minor-dead-work.md +0 -0
  283. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/robust-tag-argument-parsing.md +0 -0
  284. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/ruff-016-widens-the-default-rule-set.md +0 -0
  285. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/rule-install-native-materialization.md +0 -0
  286. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/runner-egress-monitoring-stepsecurity-harden-run.md +0 -0
  287. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/runtime-explain-faithfulness-guardrail.md +0 -0
  288. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/sbom-aware-scanning-osv-scanner.md +0 -0
  289. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/sbom-declares-the-wrong-version.md +0 -0
  290. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/sbom-on-every-release-cyclonedx-syft.md +0 -0
  291. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/sbom-release-event-never-fires.md +0 -0
  292. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/scan-and-sync-rules-and-workflows.md +0 -0
  293. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/scorecard-findings-triage.md +0 -0
  294. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/second-type-checker-pyright.md +0 -0
  295. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/secret-and-pii-scanning-of-installed-skills.md +0 -0
  296. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/secret-scanning-gitleaks-push-protection.md +0 -0
  297. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/security-linting-bandit-via-ruff-s-rules.md +0 -0
  298. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/self-update-broken-for-pip-pipx-installs.md +0 -0
  299. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/serve-py-traversal-guards-untested.md +0 -0
  300. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/shift-left-gate-pre-commit-pre-commit-ci.md +0 -0
  301. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/single-imperative-rule-extractor.md +0 -0
  302. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/single-tech-stack-prober.md +0 -0
  303. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/split-oversized-command-modules.md +0 -0
  304. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/startup-and-import-time-budget-x-importtime.md +0 -0
  305. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/stop-re-serializing-entry-meta-on-every-search.md +0 -0
  306. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/structured-json-log-output-mode.md +0 -0
  307. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/supply-chain-posture-openssf-scorecard.md +0 -0
  308. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/surface-every-docs-page-from-the-guide.md +0 -0
  309. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/sync-deletes-unowned-broken-symlinks.md +0 -0
  310. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/sync-relinks-into-every-agent-ignoring-scope.md +0 -0
  311. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/tap-signing-and-provenance-sigstore-minisign.md +0 -0
  312. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/theme-asset-linting-stylelint-eslint.md +0 -0
  313. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/typo-detection-codespell.md +0 -0
  314. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/typosquat-and-name-confusion-detection.md +0 -0
  315. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/unify-tilde-two-copies-have-a-boundary-bug.md +0 -0
  316. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/uninstall-has-no-confirmation-prompt.md +0 -0
  317. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/untrack-generated-build-noise.md +0 -0
  318. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/update-diff-before-apply.md +0 -0
  319. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/update-refreshes-rules-and-workflows.md +0 -0
  320. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/update-reinstall-widens-agent-scope.md +0 -0
  321. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/visual-regression-pass-on-the-guide.md +0 -0
  322. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/widen-the-ruff-rule-surface-b-sim-c4-perf-ruf.md +0 -0
  323. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/windows-in-the-ci-matrix.md +0 -0
  324. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/wire-bdd-suite-into-ci.md +0 -0
  325. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/workflow-install-native-materialization.md +0 -0
  326. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/workflow-linting-actionlint.md +0 -0
  327. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/workflow-sast-zizmor.md +0 -0
  328. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/workspace-scope-install.md +0 -0
  329. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/docs/roadmap/items/zizmor-pin-is-a-yanked-release.md +0 -0
  330. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/eslint.config.mjs +0 -0
  331. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/evals/README.md +0 -0
  332. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/evals/__init__.py +0 -0
  333. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/evals/baseline.json +0 -0
  334. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/evals/faithfulness.py +0 -0
  335. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/evals/golden_set.json +0 -0
  336. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/evals/make_corpus.py +0 -0
  337. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/evals/make_golden.py +0 -0
  338. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/evals/metrics.py +0 -0
  339. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/evals/run_evals.py +0 -0
  340. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/examples/README.md +0 -0
  341. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/examples/adapt-demo.sh +0 -0
  342. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/examples/boost-run-prototype.sh +0 -0
  343. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/index.html +0 -0
  344. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/noxfile.py +0 -0
  345. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/pyproject.toml +0 -0
  346. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/requirements/coverage-tools.in +0 -0
  347. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/requirements/coverage-tools.txt +0 -0
  348. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/requirements/lint-tools.in +0 -0
  349. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/requirements/lint-tools.txt +0 -0
  350. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/requirements/mutation-tools.in +0 -0
  351. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/requirements/mutation-tools.txt +0 -0
  352. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/requirements/release-tools.in +0 -0
  353. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/requirements/release-tools.txt +0 -0
  354. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/requirements/test-tools.in +0 -0
  355. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/requirements/test-tools.txt +0 -0
  356. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/a11y_check.py +0 -0
  357. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/bench_cli.sh +0 -0
  358. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/build_command_reference.py +0 -0
  359. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/build_registries.py +0 -0
  360. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/check_anchors.py +0 -0
  361. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/check_licenses.py +0 -0
  362. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/check_required_checks.py +0 -0
  363. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/ensure_eval_corpus.sh +0 -0
  364. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/eval_explain.py +0 -0
  365. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/eval_gate.py +0 -0
  366. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/eval_recommend.py +0 -0
  367. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/eval_retrieval.py +0 -0
  368. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/eval_stats_summary.py +0 -0
  369. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/import_budget.py +0 -0
  370. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/lock_toolchain.py +0 -0
  371. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/mutation_gate.py +0 -0
  372. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/mutation_shards.py +0 -0
  373. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/mutation_weights.json +0 -0
  374. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/perf_gate.py +0 -0
  375. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/post_deploy_smoke.py +0 -0
  376. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/scripts/release_preflight.py +0 -0
  377. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/setup.cfg +0 -0
  378. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/sonar-project.properties +0 -0
  379. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/style/README.md +0 -0
  380. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/style/boost.css +0 -0
  381. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/style/boost.js +0 -0
  382. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/style/demo.html +0 -0
  383. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/bdd/features/adapt.feature +0 -0
  384. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/bdd/features/browse.feature +0 -0
  385. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/bdd/features/count.feature +0 -0
  386. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/bdd/features/discover.feature +0 -0
  387. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/bdd/features/doctor.feature +0 -0
  388. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/bdd/features/environment.py +0 -0
  389. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/bdd/features/explain.feature +0 -0
  390. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/bdd/features/index.feature +0 -0
  391. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/bdd/features/install.feature +0 -0
  392. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/bdd/features/list.feature +0 -0
  393. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/bdd/features/mcp.feature +0 -0
  394. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/bdd/features/search.feature +0 -0
  395. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/bdd/features/steps/cli_steps.py +0 -0
  396. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/bdd/features/steps/discovery_steps.py +0 -0
  397. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/bdd/features/steps/mcp_steps.py +0 -0
  398. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/bdd/features/steps/quality_steps.py +0 -0
  399. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/conftest.py +0 -0
  400. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/eval/baseline.json +0 -0
  401. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/eval/explain.jsonl +0 -0
  402. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/eval/golden.jsonl +0 -0
  403. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/eval/recommend.jsonl +0 -0
  404. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/eval/taps.txt +0 -0
  405. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/functional/test_capabilities_policy.py +0 -0
  406. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/functional/test_cli_adapt.py +0 -0
  407. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/functional/test_cli_bmad.py +0 -0
  408. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/functional/test_cli_configuration.py +0 -0
  409. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/functional/test_cli_discovery.py +0 -0
  410. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/functional/test_cli_hooks.py +0 -0
  411. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/functional/test_cli_info.py +0 -0
  412. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/functional/test_cli_intelligence.py +0 -0
  413. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/functional/test_cli_pkg.py +0 -0
  414. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/functional/test_cli_quality.py +0 -0
  415. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/functional/test_cli_taps.py +0 -0
  416. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/functional/test_cli_team.py +0 -0
  417. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/functional/test_everyday_loop.py +0 -0
  418. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/functional/test_integrity_enforce.py +0 -0
  419. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/functional/test_property_parsers.py +0 -0
  420. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/functional/test_run.py +0 -0
  421. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/functional/test_tap_signing.py +0 -0
  422. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/functional/test_workspace_scope.py +0 -0
  423. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/README.md +0 -0
  424. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/frontmatter/01-typical.md +0 -0
  425. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/frontmatter/02-lossy-version.md +0 -0
  426. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/frontmatter/03-lossy-numbers.md +0 -0
  427. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/frontmatter/04-lists.md +0 -0
  428. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/frontmatter/05-nested.md +0 -0
  429. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/frontmatter/06-empty-block.md +0 -0
  430. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/frontmatter/07-unterminated.md +0 -0
  431. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/frontmatter/08-none.md +0 -0
  432. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/frontmatter/09-unbalanced-quote.md +0 -0
  433. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/frontmatter/10-keywords.md +0 -0
  434. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/frontmatter/11-crlf.md +0 -0
  435. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/frontmatter/12-bom.md +0 -0
  436. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/registry/01-shorthand.txt +0 -0
  437. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/registry/02-https.txt +0 -0
  438. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/registry/03-ssh.txt +0 -0
  439. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/registry/04-traversal.txt +0 -0
  440. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/registry/05-empty.txt +0 -0
  441. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/registry/06-space.txt +0 -0
  442. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/registry/07-slash.txt +0 -0
  443. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/corpus/registry/08-bare-host.txt +0 -0
  444. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/fuzz_frontmatter.py +0 -0
  445. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/fuzz/fuzz_registry.py +0 -0
  446. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/make_fixture.py +0 -0
  447. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/perf/test_benchmarks.py +0 -0
  448. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/smoke.sh +0 -0
  449. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_a11y_check.py +0 -0
  450. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_adapters.py +0 -0
  451. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_adapters_multi.py +0 -0
  452. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_adapters_runner.py +0 -0
  453. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_agents.py +0 -0
  454. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_ai.py +0 -0
  455. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_capabilities.py +0 -0
  456. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_catalog.py +0 -0
  457. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_check_anchors.py +0 -0
  458. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_check_licenses.py +0 -0
  459. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_claude_settings.py +0 -0
  460. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_cliparse.py +0 -0
  461. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_codeql_analysis_key.py +0 -0
  462. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_command_reference_fresh.py +0 -0
  463. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_community_health_files.py +0 -0
  464. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_config.py +0 -0
  465. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_dense.py +0 -0
  466. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_dense_fallback.py +0 -0
  467. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_dependabot_config.py +0 -0
  468. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_docs_pages_linked.py +0 -0
  469. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_docsite_chrome.py +0 -0
  470. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_ed25519.py +0 -0
  471. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_embed.py +0 -0
  472. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_errors_and_cli_table.py +0 -0
  473. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_eval_faithfulness.py +0 -0
  474. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_eval_gate.py +0 -0
  475. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_eval_metrics.py +0 -0
  476. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_eval_stats_summary.py +0 -0
  477. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_faithfulness.py +0 -0
  478. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_frontmatter.py +0 -0
  479. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_fuzz_targets.py +0 -0
  480. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_gitleaks_config.py +0 -0
  481. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_gitutil.py +0 -0
  482. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_imperative.py +0 -0
  483. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_import_budget.py +0 -0
  484. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_injectscan.py +0 -0
  485. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_integrity.py +0 -0
  486. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_journal.py +0 -0
  487. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_lockfile.py +0 -0
  488. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_logs.py +0 -0
  489. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_marketing_counts.py +0 -0
  490. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_mcp.py +0 -0
  491. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_mcpdecl.py +0 -0
  492. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_minisign.py +0 -0
  493. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_mutation_hardening.py +0 -0
  494. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_mutation_shards.py +0 -0
  495. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_mutmut_source_paths.py +0 -0
  496. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_nethttp.py +0 -0
  497. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_output.py +0 -0
  498. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_paths.py +0 -0
  499. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_perf_gate.py +0 -0
  500. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_pkg_confusions.py +0 -0
  501. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_pkg_injection.py +0 -0
  502. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_pkg_secrets.py +0 -0
  503. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_policy.py +0 -0
  504. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_post_deploy_smoke.py +0 -0
  505. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_projectlock.py +0 -0
  506. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_provenance.py +0 -0
  507. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_rag.py +0 -0
  508. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_registries_fresh.py +0 -0
  509. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_registry.py +0 -0
  510. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_release_preflight.py +0 -0
  511. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_required_checks.py +0 -0
  512. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_resolve.py +0 -0
  513. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_roadmap_fresh.py +0 -0
  514. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_rules.py +0 -0
  515. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_scopes.py +0 -0
  516. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_secretscan.py +0 -0
  517. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_selfupdate.py +0 -0
  518. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_serve.py +0 -0
  519. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_spin.py +0 -0
  520. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_stackprobe.py +0 -0
  521. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_staleness.py +0 -0
  522. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_store.py +0 -0
  523. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_token_parity.py +0 -0
  524. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_toolchain_lock.py +0 -0
  525. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_trustaudit.py +0 -0
  526. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_typosquat.py +0 -0
  527. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_updatediff.py +0 -0
  528. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_util.py +0 -0
  529. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_version.py +0 -0
  530. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_workflow_timeouts.py +0 -0
  531. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/unit/test_workflows.py +0 -0
  532. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/visual/a11y_check.mjs +0 -0
  533. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/visual/console_check.mjs +0 -0
  534. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/visual/package-lock.json +0 -0
  535. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/visual/package.json +0 -0
  536. {boost_skill_cli-1.0.286 → boost_skill_cli-1.0.287}/tests/visual/visual_check.mjs +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: boost-skill-cli
3
- Version: 1.0.286
3
+ Version: 1.0.287
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.286'
22
- __version_tuple__ = version_tuple = (1, 0, 286)
21
+ __version__ = version = '1.0.287'
22
+ __version_tuple__ = version_tuple = (1, 0, 287)
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.286
3
+ Version: 1.0.287
4
4
  Summary: boost — Homebrew for AI coding skills
5
5
  Author: Jonathan Reyes
6
6
  License: GNU GENERAL PUBLIC LICENSE
@@ -2,14 +2,14 @@
2
2
  id: bring-commands-under-mutation-testing
3
3
  board: code
4
4
  section: planned
5
- status: planned
5
+ status: declined
6
6
  category: Testing · Gap
7
7
  complexity: XL
8
8
  impact: High
9
9
  wow: 3
10
- note:
10
+ note: declined 2026-07-29 — 71.9% measured, and the run cannot complete at all
11
11
  order: 2
12
- owner:
12
+ owner: loop/roadmap-decisions
13
13
  pr:
14
14
  title: Bring <code>commands/</code> under mutation testing
15
15
  ---
@@ -47,3 +47,28 @@ The ~8,100-line command layer has <strong>zero</strong> mutation coverage: mutmu
47
47
  One prerequisite is already fixed: <code>--no-mcp</code> leaked through
48
48
  <code>os.environ</code> and made the suite order-dependent, which mutmut exposes
49
49
  because it runs whichever test subset covers each mutant.
50
+ <b>Declined 2026-07-29.</b> Not "hard" — <em>blocked</em>, and the block is
51
+ upstream. mutmut <b>3.6.0 is still the latest release</b>, and
52
+ <code>src/mutmut/__main__.py:120</code> still reads
53
+ <code>source_paths = [p.resolve(strict=True) for p in Config.get().source_paths]</code>
54
+ — unconditionally, before the <code>max_stack_depth</code> guard — on paths that
55
+ <code>configuration.py:102</code> builds as plain relative <code>Path</code>s. Every
56
+ <code>chdir</code>-ing functional test therefore kills the run, and the functional
57
+ suite is precisely what takes <code>commands/</code> from 17.9% to 91.5% line
58
+ coverage. So the two candidate configurations are "floors out near 18%" and "crashes";
59
+ there is no third. Even granting a fix, the measured numbers already refuse the
60
+ proposal on their own terms: <b>71.9%</b> against an <b>80%</b> blocking floor, with
61
+ survivors spread evenly rather than pooled in one testable gap, at
62
+ <b>2.5–4.5 hours</b> per run against an ~18-minute job. A gate that is 8 points red
63
+ on the day it lands does not gate anything; it just makes <code>main</code> red.
64
+ <b>The lead, if anyone reopens this:</b> the crash is a relative-path bug, and
65
+ <code>source_paths</code> is not required to be relative — an absolute path survives
66
+ <code>resolve(strict=True)</code> from any working directory. Whether the rest of
67
+ mutmut's <code>mutants/</code> copy machinery tolerates one is untested. That, plus a
68
+ non-blocking scheduled job that rotates one module per week, is the shape worth
69
+ trying; a blocking 80% floor is not.
70
+ <b>What is not lost by declining.</b> The architecture already puts behaviour in
71
+ <code>core/</code> — which <em>is</em> mutation-gated at 80% — and keeps
72
+ <code>commands/</code> as thin CLI glue. The uncovered layer is the one deliberately
73
+ designed to hold the least logic, and it still carries 91.5% line coverage from the
74
+ functional suite.
@@ -0,0 +1,69 @@
1
+ ---
2
+ id: roadmap-html-goes-stale-on-every-rebase
3
+ board: code
4
+ section: dx
5
+ status: shipped
6
+ category: DX
7
+ complexity: M
8
+ impact: Med
9
+ wow: 3
10
+ note: two of the three fixes measured dead; one survivor, and it needs a Pages change
11
+ order: 59
12
+ owner: loop/roadmap-stale-diagnosis
13
+ pr: 307
14
+ title: <code>roadmap.html</code> goes stale on every rebase, so a card and a merge race redden the whole matrix
15
+ ---
16
+ The data-driven roadmap solved the conflict problem for <em>item files</em>: two loops adding
17
+ two cards touch two different files and merge cleanly. But <code>docs/roadmap.html</code> is
18
+ still a single committed artifact generated from <b>all</b> of them, and
19
+ <code>update-branch</code> merges it textually.
20
+
21
+ So whenever another roadmap-carrying PR merges first, the rebase brings in the new item
22
+ <code>.md</code> cleanly and leaves the generated HTML behind. The board no longer matches
23
+ <code>docs/roadmap/items/</code>, and both <code>build_roadmap.py --check</code> (in lint) and
24
+ <code>tests/unit/test_roadmap_fresh.py</code> fail — on <b>every</b> test leg, for a PR that
25
+ changed no Python at all. It reads as a catastrophic failure and is really a stale generated
26
+ file.
27
+
28
+ This is not hypothetical: one PR hit it twice in a single afternoon, each time needing a
29
+ manual regenerate-and-push, and the cost scales with the number of concurrent loops — the
30
+ exact workload the item-file split was introduced to support. With <code>strict: true</code>
31
+ every merge rebases every open PR, so any PR carrying a card is guaranteed to hit it if it
32
+ sits behind one other roadmap PR.
33
+
34
+ Options, roughly in order of appeal: have CI regenerate and push the board on the PR branch
35
+ (fixes it silently, needs a bot token and care with the required checks); a custom merge
36
+ driver for the generated boards that reruns the generator instead of merging text; or stop
37
+ committing the HTML and build the site at deploy time (biggest change, and it removes the
38
+ artifact from review). At minimum, make the <code>--check</code> failure message say
39
+ "regenerate after rebasing" so the cause is obvious from the log.
40
+ <b>Update 2026-07-29 — the three options were measured, and two of them do not work.</b>
41
+ First, the repro, because both halves matter and they fail differently. Two branches each
42
+ adding one item to the same section: the <em>cards</em> hard-conflict (same insertion point),
43
+ while the <em>counters</em> merge silently to a wrong value — base <code>N</code>, both sides
44
+ <code>N+1</code>, git keeps <code>N+1</code>, the truth is <code>N+2</code>. So a clean merge
45
+ still fails <code>--check</code>. That is why one root cause reddens ~6 checks.
46
+ <b>"Custom merge driver" is dead.</b> GitHub's server-side merge ignores
47
+ <code>.gitattributes</code> merge strategies — not just custom drivers, the built-in ones too.
48
+ Measured on this repo with four throwaway branches and
49
+ <code>POST /repos/&hellip;/merges</code>: <b>409 without</b> the attribute and <b>409 with</b>
50
+ <code>docs/roadmap.html merge=union</code>, while the identical merge <em>locally</em> succeeds
51
+ cleanly and one <code>build_roadmap.py</code> run makes it correct. The attribute would help
52
+ only whoever resolves the conflict by hand, which is the case that already works.
53
+ <b>"CI regenerates and pushes on the PR branch" is dead too</b>, at least with
54
+ <code>GITHUB_TOKEN</code>: a push made with it deliberately does not trigger workflows, so the
55
+ fix-up commit would land a new head with <b>no check runs at all</b> and the required contexts
56
+ would never report — the PR blocks forever instead of for one cycle. It needs a PAT or a GitHub
57
+ App, i.e. a new long-lived secret with write access to every branch.
58
+ <b>The survivor is the third one</b> — stop committing the generated HTML and build the site at
59
+ deploy time — and it has a prerequisite that is a repository <em>setting</em>, not a commit:
60
+ Pages is currently <code>build_type: legacy</code> serving <code>main:/</code>, so it publishes
61
+ whatever bytes are committed. The artifact cannot leave git until Pages builds it, which means
62
+ either an Actions-built site or a generated <code>gh-pages</code> branch (the pattern
63
+ <code>ci.yml</code> already uses for the coverage badge, and one that does <b>not</b> re-trigger
64
+ <code>ci</code> → <code>publish</code>, so it cuts no extra release). Everything that reads
65
+ <code>docs/*.html</code> off disk — <code>html-validate</code>, <code>visual</code>,
66
+ <code>lighthouse</code>, <code>check_anchors</code>, <code>a11y_check</code>,
67
+ <code>test_docsite_chrome</code> — would need a generate step first, and
68
+ <code>test_roadmap_fresh</code> loses its purpose. That is the whole cost, and it is bounded;
69
+ what it is not is a change one loop should make to a live public site on its own initiative.
@@ -47,6 +47,7 @@
47
47
  .pill.inflight { color: var(--cyan); }
48
48
  .pill.next { color: var(--yellow); }
49
49
  .pill.planned { color: var(--violet); }
50
+ .pill.declined { color: var(--text-3); } /* investigated and rejected — not a stage */
50
51
 
51
52
  .cat { margin-left: auto; font-family: var(--mono); font-size: 11px; color: var(--text-3); letter-spacing: .06em; text-transform: uppercase; }
52
53
 
@@ -478,7 +479,7 @@ message, so routing it through the helper would change user-facing errors.</p>
478
479
  </article>
479
480
 
480
481
  <article class="cap rcard" id="bring-commands-under-mutation-testing">
481
- <div class="head"><span class="pill planned">Planned</span><span class="cat">Testing · Gap</span></div>
482
+ <div class="head"><span class="pill declined">Declined</span><span class="cat">Testing · Gap</span></div>
482
483
  <h3>Bring <code>commands/</code> under mutation testing</h3>
483
484
  <p>The ~8,100-line command layer has <strong>zero</strong> mutation coverage: mutmut is
484
485
  scoped to <code>core/</code> only. A blocking 80% floor was attempted and the
@@ -513,11 +514,37 @@ message, so routing it through the helper would change user-facing errors.</p>
513
514
  errors), and a sibling <code>pytest_add_cli_args</code> takes extra pytest flags.
514
515
  One prerequisite is already fixed: <code>--no-mcp</code> leaked through
515
516
  <code>os.environ</code> and made the suite order-dependent, which mutmut exposes
516
- because it runs whichever test subset covers each mutant.</p>
517
+ because it runs whichever test subset covers each mutant.
518
+ <b>Declined 2026-07-29.</b> Not "hard" — <em>blocked</em>, and the block is
519
+ upstream. mutmut <b>3.6.0 is still the latest release</b>, and
520
+ <code>src/mutmut/__main__.py:120</code> still reads
521
+ <code>source_paths = [p.resolve(strict=True) for p in Config.get().source_paths]</code>
522
+ — unconditionally, before the <code>max_stack_depth</code> guard — on paths that
523
+ <code>configuration.py:102</code> builds as plain relative <code>Path</code>s. Every
524
+ <code>chdir</code>-ing functional test therefore kills the run, and the functional
525
+ suite is precisely what takes <code>commands/</code> from 17.9% to 91.5% line
526
+ coverage. So the two candidate configurations are "floors out near 18%" and "crashes";
527
+ there is no third. Even granting a fix, the measured numbers already refuse the
528
+ proposal on their own terms: <b>71.9%</b> against an <b>80%</b> blocking floor, with
529
+ survivors spread evenly rather than pooled in one testable gap, at
530
+ <b>2.5–4.5 hours</b> per run against an ~18-minute job. A gate that is 8 points red
531
+ on the day it lands does not gate anything; it just makes <code>main</code> red.
532
+ <b>The lead, if anyone reopens this:</b> the crash is a relative-path bug, and
533
+ <code>source_paths</code> is not required to be relative — an absolute path survives
534
+ <code>resolve(strict=True)</code> from any working directory. Whether the rest of
535
+ mutmut's <code>mutants/</code> copy machinery tolerates one is untested. That, plus a
536
+ non-blocking scheduled job that rotates one module per week, is the shape worth
537
+ trying; a blocking 80% floor is not.
538
+ <b>What is not lost by declining.</b> The architecture already puts behaviour in
539
+ <code>core/</code> — which <em>is</em> mutation-gated at 80% — and keeps
540
+ <code>commands/</code> as thin CLI glue. The uncovered layer is the one deliberately
541
+ designed to hold the least logic, and it still carries 91.5% line coverage from the
542
+ functional suite.</p>
517
543
  <div class="meta">
518
544
  <span class="m">Complexity <b>XL</b></span>
519
545
  <span class="m hi">Impact <b>High</b></span>
520
546
  <span class="m">Wow <b class="wow">★★★</b></span>
547
+ <span class="m">declined 2026-07-29 — 71.9% measured, and the run cannot complete at all</span>
521
548
  </div>
522
549
  </article>
523
550
 
@@ -3126,12 +3153,42 @@ Options, roughly in order of appeal: have CI regenerate and push the board on th
3126
3153
  driver for the generated boards that reruns the generator instead of merging text; or stop
3127
3154
  committing the HTML and build the site at deploy time (biggest change, and it removes the
3128
3155
  artifact from review). At minimum, make the <code>--check</code> failure message say
3129
- "regenerate after rebasing" so the cause is obvious from the log.</p>
3156
+ "regenerate after rebasing" so the cause is obvious from the log.
3157
+ <b>Update 2026-07-29 — the three options were measured, and two of them do not work.</b>
3158
+ First, the repro, because both halves matter and they fail differently. Two branches each
3159
+ adding one item to the same section: the <em>cards</em> hard-conflict (same insertion point),
3160
+ while the <em>counters</em> merge silently to a wrong value — base <code>N</code>, both sides
3161
+ <code>N+1</code>, git keeps <code>N+1</code>, the truth is <code>N+2</code>. So a clean merge
3162
+ still fails <code>--check</code>. That is why one root cause reddens ~6 checks.
3163
+ <b>"Custom merge driver" is dead.</b> GitHub's server-side merge ignores
3164
+ <code>.gitattributes</code> merge strategies — not just custom drivers, the built-in ones too.
3165
+ Measured on this repo with four throwaway branches and
3166
+ <code>POST /repos/&hellip;/merges</code>: <b>409 without</b> the attribute and <b>409 with</b>
3167
+ <code>docs/roadmap.html merge=union</code>, while the identical merge <em>locally</em> succeeds
3168
+ cleanly and one <code>build_roadmap.py</code> run makes it correct. The attribute would help
3169
+ only whoever resolves the conflict by hand, which is the case that already works.
3170
+ <b>"CI regenerates and pushes on the PR branch" is dead too</b>, at least with
3171
+ <code>GITHUB_TOKEN</code>: a push made with it deliberately does not trigger workflows, so the
3172
+ fix-up commit would land a new head with <b>no check runs at all</b> and the required contexts
3173
+ would never report — the PR blocks forever instead of for one cycle. It needs a PAT or a GitHub
3174
+ App, i.e. a new long-lived secret with write access to every branch.
3175
+ <b>The survivor is the third one</b> — stop committing the generated HTML and build the site at
3176
+ deploy time — and it has a prerequisite that is a repository <em>setting</em>, not a commit:
3177
+ Pages is currently <code>build_type: legacy</code> serving <code>main:/</code>, so it publishes
3178
+ whatever bytes are committed. The artifact cannot leave git until Pages builds it, which means
3179
+ either an Actions-built site or a generated <code>gh-pages</code> branch (the pattern
3180
+ <code>ci.yml</code> already uses for the coverage badge, and one that does <b>not</b> re-trigger
3181
+ <code>ci</code> → <code>publish</code>, so it cuts no extra release). Everything that reads
3182
+ <code>docs/*.html</code> off disk — <code>html-validate</code>, <code>visual</code>,
3183
+ <code>lighthouse</code>, <code>check_anchors</code>, <code>a11y_check</code>,
3184
+ <code>test_docsite_chrome</code> — would need a generate step first, and
3185
+ <code>test_roadmap_fresh</code> loses its purpose. That is the whole cost, and it is bounded;
3186
+ what it is not is a change one loop should make to a live public site on its own initiative.</p>
3130
3187
  <div class="meta">
3131
3188
  <span class="m">Complexity <b>M</b></span>
3132
3189
  <span class="m">Impact <b>Med</b></span>
3133
3190
  <span class="m">Wow <b class="wow">★★★</b></span>
3134
- <span class="m">hit twice on one PR in a single afternoon</span>
3191
+ <span class="m">two of the three fixes measured dead; one survivor, and it needs a Pages change</span>
3135
3192
  </div>
3136
3193
  </article>
3137
3194
 
@@ -60,6 +60,11 @@ STATUS_LABEL = {
60
60
  "inflight": "In flight",
61
61
  "next": "Next",
62
62
  "planned": "Planned",
63
+ # A measured "no". Without it, an item that was investigated and rejected
64
+ # sits on the board as `planned` forever and reads as backlog, so the next
65
+ # loop scanning for work re-opens the same question. The pill is muted
66
+ # rather than coloured because a decline is not a lifecycle stage.
67
+ "declined": "Declined",
63
68
  }
64
69
 
65
70
  # rstatus class -> visible label (design board).
@@ -1,39 +0,0 @@
1
- ---
2
- id: roadmap-html-goes-stale-on-every-rebase
3
- board: code
4
- section: dx
5
- status: shipped
6
- category: DX
7
- complexity: M
8
- impact: Med
9
- wow: 3
10
- note: hit twice on one PR in a single afternoon
11
- order: 59
12
- owner: loop/roadmap-stale-diagnosis
13
- pr: 307
14
- title: <code>roadmap.html</code> goes stale on every rebase, so a card and a merge race redden the whole matrix
15
- ---
16
- The data-driven roadmap solved the conflict problem for <em>item files</em>: two loops adding
17
- two cards touch two different files and merge cleanly. But <code>docs/roadmap.html</code> is
18
- still a single committed artifact generated from <b>all</b> of them, and
19
- <code>update-branch</code> merges it textually.
20
-
21
- So whenever another roadmap-carrying PR merges first, the rebase brings in the new item
22
- <code>.md</code> cleanly and leaves the generated HTML behind. The board no longer matches
23
- <code>docs/roadmap/items/</code>, and both <code>build_roadmap.py --check</code> (in lint) and
24
- <code>tests/unit/test_roadmap_fresh.py</code> fail — on <b>every</b> test leg, for a PR that
25
- changed no Python at all. It reads as a catastrophic failure and is really a stale generated
26
- file.
27
-
28
- This is not hypothetical: one PR hit it twice in a single afternoon, each time needing a
29
- manual regenerate-and-push, and the cost scales with the number of concurrent loops — the
30
- exact workload the item-file split was introduced to support. With <code>strict: true</code>
31
- every merge rebases every open PR, so any PR carrying a card is guaranteed to hit it if it
32
- sits behind one other roadmap PR.
33
-
34
- Options, roughly in order of appeal: have CI regenerate and push the board on the PR branch
35
- (fixes it silently, needs a bot token and care with the required checks); a custom merge
36
- driver for the generated boards that reruns the generator instead of merging text; or stop
37
- committing the HTML and build the site at deploy time (biggest change, and it removes the
38
- artifact from review). At minimum, make the <code>--check</code> failure message say
39
- "regenerate after rebasing" so the cause is obvious from the log.