boost-skill-cli 1.2.172__tar.gz → 1.2.174__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 (1135) hide show
  1. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/PKG-INFO +1 -1
  2. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/_version.py +2 -2
  3. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_skill_cli.egg-info/PKG-INFO +1 -1
  4. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_skill_cli.egg-info/SOURCES.txt +2 -0
  5. boost_skill_cli-1.2.174/docs/roadmap/items/cancelled-ci-on-main-is-silent-and-skips-the-release.md +114 -0
  6. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/shard-weights-do-not-predict-the-job-timeout.md +40 -3
  7. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap.html +149 -3
  8. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/mutation_shards.py +218 -11
  9. boost_skill_cli-1.2.174/tests/unit/test_failure_alerting_covers_unattended.py +556 -0
  10. boost_skill_cli-1.2.174/tests/unit/test_mutation_shard_count.py +336 -0
  11. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_mutation_subfile_shards.py +3 -2
  12. boost_skill_cli-1.2.172/tests/unit/test_failure_alerting_covers_unattended.py +0 -200
  13. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/.gitattributes +0 -0
  14. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/.gitignore +0 -0
  15. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/.gitleaks.toml +0 -0
  16. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/.htmlvalidate.json +0 -0
  17. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/.lighthouserc.json +0 -0
  18. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/.lycheeignore +0 -0
  19. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/.markdownlint-cli2.jsonc +0 -0
  20. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/.pre-commit-config.yaml +0 -0
  21. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/.stylelintrc.json +0 -0
  22. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/.vale/styles/boost/AIWriting.yml +0 -0
  23. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/.vale/styles/boost/Terminology.yml +0 -0
  24. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/.vale/styles/config/vocabularies/boost/accept.txt +0 -0
  25. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/.vale.ini +0 -0
  26. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/CLAUDE.md +0 -0
  27. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/CODE_OF_CONDUCT.md +0 -0
  28. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/CONTRIBUTING.md +0 -0
  29. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/DCO +0 -0
  30. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/GOVERNANCE.md +0 -0
  31. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/LICENSE +0 -0
  32. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/MAINTAINERS.md +0 -0
  33. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/MANIFEST.in +0 -0
  34. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/Makefile +0 -0
  35. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/README.md +0 -0
  36. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/SECURITY.md +0 -0
  37. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/SUPPORT.md +0 -0
  38. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost +0 -0
  39. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/__init__.py +0 -0
  40. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/__main__.py +0 -0
  41. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/cli.py +0 -0
  42. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/cliparse.py +0 -0
  43. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/commands/__init__.py +0 -0
  44. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/commands/_common.py +0 -0
  45. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/commands/bmad.py +0 -0
  46. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/commands/configuration.py +0 -0
  47. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/commands/discovery.py +0 -0
  48. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/commands/hooks.py +0 -0
  49. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/commands/info.py +0 -0
  50. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/commands/intelligence.py +0 -0
  51. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/commands/pkg.py +0 -0
  52. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/commands/quality.py +0 -0
  53. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/commands/quickstart.py +0 -0
  54. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/commands/run.py +0 -0
  55. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/commands/safety.py +0 -0
  56. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/commands/taps.py +0 -0
  57. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/commands/team.py +0 -0
  58. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/__init__.py +0 -0
  59. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/adapters.py +0 -0
  60. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/agents.py +0 -0
  61. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/ai.py +0 -0
  62. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/aihost.py +0 -0
  63. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/archive.py +0 -0
  64. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/bmad.py +0 -0
  65. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/bootstrap.py +0 -0
  66. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/browse.py +0 -0
  67. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/builtin.py +0 -0
  68. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/capabilities.py +0 -0
  69. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/catalog.py +0 -0
  70. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/catalogbundle.py +0 -0
  71. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/chat.py +0 -0
  72. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/claude_settings.py +0 -0
  73. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/cohort.py +0 -0
  74. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/compact.py +0 -0
  75. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/complete.py +0 -0
  76. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/config.py +0 -0
  77. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/dense.py +0 -0
  78. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/deps.py +0 -0
  79. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/discovery.py +0 -0
  80. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/ed25519.py +0 -0
  81. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/embed.py +0 -0
  82. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/faithfulness.py +0 -0
  83. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/frontmatter.py +0 -0
  84. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/gitutil.py +0 -0
  85. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/hookhost.py +0 -0
  86. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/imperative.py +0 -0
  87. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/injectscan.py +0 -0
  88. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/installscan.py +0 -0
  89. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/integrity.py +0 -0
  90. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/journal.py +0 -0
  91. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/jsonstate.py +0 -0
  92. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/localembed.py +0 -0
  93. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/lockfile.py +0 -0
  94. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/logs.py +0 -0
  95. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/mcp.py +0 -0
  96. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/mcpdecl.py +0 -0
  97. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/mcphost.py +0 -0
  98. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/minisign.py +0 -0
  99. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/nethttp.py +0 -0
  100. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/output.py +0 -0
  101. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/paths.py +0 -0
  102. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/policy.py +0 -0
  103. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/prereq.py +0 -0
  104. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/projectlock.py +0 -0
  105. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/provenance.py +0 -0
  106. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/rag.py +0 -0
  107. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/registry.py +0 -0
  108. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/report.py +0 -0
  109. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/resolve.py +0 -0
  110. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/rules.py +0 -0
  111. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/scopes.py +0 -0
  112. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/secretscan.py +0 -0
  113. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/selfupdate.py +0 -0
  114. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/serve.py +0 -0
  115. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/shards.py +0 -0
  116. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/stackprobe.py +0 -0
  117. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/staleness.py +0 -0
  118. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/store.py +0 -0
  119. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/trustaudit.py +0 -0
  120. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/typedvalue.py +0 -0
  121. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/typosquat.py +0 -0
  122. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/updatediff.py +0 -0
  123. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/util.py +0 -0
  124. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/core/workflows.py +0 -0
  125. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/data/registries.json +0 -0
  126. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/data/rules/boost-first.mdc +0 -0
  127. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/errors.py +0 -0
  128. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_cli/spin.py +0 -0
  129. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_langchain/__init__.py +0 -0
  130. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_langchain/_compat.py +0 -0
  131. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_langchain/graph.py +0 -0
  132. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_langchain/loader.py +0 -0
  133. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_langchain/py.typed +0 -0
  134. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_langchain/retriever.py +0 -0
  135. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_skill_cli.egg-info/dependency_links.txt +0 -0
  136. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_skill_cli.egg-info/entry_points.txt +0 -0
  137. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_skill_cli.egg-info/requires.txt +0 -0
  138. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/boost_skill_cli.egg-info/top_level.txt +0 -0
  139. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/codecov.yml +0 -0
  140. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/DEBUGGING.md +0 -0
  141. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/adapters.html +0 -0
  142. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/architecture/README.md +0 -0
  143. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/architecture/c4-components-core.md +0 -0
  144. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/architecture/c4-containers.md +0 -0
  145. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/architecture/c4-context.md +0 -0
  146. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/architecture/c4-dynamic-install.md +0 -0
  147. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/bmad.md +0 -0
  148. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/carousel/gifs/distill.gif +0 -0
  149. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/carousel/gifs/doctor.gif +0 -0
  150. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/carousel/gifs/explain.gif +0 -0
  151. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/carousel/gifs/hooks.gif +0 -0
  152. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/carousel/gifs/install.gif +0 -0
  153. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/carousel/gifs/pulse.gif +0 -0
  154. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/carousel/gifs/search.gif +0 -0
  155. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/carousel/gifs/tap.gif +0 -0
  156. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/carousel/tapes/distill.tape +0 -0
  157. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/carousel/tapes/doctor.tape +0 -0
  158. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/carousel/tapes/explain.tape +0 -0
  159. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/carousel/tapes/hooks.tape +0 -0
  160. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/carousel/tapes/install.tape +0 -0
  161. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/carousel/tapes/pulse.tape +0 -0
  162. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/carousel/tapes/search.tape +0 -0
  163. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/carousel/tapes/tap.tape +0 -0
  164. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/carousel.html +0 -0
  165. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/chat.html +0 -0
  166. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/code-review.md +0 -0
  167. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/commands.html +0 -0
  168. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/commit-audit.md +0 -0
  169. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/demo-index.json +0 -0
  170. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/demo.gif +0 -0
  171. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/demo.html +0 -0
  172. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/demo.tape +0 -0
  173. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/dependencies.md +0 -0
  174. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/design-roadmap.html +0 -0
  175. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/eval-latest.json +0 -0
  176. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/eval.html +0 -0
  177. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/index.html +0 -0
  178. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/langchain.html +0 -0
  179. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/mcp-hub.html +0 -0
  180. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/openssf-badge.md +0 -0
  181. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/openssf-playbook.md +0 -0
  182. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/rag-architecture.md +0 -0
  183. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D01.md +0 -0
  184. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D02.md +0 -0
  185. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D03.md +0 -0
  186. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D04.md +0 -0
  187. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D05.md +0 -0
  188. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D06.md +0 -0
  189. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D07.md +0 -0
  190. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D08.md +0 -0
  191. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D09.md +0 -0
  192. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D10.md +0 -0
  193. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D11.md +0 -0
  194. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D12.md +0 -0
  195. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D13.md +0 -0
  196. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D14.md +0 -0
  197. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D15.md +0 -0
  198. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D16.md +0 -0
  199. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D17.md +0 -0
  200. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D18.md +0 -0
  201. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D19.md +0 -0
  202. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D20.md +0 -0
  203. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D21.md +0 -0
  204. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D22.md +0 -0
  205. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D23.md +0 -0
  206. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D24.md +0 -0
  207. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D25.md +0 -0
  208. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D26.md +0 -0
  209. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/BOOST-D27.md +0 -0
  210. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/a-correct-link-in-a-locked-dir-reads-as-refused.md +0 -0
  211. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/a-new-shipped-card-always-404s-its-own-write-up-link.md +0 -0
  212. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/a-refusal-and-its-remedy-never-wrapped.md +0 -0
  213. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/a11y-sweep-flakes-on-color-contrast.md +0 -0
  214. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/accessibility-audit-pa11y-ci-axe-core.md +0 -0
  215. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/actionlint-skips-shellcheck-silently.md +0 -0
  216. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/adapter-conformance-langgraph-leg-never-ran.md +0 -0
  217. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/agent-dir-shapes-install-still-trips-on.md +0 -0
  218. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/agents-field-records-the-request-not-the-links.md +0 -0
  219. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/ai-backend-fanout.md +0 -0
  220. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/ai-bridge-silent-failure-logging.md +0 -0
  221. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/ambiguous-tap-short-name-resolution.md +0 -0
  222. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/an-item-materialized-nowhere-reads-ok-in-verify-health-drift.md +0 -0
  223. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/atomic-corruption-safe-lock-file-writes.md +0 -0
  224. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/atomic-skill-install-temp-dir-swap.md +0 -0
  225. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-absorb-findings.md +0 -0
  226. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-adapt-findings.md +0 -0
  227. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-adapt-renders-every-sibling-of-a-flat-agents-dir-workflow-as.md +0 -0
  228. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-adapt-run-stats-edit-tag-export-reject-the-tap-name-qualifie.md +0 -0
  229. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-ai-degrade-note-blames-path-api-keys-regardless-of-cause-sev.md +0 -0
  230. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-attest-findings.md +0 -0
  231. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-audit-findings.md +0 -0
  232. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-bmad-findings.md +0 -0
  233. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-browse-findings.md +0 -0
  234. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-bundle-findings.md +0 -0
  235. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-catalog-findings.md +0 -0
  236. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-catalog-resolve-one-s-duplicate-name-hint-advertises-path-to.md +0 -0
  237. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-changelog-findings.md +0 -0
  238. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-chat-findings.md +0 -0
  239. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-clean-counts-failed-removals-as-cleaned-journals-the-inflate.md +0 -0
  240. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-cli-py-commands-summaries-and-parser-help-contradict-behavio.md +0 -0
  241. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-cohort-findings.md +0 -0
  242. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-completions-findings.md +0 -0
  243. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-config-findings.md +0 -0
  244. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-config-policy-set-store-type-unchecked-values-consumers-cras.md +0 -0
  245. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-context-findings.md +0 -0
  246. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-corrupt-settings-config-state-json-silently-read-as-empty-th.md +0 -0
  247. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-create-distill-infer-absorb-install-silently-replace-an-inst.md +0 -0
  248. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-create-findings.md +0 -0
  249. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-declined-confirms-never-name-y-boost-assume-yes-snapshot-cle.md +0 -0
  250. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-deps-findings.md +0 -0
  251. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-discover-findings.md +0 -0
  252. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-distill-s-heuristic-merge-drops-repeated-fences-braces-writi.md +0 -0
  253. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-doctor-findings.md +0 -0
  254. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-drift-findings.md +0 -0
  255. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-dry-runs-disagree-with-the-real-run-compact-counts-bytes-it.md +0 -0
  256. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-edit-findings.md +0 -0
  257. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-evolve-findings.md +0 -0
  258. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-explain-findings.md +0 -0
  259. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-export-findings.md +0 -0
  260. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-export-o-cohort-create-and-profile-save-silently-overwrite-e.md +0 -0
  261. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-fingerprint-findings.md +0 -0
  262. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-five-exit-70-crashes-on-bad-paths-data-catalog-export-serve.md +0 -0
  263. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-focus-profile-sideline-by-unlinking-without-recording-it-lis.md +0 -0
  264. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-git-operations-never-set-git-terminal-prompt-0-so-a-404-priv.md +0 -0
  265. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-health-findings.md +0 -0
  266. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-hooks-remove-n-cannot-find-hooks-boost-itself-added-unknown.md +0 -0
  267. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-import-all-skips-the-injection-secret-scans-and-the-per-skil.md +0 -0
  268. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-import-findings.md +0 -0
  269. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-index-findings.md +0 -0
  270. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-info-stats-explain-render-a-different-smaller-shape-for-rule.md +0 -0
  271. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-install-dry-run-promises-agents-the-real-install-never-write.md +0 -0
  272. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-install-findings.md +0 -0
  273. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-install-local-writes-empties-the-repo-s-mcp-json-silently-of.md +0 -0
  274. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-json-accepted-but-ignored-on-many-branches-cohort-config-pol.md +0 -0
  275. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-lint-findings.md +0 -0
  276. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-log-findings.md +0 -0
  277. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-log-simulate-changelog-headings-echo-the-raw-qualified-argum.md +0 -0
  278. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-mcp-findings.md +0 -0
  279. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-mcp-register-s-boost-first-consent-names-only-the-registered.md +0 -0
  280. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-missing-json-on-doctor-test-health-changelog-trending-log-ho.md +0 -0
  281. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-name-miss-errors-unknown-tap-qualifier-unnamed-no-close-matc.md +0 -0
  282. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-onboard-findings.md +0 -0
  283. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-out-table-clips-data-columns-to-an-assumed-80-columns-when-s.md +0 -0
  284. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-out-warn-defaults-to-stdout-infer-absorb-corrupt-skill-md-se.md +0 -0
  285. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-outdated-findings.md +0 -0
  286. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-output-wrap-tokens-splits-punctuation-off-backtick-spans-ins.md +0 -0
  287. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-pinned-taps-silently-moved-to-head-by-update-re-clone-and-co.md +0 -0
  288. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-policy-findings.md +0 -0
  289. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-preview-findings.md +0 -0
  290. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-profile-findings.md +0 -0
  291. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-project-scope-seams-uninstall-verify-list-info-reinstall-dis.md +0 -0
  292. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-protocol-findings.md +0 -0
  293. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-pulse-findings.md +0 -0
  294. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-quarantine-findings.md +0 -0
  295. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-quarantine-pin-state-invisible-list-info-doctor-report-links.md +0 -0
  296. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-quickstart-findings.md +0 -0
  297. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-recommend-findings.md +0 -0
  298. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-reindex-findings.md +0 -0
  299. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-reinstall-sync-repair-and-audit-resolve-by-name-tap-ignoring.md +0 -0
  300. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-replay-findings.md +0 -0
  301. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-root-findings.md +0 -0
  302. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-rules-workflows-reported-as-skills-uninstall-claims-a-store.md +0 -0
  303. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-run-findings.md +0 -0
  304. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-schedule-findings.md +0 -0
  305. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-search-findings.md +0 -0
  306. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-simulate-findings.md +0 -0
  307. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-singular-plural-misses-1-skills-1-issue-need-1-skill-pass-ac.md +0 -0
  308. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-six-count-flags-tap-chat-absorb-lint-changelog-hooks-skip-ut.md +0 -0
  309. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-skill-profile-name-slugging-is-inconsistent-distill-o-accept.md +0 -0
  310. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-snapshot-restore-replaces-the-lock-wholesale-orphaning-newer.md +0 -0
  311. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-stale-prose-after-shipped-changes-catalog-export-live-discov.md +0 -0
  312. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-stray-positionals-and-inapplicable-flags-silently-ignored-ac.md +0 -0
  313. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-sweep-positionals-json-lack-help-strings-and-no-command-help.md +0 -0
  314. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-sync-findings.md +0 -0
  315. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-tag-findings.md +0 -0
  316. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-tap-dry-run-is-silently-ignored-outside-catalog-spec-and-def.md +0 -0
  317. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-tap-findings.md +0 -0
  318. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-taps-findings.md +0 -0
  319. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-taps-outdated-decay-policy-snapshot-json-emit-display-string.md +0 -0
  320. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-test-findings.md +0 -0
  321. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-trust-findings.md +0 -0
  322. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-trust-verify-labels-a-manifest-tampered-after-signing-by-a-t.md +0 -0
  323. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-unpin-findings.md +0 -0
  324. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-untap-findings.md +0 -0
  325. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-update-findings.md +0 -0
  326. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-verify-drift-say-nothing-installed-exit-0-and-doctor-says-lo.md +0 -0
  327. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-verify-findings.md +0 -0
  328. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/audit-who-findings.md +0 -0
  329. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/autonomous-ship-workflow-and-isolated-worktree.md +0 -0
  330. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/bare-boost-never-names-an-entry-point.md +0 -0
  331. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/because-that-was-not-the-reason.md +0 -0
  332. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/bm25-empty-tokenization-kills-catalog-fallback.md +0 -0
  333. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/bm25-has-no-stemming.md +0 -0
  334. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/bm25-index-is-one-json-blob.md +0 -0
  335. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/bmad-autopilot-one-command-persona-routing.md +0 -0
  336. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/bmad-done-contract-ignores-the-track.md +0 -0
  337. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/bmad-gemini-gets-claude-hook-output.md +0 -0
  338. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/bmad-hooks-all-hosts.md +0 -0
  339. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/bmad-personas-delegate-outside-the-router.md +0 -0
  340. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/bmad-roster-drifted-from-bmad-6-12.md +0 -0
  341. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/bmad-route-ignores-autopilot-state.md +0 -0
  342. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/bmad-router-one-keyword-decides-the-track.md +0 -0
  343. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/bmad-router-reads-each-prompt-alone.md +0 -0
  344. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/boost-first-carried-the-losing-trigger.md +0 -0
  345. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/boost-first-rule.md +0 -0
  346. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/boost-langchain-publishing.md +0 -0
  347. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/boost-run-live-agents.md +0 -0
  348. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/branch-current-gate.md +0 -0
  349. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/bring-commands-under-mutation-testing.md +0 -0
  350. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/broken-link-and-anchor-checking-lychee.md +0 -0
  351. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/browse-could-not-search-two-words.md +0 -0
  352. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/browse-crashes-selecting-a-rule-or-workflow.md +0 -0
  353. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/build-provenance-slsa-attestations.md +0 -0
  354. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/cache-the-catalog-entry-set-across-rag-queries.md +0 -0
  355. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/cache-writers-that-still-crash-on-a-read-only-cache.md +0 -0
  356. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/canary-deps-check-skips-in-the-required-job.md +0 -0
  357. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/capability-manifest-and-least-privilege-policy.md +0 -0
  358. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/capability-policy-skips-rules-and-workflows.md +0 -0
  359. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/catalog-categories-beyond-curated.md +0 -0
  360. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/catalogue-entries-carry-no-content-identity.md +0 -0
  361. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/chat-cites-sources-by-a-number-it-never-prints.md +0 -0
  362. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/chat-command-grounded-conversational-search.md +0 -0
  363. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/ci-job-timeout-minutes.md +0 -0
  364. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/ci-summary-reports-the-wrong-coverage-gate.md +0 -0
  365. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/ci-summary-step-fails-itself.md +0 -0
  366. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/ci-time-is-now-runner-queueing.md +0 -0
  367. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/claude-md-instructs-the-wrong-licence-header.md +0 -0
  368. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/clean-env-install-smoke-pip-and-pipx.md +0 -0
  369. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/cli-audit-2026-08-full-sweep.md +0 -0
  370. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/cli-command-audit.md +0 -0
  371. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/cli-output-ignored-the-terminal.md +0 -0
  372. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/code-scanning-rule-can-be-restored.md +0 -0
  373. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/codeql-job-rename-stranded-merge-protection.md +0 -0
  374. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/codex-hooks-timeout-units-are-unestablished.md +0 -0
  375. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/codex-is-not-an-mcp-host.md +0 -0
  376. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/cold-search-reads-the-whole-catalogue.md +0 -0
  377. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/command-carousel-page.md +0 -0
  378. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/command-reference-docs-site.md +0 -0
  379. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/compact-answers-a-named-tap-with-a-global-all-clear.md +0 -0
  380. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/completions-complete-only-command-names.md +0 -0
  381. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/completions-install-could-eat-your-rc-file.md +0 -0
  382. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/complexity-and-dead-code-radar-xenon-vulture.md +0 -0
  383. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/concurrency-probe-measured-a-race-not-the-pool.md +0 -0
  384. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/concurrent-rag-builds-delete-each-others-temp-index.md +0 -0
  385. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/config-json-edge-shapes-crash-or-disagree.md +0 -0
  386. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/consolidate-skill-staleness-drift-logic-into-cor.md +0 -0
  387. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/corpus-refresh-updates-data-not-prose.md +0 -0
  388. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/corrupt-config-reads-as-ready-to-set-up.md +0 -0
  389. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/count-flags-that-silently-invert.md +0 -0
  390. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/coverage-dashboard-codecov-free-for-oss.md +0 -0
  391. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/coverage-guided-fuzzing-atheris-oss-fuzz.md +0 -0
  392. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/crash-listing-branch-untested.md +0 -0
  393. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/crash-recorder-error-paths-core-logs-py.md +0 -0
  394. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/crash-reports-leak-api-keys.md +0 -0
  395. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/delay-true-defeats-the-log-suppress.md +0 -0
  396. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/demo-cannot-open-its-own-pr.md +0 -0
  397. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/demo-gif-workflow-has-never-succeeded.md +0 -0
  398. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/demo-workflow-cancels-other-prs.md +0 -0
  399. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/dense-kill-switch-has-no-reason-state.md +0 -0
  400. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/dense-local-built-store-displaced-by-a-key.md +0 -0
  401. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/dense-no-key-guard-is-unreachable.md +0 -0
  402. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/dense-ready-but-embedder-cannot-run.md +0 -0
  403. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/dense-reindex-has-no-progress-or-durability.md +0 -0
  404. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/dense-reindex-reuses-whole-taps.md +0 -0
  405. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/dense-search-fallback-and-stale-tap-pruning.md +0 -0
  406. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/dense-search-rescans-every-vector.md +0 -0
  407. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/dense-store-holds-every-vector-once-per-copy.md +0 -0
  408. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/dependabot-missing-pip-ecosystem.md +0 -0
  409. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/dependabot-regeneration-drops-platform-pins.md +0 -0
  410. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/dependabot-root-pip-entry-duplicates-requirements.md +0 -0
  411. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/dependabot-splits-multi-path-action-repos.md +0 -0
  412. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/dependency-cve-gate-pip-audit.md +0 -0
  413. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/discover-searches-github-not-a-stale-sample.md +0 -0
  414. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/docsite-chrome-and-content-audit.md +0 -0
  415. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/docstring-coverage-interrogate.md +0 -0
  416. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/doctor-checks-rules-and-workflows.md +0 -0
  417. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/doctor-prescribes-sync-that-deletes-live-links.md +0 -0
  418. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/dry-run-promised-a-link-nobody-makes.md +0 -0
  419. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/efficiency-registries-ponytail-caveman.md +0 -0
  420. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/end-of-options-guard-on-git-commands.md +0 -0
  421. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/err-colour-judged-by-stdout.md +0 -0
  422. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/err-multiline-hint-colours-across-the-newline.md +0 -0
  423. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/est-items-counts-agent-mirrors-as-items.md +0 -0
  424. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/eval-corpus-cannot-see-real-retrieval.md +0 -0
  425. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/eval-corpus-counted-by-the-method-the-repo-disavows.md +0 -0
  426. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/eval-corpus-duplication-is-intra-tap-not-mirrors.md +0 -0
  427. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/eval-corpus-is-96x-smaller-than-a-real-install.md +0 -0
  428. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/eval-corpus-is-one-strangers-repo.md +0 -0
  429. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/eval-corpus-pins-have-no-refresh-path.md +0 -0
  430. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/eval-corpus-was-not-actually-pinned.md +0 -0
  431. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/eval-deduped-ranked-lists-by-name.md +0 -0
  432. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/eval-floor-calibration-stale-after-pin-refresh.md +0 -0
  433. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/eval-gate-scores-a-body-less-corpus.md +0 -0
  434. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/eval-stats-could-never-publish.md +0 -0
  435. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/exemplar-graded-golden-set-runs-in-no-gate.md +0 -0
  436. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/expanded-card-bodies-overflow.md +0 -0
  437. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/explain-outline-has-no-cap.md +0 -0
  438. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/extension-free-tests-core-dense-py.md +0 -0
  439. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/extract-mcp-http-servers-out-of-configuration-py.md +0 -0
  440. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/finish-mutation-hardening-across-core.md +0 -0
  441. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/fix-self-update-version-detection-dead-branch.md +0 -0
  442. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/floors-job-never-installed-setuptools.md +0 -0
  443. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/fork-safe-network-proxy-handler.md +0 -0
  444. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/framework-adapter-langgraph.md +0 -0
  445. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/framework-adapter-multi-agent.md +0 -0
  446. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/framework-adapters-boost-adapt.md +0 -0
  447. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/free-threaded-canary-warns-about-nothing.md +0 -0
  448. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/frontmatter-scalar-over-coercion.md +0 -0
  449. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/gate-parity-test-ignores-k-and-golden.md +0 -0
  450. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/gated-golden-set-has-zero-exemplars.md +0 -0
  451. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/gemini-agent-frontmatter-sanitizer.md +0 -0
  452. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/gemini-cli-agent-target.md +0 -0
  453. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/gemini-duplicate-skill-discovery.md +0 -0
  454. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/gemini-hooks-host-aware.md +0 -0
  455. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/gemini-mcp-parity.md +0 -0
  456. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/github-community-health-files.md +0 -0
  457. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/github-pages-deploy-is-broken-every-push.md +0 -0
  458. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/golden-set-grades-by-name-not-by-skill.md +0 -0
  459. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/golden-set-statistical-power.md +0 -0
  460. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/gstack-tap-first-then-coexistence.md +0 -0
  461. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/hash-pinned-reproducible-toolchain-uv-lock.md +0 -0
  462. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/heal-deleted-links-it-never-made.md +0 -0
  463. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/hooks-list-drops-the-name-before-the-host.md +0 -0
  464. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/html-validation-html-validate.md +0 -0
  465. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/identifier-columns-shrink-to-a-name-no-command-accepts.md +0 -0
  466. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/import-budget-gate-passes-when-boost-cannot-import.md +0 -0
  467. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/info-deps-materialize-a-dir-they-then-reject.md +0 -0
  468. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/info-rejects-the-qualified-name-it-recommends.md +0 -0
  469. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/install-cannot-tell-a-skill-needs-another-one.md +0 -0
  470. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/install-docs-never-mentioned-upgrading.md +0 -0
  471. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/install-from-path-bypasses-policy-and-pin-checks.md +0 -0
  472. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/install-path-disambiguation.md +0 -0
  473. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/install-paths-that-still-drop-the-result.md +0 -0
  474. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/install-resolves-skill-dependencies.md +0 -0
  475. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/install-scope-user-or-project.md +0 -0
  476. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/install-writes-through-a-redirected-dotdir-uninstall-will-not.md +0 -0
  477. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/installed-skill-trust-audit.md +0 -0
  478. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/integrity-verification-boost-verify.md +0 -0
  479. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/internal-architecture-diagrams.md +0 -0
  480. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/invocation-pid-logging-for-crash-correlation.md +0 -0
  481. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/is-dir-follows-a-symlink-at-eleven-rmtree-call-sites.md +0 -0
  482. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/journal-rotation-race-and-handle-leak.md +0 -0
  483. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/keyed-no-store-hint-disagrees-with-shard-remedy.md +0 -0
  484. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/keyless-dense-tier-local-static-embeddings.md +0 -0
  485. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/keyless-semantic-search-for-everyone.md +0 -0
  486. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/langchain-in-the-wheel.md +0 -0
  487. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/langchain-integration-explainer-page.md +0 -0
  488. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/langchain-langgraph-langsmith-integration.md +0 -0
  489. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/langchain-retriever-metadata-and-k-floor.md +0 -0
  490. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/layering-guard-import-linter.md +0 -0
  491. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/license-compliance-scanning.md +0 -0
  492. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/lighthouse-ci-on-the-pages-site.md +0 -0
  493. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/lighthouse-flips-on-byte-identical-input.md +0 -0
  494. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/lighthouse-scored-a-page-nobody-is-served.md +0 -0
  495. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/links-job-503s-its-own-write-up-links.md +0 -0
  496. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/lint-tap-misscopes-rule-workflow-entries.md +0 -0
  497. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/list-rules-and-workflows.md +0 -0
  498. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/localize-the-stored-bm25-snippet.md +0 -0
  499. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/lock-invariant-cannot-parse-extras-pins.md +0 -0
  500. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/lock-kept-links-it-had-just-removed.md +0 -0
  501. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/lockfile-enforcement-and-commit-pinning.md +0 -0
  502. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/log-timestamps-mislabeled-utc.md +0 -0
  503. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/long-hints-overflow-narrow-panes.md +0 -0
  504. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/lowest-version-resolution-uv-resolution-lowest-d.md +0 -0
  505. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/main-has-no-branch-protection.md +0 -0
  506. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/main-ruleset-ref-pattern-has-literal-quotes.md +0 -0
  507. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/make-lint-masks-actionlint-failures.md +0 -0
  508. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/make-the-roadmaps-discoverable.md +0 -0
  509. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/manifest-in-prunes-only-the-root-copy.md +0 -0
  510. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/markdown-consistency-markdownlint-cli2.md +0 -0
  511. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/markdownlint-lints-the-fuzz-corpus.md +0 -0
  512. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/marketing-crm-domain-had-no-category.md +0 -0
  513. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-already-covered-defeater.md +0 -0
  514. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-aware-skills.md +0 -0
  515. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-cannot-read-a-skill-before-installing.md +0 -0
  516. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-check-skills-before-starting-a-task.md +0 -0
  517. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-doctor-says-healthy-where-mcp-search-says-nothing-is-tapped.md +0 -0
  518. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-hub-diagram-node-text-overflow.md +0 -0
  519. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-install-description-omits-antigravity.md +0 -0
  520. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-install-skips-the-injection-scan.md +0 -0
  521. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-launch-objc-fork-safety.md +0 -0
  522. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-miss-reply-echoes-the-whole-query.md +0 -0
  523. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-one-benefit-nameable-task.md +0 -0
  524. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-register-names-server-before-env.md +0 -0
  525. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-registration-writes-outside-a-sandboxed-home.md +0 -0
  526. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-search-before-reinventing.md +0 -0
  527. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-search-cost-overstated-on-keyless-machines.md +0 -0
  528. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-search-cost-was-understated.md +0 -0
  529. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-search-hid-which-ranking-ran.md +0 -0
  530. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-server-dies-on-a-valid-json-message-that-is-not-an-object.md +0 -0
  531. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-servers-ignore-install-scope.md +0 -0
  532. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-session-dies-on-a-deeply-nested-json-line.md +0 -0
  533. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-skip-list-absent-from-tool-descriptions.md +0 -0
  534. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-startup-self-harden-fork-safety.md +0 -0
  535. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mcp-zero-setup-and-three-kinds.md +0 -0
  536. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/memoize-config-load-in-process.md +0 -0
  537. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/merge-queue-would-deadlock-most-required-checks.md +0 -0
  538. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/merged-loop-branches-are-never-pruned.md +0 -0
  539. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/modernization-smells-refurb-pyupgrade.md +0 -0
  540. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mutation-gate-was-the-whole-critical-path.md +0 -0
  541. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mutation-hardening-core-frontmatter-py.md +0 -0
  542. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mutation-hardening-core-gitutil-py.md +0 -0
  543. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mutation-hardening-core-store-py.md +0 -0
  544. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mutation-shard-balance-hints-are-a-release-behind.md +0 -0
  545. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mutation-shard-floor-is-one-file.md +0 -0
  546. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mutation-shards-rerun-full-set-every-push.md +0 -0
  547. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/mypy-strict-mode-for-commands.md +0 -0
  548. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/near-duplicate-items-eat-the-result-slots.md +0 -0
  549. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/near-identical-copies-still-eat-the-slots.md +0 -0
  550. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/negative-limit-inverts-log-pulse-output.md +0 -0
  551. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/onboard-overwrites-generated-files-without-confirm.md +0 -0
  552. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/one-bad-agent-dir-silences-the-whole-doctor-report.md +0 -0
  553. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/one-command-every-env-nox.md +0 -0
  554. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/one-commit-can-cut-two-releases.md +0 -0
  555. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/one-dead-tap-broke-every-update.md +0 -0
  556. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/one-failed-shard-job-drops-registries-from-the-manifest.md +0 -0
  557. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/one-shared-atomic-write-helper.md +0 -0
  558. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/openssf-best-practices-badge.md +0 -0
  559. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/openssf-gold-ceiling.md +0 -0
  560. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/openssf-playbook.md +0 -0
  561. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/openssf-silver.md +0 -0
  562. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/osps-baseline-levels.md +0 -0
  563. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/package-metadata-validation-twine-check-friends.md +0 -0
  564. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/panel-fits-data-to-an-assumed-80-in-a-pipe.md +0 -0
  565. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/patch-coverage-gate-diff-cover.md +0 -0
  566. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/path-traversal-unsanitized-rule-workflow-name.md +0 -0
  567. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/pathlib-exists-is-not-total.md +0 -0
  568. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/pep585-604-modernization-sweep.md +0 -0
  569. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/performance-regression-gate-pytest-benchmark.md +0 -0
  570. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/pin-the-lint-toolchain.md +0 -0
  571. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/post-deploy-always-defeated-by-skipped-setup.md +0 -0
  572. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/post-deploy-smoke-headless-load-check.md +0 -0
  573. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/pre-release-python-canary-3-14t-free-threaded.md +0 -0
  574. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/prerequisites-and-semantic-search-setup.md +0 -0
  575. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/project-scope-across-every-command.md +0 -0
  576. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/project-scope-in-an-unmarked-tree-does-not-walk-up.md +0 -0
  577. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/project-scope-symlink-escape-on-write.md +0 -0
  578. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/project-uninstall-deletes-any-in-repo-directory-the-lock-names.md +0 -0
  579. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/promote-nav-footer-into-the-shared-style-system.md +0 -0
  580. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/prompt-injection-scanning-of-skill-markdown.md +0 -0
  581. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/property-based-tests-hypothesis-on-the-parsers.md +0 -0
  582. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/prose-and-terminology-linting-vale.md +0 -0
  583. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/prune-ignored-dirs-during-scan-dir-walk.md +0 -0
  584. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/publish-gate-ignores-pip-audit-and-metadata.md +0 -0
  585. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/publish-the-keyword-index.md +0 -0
  586. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/publish-trigger-was-reachable-from-a-fork.md +0 -0
  587. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/published-shards-have-no-consumer.md +0 -0
  588. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/pytest-tmpdir-cve-blocked-by-py39-floor.md +0 -0
  589. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/python-floor-moves-to-312.md +0 -0
  590. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/quality-dashboard-sonarcloud-free-for-oss.md +0 -0
  591. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/quickstart-drops-incompatible-shard-status.md +0 -0
  592. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/quickstart-manifest-error-drops-hint-and-misnames-cause.md +0 -0
  593. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/quickstart-rerun-retargets-tapped-registries.md +0 -0
  594. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/quickstart-says-ready-exit-0-after-every-tap-failed.md +0 -0
  595. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/quickstart-shard-download-invisible-in-preview-and-run.md +0 -0
  596. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/ragas-unpin-when-upstream-ships.md +0 -0
  597. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/ranx-significance-monitor.md +0 -0
  598. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/read-only-boost-home-with-no-cache-dir.md +0 -0
  599. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/readme-81-command-table-lists-80-omits-quickstart.md +0 -0
  600. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/readme-hero-installs-a-name-no-starter-registry-ships.md +0 -0
  601. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/readme-prune-and-search-guide.md +0 -0
  602. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/reclone-leaves-a-clone-on-head-when-it-cannot-reach-the-pin.md +0 -0
  603. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/recommend-recomputes-its-columns-per-row.md +0 -0
  604. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/reconcile-the-theme-drift.md +0 -0
  605. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/refresh-strands-the-natural-set-baseline.md +0 -0
  606. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/refresh-the-marketing-surface.md +0 -0
  607. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/reindex-reported-a-completeness-share-it-could-not-compute.md +0 -0
  608. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/rel-time-tests-race-the-wall-clock.md +0 -0
  609. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/release-guard-fails-open-when-it-cannot-read-tags.md +0 -0
  610. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/release-verifies-the-wrong-commit.md +0 -0
  611. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/relicence-apache-2.md +0 -0
  612. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/reproducible-release-artifacts.md +0 -0
  613. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/required-checks-can-declare-a-check-that-deadlocks-prs.md +0 -0
  614. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/required-checks-config-drift.md +0 -0
  615. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/required-eval-gate-still-grades-by-name.md +0 -0
  616. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/resolve-vendored-duplicate-copies.md +0 -0
  617. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/retrieval-quality-eval-harness.md +0 -0
  618. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/reuse-helpers-kill-minor-dead-work.md +0 -0
  619. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/roadmap-boards-advertise-python-39.md +0 -0
  620. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/roadmap-html-goes-stale-on-every-rebase.md +0 -0
  621. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/roadmap-page-weight-grows-without-bound.md +0 -0
  622. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/roadmap-perf-budget-has-no-local-guard.md +0 -0
  623. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/robust-tag-argument-parsing.md +0 -0
  624. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/ruff-016-widens-the-default-rule-set.md +0 -0
  625. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/rule-and-workflow-rows-carry-a-scope-nothing-but-list-local-reads.md +0 -0
  626. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/rule-install-native-materialization.md +0 -0
  627. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/rules-install-but-cannot-be-governed.md +0 -0
  628. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/runner-egress-monitoring-stepsecurity-harden-run.md +0 -0
  629. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/runtime-explain-faithfulness-guardrail.md +0 -0
  630. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/sandbox-fixture-does-not-sandbox-the-working-directory.md +0 -0
  631. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/sbom-aware-scanning-osv-scanner.md +0 -0
  632. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/sbom-declares-the-wrong-version.md +0 -0
  633. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/sbom-on-every-release-cyclonedx-syft.md +0 -0
  634. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/sbom-release-event-never-fires.md +0 -0
  635. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/scan-and-sync-rules-and-workflows.md +0 -0
  636. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/scheduled-toolchain-lock-regeneration.md +0 -0
  637. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/scorecard-findings-triage.md +0 -0
  638. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/scripts-under-the-lint-gate.md +0 -0
  639. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/search-and-browse-visual-refresh.md +0 -0
  640. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/search-caps-the-two-copyable-identifiers.md +0 -0
  641. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/search-drops-symbol-language-queries-silently.md +0 -0
  642. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/search-footer-not-fitted-to-the-pane-its-rows-were-fitted-to.md +0 -0
  643. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/search-footer-overflows-40-col-pane-gate-passes-by-luck.md +0 -0
  644. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/search-never-notices-a-new-tap.md +0 -0
  645. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/search-relevance-meter-is-constant-on-default-page.md +0 -0
  646. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/search-rows-use-term-width-so-piping-drops-the-tap-column.md +0 -0
  647. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/second-type-checker-pyright.md +0 -0
  648. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/secret-and-pii-scanning-of-installed-skills.md +0 -0
  649. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/secret-scanning-gitleaks-push-protection.md +0 -0
  650. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/security-linting-bandit-via-ruff-s-rules.md +0 -0
  651. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/self-update-broken-for-pip-pipx-installs.md +0 -0
  652. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/self-update-claims-up-to-date-without-asking.md +0 -0
  653. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/serve-404-reflected-the-request.md +0 -0
  654. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/serve-is-a-searchable-catalogue.md +0 -0
  655. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/serve-py-traversal-guards-untested.md +0 -0
  656. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/shard-refresh-skips-processed-commits.md +0 -0
  657. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/shard-runs-reembed-everything-weekly.md +0 -0
  658. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/shards-pipeline-never-produced-a-shard.md +0 -0
  659. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/shareable-catalogue-bundle.md +0 -0
  660. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/shift-left-gate-pre-commit-pre-commit-ci.md +0 -0
  661. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/shrink-the-published-index.md +0 -0
  662. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/single-imperative-rule-extractor.md +0 -0
  663. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/single-tech-stack-prober.md +0 -0
  664. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/smart-rerank-pays-per-novel-query.md +0 -0
  665. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/split-oversized-command-modules.md +0 -0
  666. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/stale-gate-sizes-in-readme-and-contributing.md +0 -0
  667. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/stale-tap-hint-dead-for-tap-only-installs.md +0 -0
  668. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/startup-and-import-time-budget-x-importtime.md +0 -0
  669. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/stop-re-serializing-entry-meta-on-every-search.md +0 -0
  670. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/structured-json-log-output-mode.md +0 -0
  671. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/supply-chain-posture-openssf-scorecard.md +0 -0
  672. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/surface-dehyphenation-rationale-is-false.md +0 -0
  673. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/surface-every-docs-page-from-the-guide.md +0 -0
  674. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/sweep-died-at-a-page-not-at-launch.md +0 -0
  675. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/sweep-died-at-launch-not-at-a-page.md +0 -0
  676. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/sync-could-not-repair-a-gutted-skill.md +0 -0
  677. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/sync-deletes-unowned-broken-symlinks.md +0 -0
  678. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/sync-relinks-into-every-agent-ignoring-scope.md +0 -0
  679. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/sync-repairs-a-disabled-agents-row-every-run.md +0 -0
  680. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/sync-reported-success-for-a-link-it-refused.md +0 -0
  681. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/table-fit-widths-floor-destroys-columns-and-still-overflows.md +0 -0
  682. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/tap-signing-and-provenance-sigstore-minisign.md +0 -0
  683. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/taps-check-out-freight-they-never-index.md +0 -0
  684. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/taps-vouches-for-a-clone-that-is-not-there.md +0 -0
  685. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/text-io-leaves-its-encoding-to-the-locale.md +0 -0
  686. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/the-catalogue-advertised-repos-that-no-longer-exist.md +0 -0
  687. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/the-install-path-hands-agy-claudes-mcp-argv.md +0 -0
  688. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/the-links-concurrency-cap-did-not-hold.md +0 -0
  689. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/the-model-back-off-mixes-two-clocks.md +0 -0
  690. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/the-scale-corpus-refreshed-the-wrong-rows.md +0 -0
  691. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/the-shard-job-that-could-not-finish.md +0 -0
  692. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/the-windows-test-cap-is-five-minutes-from-the-measurement.md +0 -0
  693. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/theme-asset-linting-stylelint-eslint.md +0 -0
  694. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/tier3-ceiling-unreachable-at-default-n.md +0 -0
  695. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/tool-call-eval-tier.md +0 -0
  696. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/two-ci-controls-that-could-not-act.md +0 -0
  697. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/two-crashes-that-should-have-been-messages.md +0 -0
  698. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/typo-detection-codespell.md +0 -0
  699. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/typos-reported-as-boost-bugs.md +0 -0
  700. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/typosquat-and-name-confusion-detection.md +0 -0
  701. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/unify-tilde-two-copies-have-a-boundary-bug.md +0 -0
  702. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/uninstall-has-no-confirmation-prompt.md +0 -0
  703. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/uninstall-local-cannot-remove-a-rule-or-workflow-list-local-shows.md +0 -0
  704. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/unreadable-tap-cache-healthy-doctor-crashing-heal.md +0 -0
  705. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/untrack-generated-build-noise.md +0 -0
  706. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/unwatched-crons-hid-a-real-fuzz-crash.md +0 -0
  707. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/unwritable-agent-dir-has-no-remedy.md +0 -0
  708. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/unwritable-rule-or-workflow-dir-crashes-install.md +0 -0
  709. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/update-advertises-a-flag-it-rejects.md +0 -0
  710. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/update-diff-before-apply.md +0 -0
  711. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/update-refreshed-rules-without-a-gate.md +0 -0
  712. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/update-refreshes-rules-and-workflows.md +0 -0
  713. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/update-reinstall-widens-agent-scope.md +0 -0
  714. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/util-rmtree-chmods-a-symlink-target-outside-the-tree.md +0 -0
  715. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/vex-openvex-feed.md +0 -0
  716. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/visual-regression-pass-on-the-guide.md +0 -0
  717. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/weekly-vectors-had-no-ingestion-path.md +0 -0
  718. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/widen-the-ruff-rule-surface-b-sim-c4-perf-ruf.md +0 -0
  719. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/windows-in-the-ci-matrix.md +0 -0
  720. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/wire-bdd-suite-into-ci.md +0 -0
  721. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/workflow-install-native-materialization.md +0 -0
  722. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/workflow-linting-actionlint.md +0 -0
  723. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/workflow-sast-zizmor.md +0 -0
  724. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/workspace-scope-install.md +0 -0
  725. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/wrap-width-judged-by-stdout.md +0 -0
  726. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/writers-whose-bytes-are-compared-do-not-pin-their-newline.md +0 -0
  727. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/zip-strict-audit.md +0 -0
  728. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/zizmor-ignores-drift-and-make-lint-never-ran-it.md +0 -0
  729. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/roadmap/items/zizmor-pin-is-a-yanked-release.md +0 -0
  730. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/security-design.md +0 -0
  731. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/semantic-search.md +0 -0
  732. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/superpowers/specs/2026-08-16-catalogue-content-identity-design.md +0 -0
  733. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/verifying-releases.md +0 -0
  734. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/vex/meta.md +0 -0
  735. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/vex/openvex.json +0 -0
  736. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/vex/statements/gitleaks-secretscan-test-fixtures.md +0 -0
  737. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/vex/statements/quality-trust-fingerprint-not-sensitive.md +0 -0
  738. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/vex/statements/zizmor-adhoc-packages-lint-runners.md +0 -0
  739. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/docs/vex/statements/zizmor-dangerous-triggers-workflow-run.md +0 -0
  740. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/eslint.config.mjs +0 -0
  741. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/evals/README.md +0 -0
  742. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/evals/__init__.py +0 -0
  743. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/evals/baseline.json +0 -0
  744. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/evals/faithfulness.py +0 -0
  745. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/evals/golden_set.json +0 -0
  746. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/evals/make_corpus.py +0 -0
  747. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/evals/make_golden.py +0 -0
  748. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/evals/metrics.py +0 -0
  749. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/evals/publish_golden_dataset.py +0 -0
  750. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/evals/run_evals.py +0 -0
  751. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/examples/README.md +0 -0
  752. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/examples/adapt-demo.sh +0 -0
  753. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/examples/boost-run-prototype.sh +0 -0
  754. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/index.html +0 -0
  755. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/noxfile.py +0 -0
  756. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/pyproject.toml +0 -0
  757. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/requirements/coverage-tools.in +0 -0
  758. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/requirements/coverage-tools.txt +0 -0
  759. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/requirements/lint-tools.in +0 -0
  760. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/requirements/lint-tools.txt +0 -0
  761. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/requirements/mutation-tools.in +0 -0
  762. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/requirements/mutation-tools.txt +0 -0
  763. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/requirements/platform-pins.lock +0 -0
  764. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/requirements/release-tools.in +0 -0
  765. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/requirements/release-tools.txt +0 -0
  766. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/requirements/test-tools.in +0 -0
  767. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/requirements/test-tools.txt +0 -0
  768. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/a11y_check.py +0 -0
  769. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/add_spdx_headers.py +0 -0
  770. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/bench_cli.sh +0 -0
  771. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/build_command_reference.py +0 -0
  772. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/build_demo_index.py +0 -0
  773. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/build_registries.py +0 -0
  774. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/build_roadmap.py +0 -0
  775. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/build_scale_corpus.py +0 -0
  776. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/build_vex.py +0 -0
  777. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/check_anchors.py +0 -0
  778. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/check_branch_current.py +0 -0
  779. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/check_dco.py +0 -0
  780. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/check_licenses.py +0 -0
  781. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/check_reproducible.py +0 -0
  782. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/check_required_checks.py +0 -0
  783. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/ensure_eval_corpus.sh +0 -0
  784. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/eval_corpus.py +0 -0
  785. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/eval_explain.py +0 -0
  786. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/eval_gate.py +0 -0
  787. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/eval_recommend.py +0 -0
  788. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/eval_retrieval.py +0 -0
  789. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/eval_stats_summary.py +0 -0
  790. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/eval_tools.py +0 -0
  791. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/import_budget.py +0 -0
  792. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/lock_toolchain.py +0 -0
  793. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/measure_near_duplicate_bound.py +0 -0
  794. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/measure_registry.py +0 -0
  795. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/mutation_gate.py +0 -0
  796. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/mutation_weights.json +0 -0
  797. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/normalize_sdist.py +0 -0
  798. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/page_budget.py +0 -0
  799. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/perf_gate.py +0 -0
  800. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/post_deploy_smoke.py +0 -0
  801. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/publish_eval_json.py +0 -0
  802. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/publish_shards.py +0 -0
  803. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/release_guard.py +0 -0
  804. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/release_preflight.py +0 -0
  805. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/serve_docs.py +0 -0
  806. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/scripts/shard_plan.py +0 -0
  807. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/setup.cfg +0 -0
  808. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/sonar-project.properties +0 -0
  809. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/style/README.md +0 -0
  810. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/style/boost.css +0 -0
  811. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/style/boost.js +0 -0
  812. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/style/demo.html +0 -0
  813. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/bdd/features/adapt.feature +0 -0
  814. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/bdd/features/browse.feature +0 -0
  815. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/bdd/features/count.feature +0 -0
  816. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/bdd/features/discover.feature +0 -0
  817. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/bdd/features/doctor.feature +0 -0
  818. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/bdd/features/environment.py +0 -0
  819. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/bdd/features/explain.feature +0 -0
  820. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/bdd/features/index.feature +0 -0
  821. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/bdd/features/install.feature +0 -0
  822. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/bdd/features/list.feature +0 -0
  823. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/bdd/features/mcp.feature +0 -0
  824. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/bdd/features/search.feature +0 -0
  825. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/bdd/features/steps/cli_steps.py +0 -0
  826. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/bdd/features/steps/discovery_steps.py +0 -0
  827. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/bdd/features/steps/mcp_steps.py +0 -0
  828. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/bdd/features/steps/quality_steps.py +0 -0
  829. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/conftest.py +0 -0
  830. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/eval/baseline.json +0 -0
  831. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/eval/explain.jsonl +0 -0
  832. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/eval/fixtures/claude_init_event.jsonl +0 -0
  833. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/eval/golden-natural.jsonl +0 -0
  834. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/eval/golden.jsonl +0 -0
  835. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/eval/recommend.jsonl +0 -0
  836. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/eval/taps-scale.txt +0 -0
  837. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/eval/taps.txt +0 -0
  838. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/eval/tool_calls.jsonl +0 -0
  839. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_bad_input_is_not_a_crash.py +0 -0
  840. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_bmad_all_hosts.py +0 -0
  841. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_bmad_personas_scope.py +0 -0
  842. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_capabilities_policy.py +0 -0
  843. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_adapt.py +0 -0
  844. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_bmad.py +0 -0
  845. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_catalog.py +0 -0
  846. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_chat.py +0 -0
  847. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_configuration.py +0 -0
  848. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_discovery.py +0 -0
  849. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_hooks.py +0 -0
  850. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_hooks_codex.py +0 -0
  851. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_hooks_gemini.py +0 -0
  852. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_identifier_columns.py +0 -0
  853. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_info.py +0 -0
  854. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_intelligence.py +0 -0
  855. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_json_reports.py +0 -0
  856. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_pane_width.py +0 -0
  857. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_pkg.py +0 -0
  858. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_quality.py +0 -0
  859. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_quickstart.py +0 -0
  860. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_tap_pins.py +0 -0
  861. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_taps.py +0 -0
  862. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_cli_team.py +0 -0
  863. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_context_sees_an_unborn_branch.py +0 -0
  864. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_count_flags_reject_nonpositive.py +0 -0
  865. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_everyday_loop.py +0 -0
  866. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_integrity_enforce.py +0 -0
  867. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_keyed_no_store_hint.py +0 -0
  868. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_kind_conformance.py +0 -0
  869. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_property_parsers.py +0 -0
  870. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_recommend_because_is_true.py +0 -0
  871. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_repo_root_guard_covers_real_installs.py +0 -0
  872. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_reports_match_reality.py +0 -0
  873. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_run.py +0 -0
  874. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_tap_signing.py +0 -0
  875. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/functional/test_workspace_scope.py +0 -0
  876. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/README.md +0 -0
  877. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/frontmatter/01-typical.md +0 -0
  878. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/frontmatter/02-lossy-version.md +0 -0
  879. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/frontmatter/03-lossy-numbers.md +0 -0
  880. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/frontmatter/04-lists.md +0 -0
  881. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/frontmatter/05-nested.md +0 -0
  882. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/frontmatter/06-empty-block.md +0 -0
  883. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/frontmatter/07-unterminated.md +0 -0
  884. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/frontmatter/08-none.md +0 -0
  885. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/frontmatter/09-unbalanced-quote.md +0 -0
  886. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/frontmatter/10-keywords.md +0 -0
  887. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/frontmatter/11-crlf.md +0 -0
  888. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/frontmatter/12-bom.md +0 -0
  889. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/registry/01-shorthand.txt +0 -0
  890. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/registry/02-https.txt +0 -0
  891. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/registry/03-ssh.txt +0 -0
  892. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/registry/04-traversal.txt +0 -0
  893. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/registry/05-empty.txt +0 -0
  894. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/registry/06-space.txt +0 -0
  895. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/registry/07-slash.txt +0 -0
  896. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/registry/08-bare-host.txt +0 -0
  897. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/registry/09-nul.txt +0 -0
  898. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/registry/10-name-too-long.txt +0 -0
  899. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/corpus/registry/11-long-owner-repo.txt +0 -0
  900. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/fuzz_frontmatter.py +0 -0
  901. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/fuzz/fuzz_registry.py +0 -0
  902. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/langchain/conftest.py +0 -0
  903. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/langchain/test_graph.py +0 -0
  904. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/langchain/test_loader.py +0 -0
  905. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/langchain/test_retriever.py +0 -0
  906. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/make_fixture.py +0 -0
  907. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/perf/test_benchmarks.py +0 -0
  908. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/smoke.sh +0 -0
  909. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/data/bmad-skills-6.12.0.json +0 -0
  910. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_a11y_check.py +0 -0
  911. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_action_pin_lockstep.py +0 -0
  912. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_adapters.py +0 -0
  913. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_adapters_multi.py +0 -0
  914. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_adapters_runner.py +0 -0
  915. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_agents.py +0 -0
  916. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_ai.py +0 -0
  917. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_aihost.py +0 -0
  918. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_archive.py +0 -0
  919. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_bmad_core.py +0 -0
  920. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_boost_first_offer.py +0 -0
  921. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_bootstrap.py +0 -0
  922. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_bot_pr_dco.py +0 -0
  923. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_branch_current.py +0 -0
  924. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_browse.py +0 -0
  925. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_builtin.py +0 -0
  926. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_canary_deps.py +0 -0
  927. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_capabilities.py +0 -0
  928. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_catalog.py +0 -0
  929. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_catalog_distinct.py +0 -0
  930. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_catalog_keyword_words.py +0 -0
  931. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_catalogbundle.py +0 -0
  932. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_chat.py +0 -0
  933. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_check_anchors.py +0 -0
  934. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_check_dco.py +0 -0
  935. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_check_licenses.py +0 -0
  936. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_check_reproducible.py +0 -0
  937. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_claude_settings.py +0 -0
  938. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_claude_settings_codex.py +0 -0
  939. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_clean_internal_cache.py +0 -0
  940. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_cli_update_shards.py +0 -0
  941. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_cliparse.py +0 -0
  942. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_codeql_analysis_key.py +0 -0
  943. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_cohort.py +0 -0
  944. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_command_reference_fresh.py +0 -0
  945. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_community_health_files.py +0 -0
  946. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_compact.py +0 -0
  947. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_complete.py +0 -0
  948. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_complete_rc_block.py +0 -0
  949. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_config.py +0 -0
  950. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_content_dedupe.py +0 -0
  951. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_content_identity.py +0 -0
  952. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_corpus_prose.py +0 -0
  953. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_count_flags_use_positive_int.py +0 -0
  954. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_coverage_gate_prose.py +0 -0
  955. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_crash_redaction.py +0 -0
  956. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dedup_trust.py +0 -0
  957. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_demo_index.py +0 -0
  958. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dense.py +0 -0
  959. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dense_boilerplate_cluster.py +0 -0
  960. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dense_embed_dedupe.py +0 -0
  961. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dense_entry_reuse.py +0 -0
  962. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dense_entry_vectors.py +0 -0
  963. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dense_fallback.py +0 -0
  964. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dense_fix_hint.py +0 -0
  965. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dense_model_unavailable.py +0 -0
  966. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dense_progress.py +0 -0
  967. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dense_quantized.py +0 -0
  968. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dense_ready_order.py +0 -0
  969. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dense_shard_real_schema.py +0 -0
  970. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dense_shard_unreadable_vectors.py +0 -0
  971. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dense_shards.py +0 -0
  972. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dense_status.py +0 -0
  973. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dense_status_cheap.py +0 -0
  974. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dense_vector_dedupe.py +0 -0
  975. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dependabot_config.py +0 -0
  976. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_deps.py +0 -0
  977. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_discovery.py +0 -0
  978. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_distill_merge.py +0 -0
  979. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_docs_pages_linked.py +0 -0
  980. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_docsite_chrome.py +0 -0
  981. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_doctor_output_polish.py +0 -0
  982. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_drift_hint.py +0 -0
  983. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_dry_run_parity.py +0 -0
  984. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_ed25519.py +0 -0
  985. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_embed.py +0 -0
  986. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_embed_local.py +0 -0
  987. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_embed_outranking.py +0 -0
  988. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_embed_truncated_response.py +0 -0
  989. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_entry_key.py +0 -0
  990. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_errors_and_cli_table.py +0 -0
  991. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_eval_baseline.py +0 -0
  992. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_eval_corpus.py +0 -0
  993. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_eval_corpus_bodies.py +0 -0
  994. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_eval_faithfulness.py +0 -0
  995. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_eval_gate.py +0 -0
  996. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_eval_grading.py +0 -0
  997. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_eval_metrics.py +0 -0
  998. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_eval_query_sets.py +0 -0
  999. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_eval_stats_summary.py +0 -0
  1000. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_eval_tools.py +0 -0
  1001. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_eval_tools_probe.py +0 -0
  1002. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_faithfulness.py +0 -0
  1003. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_first_run_pointer.py +0 -0
  1004. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_frontmatter.py +0 -0
  1005. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_fuzz_targets.py +0 -0
  1006. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_gemini_agent_sanitize.py +0 -0
  1007. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_gitleaks_config.py +0 -0
  1008. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_gitutil.py +0 -0
  1009. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_gitutil_lfs.py +0 -0
  1010. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_gitutil_sparse.py +0 -0
  1011. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_gstack_coexistence.py +0 -0
  1012. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_help_contracts.py +0 -0
  1013. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_hook_settings_hosts.py +0 -0
  1014. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_hookhost.py +0 -0
  1015. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_hookhost_codex.py +0 -0
  1016. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_imperative.py +0 -0
  1017. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_import_budget.py +0 -0
  1018. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_injectscan.py +0 -0
  1019. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_install_permission_error.py +0 -0
  1020. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_installscan.py +0 -0
  1021. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_integrity.py +0 -0
  1022. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_journal.py +0 -0
  1023. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_jsonstate.py +0 -0
  1024. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_langchain_packaging.py +0 -0
  1025. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_launcher_python_floor.py +0 -0
  1026. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_lighthouse_budgets.py +0 -0
  1027. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_link_ownership.py +0 -0
  1028. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_localembed.py +0 -0
  1029. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_localembed_e2e.py +0 -0
  1030. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_lockfile.py +0 -0
  1031. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_logs.py +0 -0
  1032. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_marketing_counts.py +0 -0
  1033. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_mcp.py +0 -0
  1034. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_mcp_install_sandbox_home.py +0 -0
  1035. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_mcp_install_scan.py +0 -0
  1036. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_mcp_read.py +0 -0
  1037. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_mcpdecl.py +0 -0
  1038. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_mcphost.py +0 -0
  1039. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_measure_registry.py +0 -0
  1040. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_minisign.py +0 -0
  1041. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_mutation_hardening.py +0 -0
  1042. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_mutation_shards.py +0 -0
  1043. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_mutation_weights_drift.py +0 -0
  1044. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_mutmut_source_paths.py +0 -0
  1045. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_near_duplicate_collapse.py +0 -0
  1046. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_nethttp.py +0 -0
  1047. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_normalize_sdist.py +0 -0
  1048. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_output.py +0 -0
  1049. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_output_table_drop.py +0 -0
  1050. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_output_table_whole.py +0 -0
  1051. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_page_budget.py +0 -0
  1052. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_paths.py +0 -0
  1053. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_perf_gate.py +0 -0
  1054. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_pkg_confusions.py +0 -0
  1055. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_pkg_injection.py +0 -0
  1056. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_pkg_secrets.py +0 -0
  1057. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_platform_pins.py +0 -0
  1058. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_policy.py +0 -0
  1059. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_post_deploy_smoke.py +0 -0
  1060. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_prereq.py +0 -0
  1061. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_project_mcp_sidecar.py +0 -0
  1062. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_projectlock.py +0 -0
  1063. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_provenance.py +0 -0
  1064. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_publish_golden_dataset.py +0 -0
  1065. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_quickstart_readiness.py +0 -0
  1066. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_rag.py +0 -0
  1067. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_rag_completeness.py +0 -0
  1068. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_rag_extra_hint.py +0 -0
  1069. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_rag_fastpath.py +0 -0
  1070. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_rag_fusion.py +0 -0
  1071. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_read_text_arg.py +0 -0
  1072. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_registries_fresh.py +0 -0
  1073. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_registry.py +0 -0
  1074. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_registry_categories.py +0 -0
  1075. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_registry_control_chars.py +0 -0
  1076. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_registry_parallel.py +0 -0
  1077. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_release_guard.py +0 -0
  1078. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_release_preflight.py +0 -0
  1079. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_repo_root_guard.py +0 -0
  1080. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_report.py +0 -0
  1081. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_required_checks.py +0 -0
  1082. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_rerank_cache.py +0 -0
  1083. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_resolve.py +0 -0
  1084. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_retrieve_any_near_duplicates.py +0 -0
  1085. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_roadmap_fresh.py +0 -0
  1086. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_rules.py +0 -0
  1087. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_sandbox_fixture_cwd.py +0 -0
  1088. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_scale_corpus.py +0 -0
  1089. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_schedule_plist.py +0 -0
  1090. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_scopes.py +0 -0
  1091. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_sdist_contents.py +0 -0
  1092. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_secretscan.py +0 -0
  1093. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_selfupdate.py +0 -0
  1094. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_serve.py +0 -0
  1095. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_serve_docs.py +0 -0
  1096. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_shard_plan.py +0 -0
  1097. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_shards.py +0 -0
  1098. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_shards_carry_forward.py +0 -0
  1099. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_shards_incremental.py +0 -0
  1100. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_shards_ingest.py +0 -0
  1101. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_shards_matrix.py +0 -0
  1102. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_smoke_covers_every_command.py +0 -0
  1103. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_spdx_headers.py +0 -0
  1104. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_spin.py +0 -0
  1105. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_stackprobe.py +0 -0
  1106. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_staleness.py +0 -0
  1107. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_store.py +0 -0
  1108. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_store_materialize.py +0 -0
  1109. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_sync_blocked_links.py +0 -0
  1110. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_sync_lost_lock.py +0 -0
  1111. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_sync_repairs_gutted_skill.py +0 -0
  1112. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_tap_pins.py +0 -0
  1113. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_text_io_names_its_encoding.py +0 -0
  1114. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_token_parity.py +0 -0
  1115. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_toolchain_lock.py +0 -0
  1116. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_trustaudit.py +0 -0
  1117. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_typedvalue.py +0 -0
  1118. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_typosquat.py +0 -0
  1119. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_updatediff.py +0 -0
  1120. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_upstream_path.py +0 -0
  1121. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_util.py +0 -0
  1122. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_version.py +0 -0
  1123. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_version_tags.py +0 -0
  1124. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_vex.py +0 -0
  1125. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_visual_harness_capture.py +0 -0
  1126. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_visual_harness_flags.py +0 -0
  1127. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_workflow_concurrency.py +0 -0
  1128. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_workflow_concurrency_groups.py +0 -0
  1129. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_workflow_push_has_credentials.py +0 -0
  1130. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_workflow_timeouts.py +0 -0
  1131. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_workflows.py +0 -0
  1132. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/unit/test_zizmor_ignores_still_anchor.py +0 -0
  1133. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/visual/a11y_check.mjs +0 -0
  1134. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/visual/console_check.mjs +0 -0
  1135. {boost_skill_cli-1.2.172 → boost_skill_cli-1.2.174}/tests/visual/visual_check.mjs +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: boost-skill-cli
3
- Version: 1.2.172
3
+ Version: 1.2.174
4
4
  Summary: boost — Homebrew for AI coding skills
5
5
  Author: Jonathan Reyes
6
6
  License-Expression: Apache-2.0
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
18
18
  commit_id: str | None
19
19
  __commit_id__: str | None
20
20
 
21
- __version__ = version = '1.2.172'
22
- __version_tuple__ = version_tuple = (1, 2, 172)
21
+ __version__ = version = '1.2.174'
22
+ __version_tuple__ = version_tuple = (1, 2, 174)
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.2.172
3
+ Version: 1.2.174
4
4
  Summary: boost — Homebrew for AI coding skills
5
5
  Author: Jonathan Reyes
6
6
  License-Expression: Apache-2.0
@@ -355,6 +355,7 @@ docs/roadmap/items/build-provenance-slsa-attestations.md
355
355
  docs/roadmap/items/cache-the-catalog-entry-set-across-rag-queries.md
356
356
  docs/roadmap/items/cache-writers-that-still-crash-on-a-read-only-cache.md
357
357
  docs/roadmap/items/canary-deps-check-skips-in-the-required-job.md
358
+ docs/roadmap/items/cancelled-ci-on-main-is-silent-and-skips-the-release.md
358
359
  docs/roadmap/items/capability-manifest-and-least-privilege-policy.md
359
360
  docs/roadmap/items/capability-policy-skips-rules-and-workflows.md
360
361
  docs/roadmap/items/catalog-categories-beyond-curated.md
@@ -1033,6 +1034,7 @@ tests/unit/test_mcphost.py
1033
1034
  tests/unit/test_measure_registry.py
1034
1035
  tests/unit/test_minisign.py
1035
1036
  tests/unit/test_mutation_hardening.py
1037
+ tests/unit/test_mutation_shard_count.py
1036
1038
  tests/unit/test_mutation_shards.py
1037
1039
  tests/unit/test_mutation_subfile_shards.py
1038
1040
  tests/unit/test_mutation_weights_drift.py
@@ -0,0 +1,114 @@
1
+ ---
2
+ id: cancelled-ci-on-main-is-silent-and-skips-the-release
3
+ board: code
4
+ section: trust
5
+ status: inflight
6
+ category: CI · Bug
7
+ complexity: S
8
+ impact: High
9
+ wow: 4
10
+ note: the alerting that exists to make a red main impossible to miss asks only about 'failure', and the run that skipped a release was 'cancelled'
11
+ order: 365
12
+ owner: loop/ci-alert-conclusions
13
+ pr: 1025
14
+ title: "A <code>cancelled</code> <code>ci</code> on main skips the release and alerts nobody, because the alert asks only about <code>failure</code>"
15
+ ---
16
+ <b>Two independent gates, both keyed on the wrong half of the same enum.</b>
17
+ <code>publish.yml</code> fires on <code>workflow_run</code> and ships only when
18
+ <code>conclusion == 'success'</code>; <code>ci-failure-alert</code> opens the tracking issue
19
+ only when <code>conclusion == 'failure'</code>. A <code>ci</code> run that concludes
20
+ <code>cancelled</code> satisfies neither. <b>It does not ship and it does not tell anyone</b>
21
+ &mdash; the one conclusion that falls through both.
22
+
23
+ <b>Observed, on the merge of #1015.</b> <code>mutation-shard (4)</code> hit
24
+ <code>timeout-minutes: 75</code> and was cancelled, the aggregate <code>mutation</code> job
25
+ failed, and the run concluded <code>cancelled</code> rather than <code>failure</code>. No
26
+ release, no issue, no notification. It surfaced the same day, and only because somebody was
27
+ reading per-shard job durations out of the Actions API for an unrelated reason &mdash; nothing
28
+ in the repo would have raised it, and the next one will be found the same way or not at all.
29
+
30
+ <b>This is the exact blind spot <code>ci-failure-alert</code>'s own header describes.</b> That
31
+ file opens by explaining that <code>demo</code> "failed six runs out of six on main, alerted
32
+ nobody, and was found by a manual audit instead", and concludes that "any workflow that runs on
33
+ main and nobody watches belongs here". The list was then enforced by
34
+ <code>tests/unit/test_failure_alerting_covers_unattended.py</code> so a new workflow cannot
35
+ quietly join the blind spot. <b>The enforcement is over <em>which workflows</em> are watched,
36
+ and the hole here is <em>which conclusions</em> are</b> &mdash; <code>ci</code> is on the list
37
+ and still said nothing.
38
+
39
+ <b>Why a timeout is not an exotic case.</b> It is the designed behaviour of every
40
+ <code>timeout-minutes</code> in the repo, and <code>mutation-shard</code>'s is reached by an
41
+ ordinary slow runner rather than by a bug: across 169 measured shard jobs the worst was 72.5
42
+ minutes against a 75-minute cap. A job can also be cancelled by the concurrency group or by a
43
+ human pressing the button &mdash; and only the last of those is one anybody already knows about.
44
+
45
+ <b>A runner eviction is the neighbouring case, and it concludes differently.</b> An earlier
46
+ draft of this card listed eviction among the routes to <code>cancelled</code>; measured on
47
+ 2026-10-02, it is not. <code>mutation-shard (0)</code> on main took
48
+ <code>The runner has received a shutdown signal</code> and exit 143 at mutant 3095 of 28084,
49
+ the job concluded <b>failure</b>, and the alerting fired correctly &mdash; issue #1024 opened
50
+ and auto-closed when a rerun of the failed jobs went green. That is the point of widening on
51
+ the <em>green</em> set rather than enumerating bad conclusions: the two most common ways a
52
+ shard dies land on different sides of an <code>== 'failure'</code> test, and a gate that has
53
+ to know which one it was is a gate that will be wrong again.
54
+
55
+ <b>Shape of the work.</b> Widen the alert's condition from <code>== 'failure'</code> to the set
56
+ of conclusions that mean "main is not green", which is every one except <code>success</code>,
57
+ <code>skipped</code> and <code>neutral</code> &mdash; naming what is <em>excluded</em> rather
58
+ than what is included, so the next conclusion GitHub adds defaults to loud. The issue body
59
+ should say which conclusion it was, because <em>cancelled</em> and <em>failure</em> want
60
+ different first moves. Then pin it: the sibling test already enforces the workflow list, so the
61
+ conclusion set wants the same treatment rather than a comment. Worth checking at the same time
62
+ whether <code>publish.yml</code> should distinguish "CI did not pass" from "CI did not finish"
63
+ &mdash; today both are a silent no-op, and a release that was skipped because a runner was slow
64
+ is recoverable by a rerun that nobody currently knows to start.
65
+
66
+ <b>Shipped.</b> The opener now gates on the green set <em>negated</em> &mdash;
67
+ <code>!contains(fromJSON('["success", "skipped", "neutral"]'), conclusion)</code> &mdash; so a
68
+ conclusion GitHub adds later defaults to loud. <code>skipped</code> and <code>neutral</code>
69
+ are in it deliberately: <code>release</code> skips on every run it does not publish from, so
70
+ without that exclusion each non-green <code>ci</code> would open two issues. The closer keeps
71
+ <code>== 'success'</code>, because a <code>cancelled</code> run says nothing about whether the
72
+ tracked failure is fixed and must not stand the issue down. The body now names the conclusion
73
+ and, for <code>ci</code>, says no release was cut and that a rerun is what publishes it.
74
+
75
+ <b>publish.yml was left alone, deliberately.</b> Its
76
+ <code>conclusion == 'success' &amp;&amp; event == 'push'</code> guard is the fork-PR boundary
77
+ that stops an outsider cutting a real PyPI release; widening it to tell "did not pass" from
78
+ "did not finish" would trade a silent no-op for a security hole. The recoverable case &mdash; a
79
+ release skipped because a runner was slow &mdash; is recovered by the issue telling somebody to
80
+ rerun, which is what the new body does.
81
+
82
+ <b>Found on the way, and fixed in the same change.</b> An empty GitHub expression written
83
+ inside a <code>run:</code> or <code>script:</code> body makes zizmor emit
84
+ <code>couldn't parse expression</code> from six audits &mdash; template_injection,
85
+ overprovisioned_secrets, unredacted_secrets, obfuscation, secrets_outside_env and
86
+ unsound_ternary. A comment explaining why the script avoids interpolation was enough to cause
87
+ it. Measured three ways: in a YAML <code>#</code> comment it is harmless (zizmor does not read
88
+ those), in a <code>script:</code> body it costs six, and in a <code>run:</code> body it costs
89
+ six even behind a shell <code>#</code>.
90
+
91
+ <b>An earlier draft of this section said that blinded the audits for the whole file. It does
92
+ not, and the review that asked caught it.</b> Planting a real finding &mdash; a
93
+ <code>head_commit.message</code> interpolated into a <code>run:</code> &mdash; in two copies of
94
+ the file, one clean and one carrying an empty expression, zizmor reported the
95
+ template-injection in <b>both</b>. What is actually lost is the unparseable span itself, which
96
+ no audit inspects, plus six warning lines above a run that still ends in "No findings to
97
+ report". Worth preventing on those terms rather than the dramatic ones: a span that silently
98
+ opts out of SAST is a bad place for a mistake to hide. A parametrised test now walks every
99
+ workflow's parsed run/script bodies.
100
+
101
+ <b>One more hole the widening opened, and the review found it.</b>
102
+ <code>head_branch == 'main'</code> is not a provenance check. <code>ci.yml</code> runs on
103
+ <code>pull_request</code>, so a fork PR opened from a branch named <code>main</code> produces a
104
+ <code>ci</code> run whose <code>head_branch</code> is <code>main</code> &mdash; and
105
+ <code>cancel-in-progress</code> concludes it <code>cancelled</code> on every superseded push.
106
+ Under the old <code>== 'failure'</code> gate that was rare; under the new one it is routine PR
107
+ iteration, and the issue would have claimed a release was skipped for a run that was never
108
+ release-eligible. <code>publish.yml</code>, <code>sbom.yml</code> and
109
+ <code>mutation-weights-refresh.yml</code> all carry the event+repository pair and this file was
110
+ the only <code>workflow_run</code> consumer without it, so the fix is the house guard on
111
+ <em>both</em> jobs &mdash; the closer needed it just as much, since a <em>green</em> fork PR
112
+ could otherwise close a tracker for a failure still live on main. It is
113
+ <code>event != 'pull_request'</code> rather than <code>== 'push'</code> because three watched
114
+ workflows are themselves <code>workflow_run</code>-triggered.
@@ -2,15 +2,15 @@
2
2
  id: shard-weights-do-not-predict-the-job-timeout
3
3
  board: code
4
4
  section: trust
5
- status: planned
5
+ status: inflight
6
6
  category: CI · Bug
7
7
  complexity: M
8
8
  impact: High
9
9
  wow: 4
10
10
  note: the pack is balanced to within 700ms of ideal and a shard still timed out at 75 min, cancelling a release
11
11
  order: 364
12
- owner:
13
- pr:
12
+ owner: loop/shard-headroom
13
+ pr: 1023
14
14
  title: "Mutation shard weights balance perfectly and predict nothing, so a shard can time out and cancel a release"
15
15
  ---
16
16
  <b>Observed, on the merge of #1015.</b> <code>mutation-shard (4)</code> ran 75 minutes against the
@@ -55,3 +55,40 @@ speedup cap is 6.0x only because <code>store.py</code> is split per function alr
55
55
  shards is cheap. Separately, a cancelled <code>ci</code> on main should be loud: it currently
56
56
  looks identical to a success from the release path's point of view, because
57
57
  <code>publish.yml</code> only asks whether the conclusion was <code>success</code>.
58
+
59
+ <b>Fixed, and the calibration is measured.</b> Fitted over the Actions job API on 2026-10-01:
60
+ <b>169 successful <code>mutation-shard</code> jobs</b>, of which 26 runs completed all six
61
+ shards. Two numbers come out, and they answer different questions. Per <em>run</em> &mdash; the
62
+ sum over its six shards, which is pack-invariant and so isolates runner speed from packing
63
+ &mdash; observed minutes over committed weight-minutes is min 0.265, <b>median 0.307</b>, max
64
+ 0.355: a spread of only <b>1.34x</b>. Per <em>shard</em> against its own median the range is
65
+ 1.10x (shard 3) to <b>1.91x</b> (shard 2: median 38.0 min, worst 72.5). <b>So the mean is not
66
+ what fails.</b> A single slow runner inside an otherwise ordinary run is, and a check scored on
67
+ the median would have passed the pack that was cancelled &mdash; its median shard was 37.8
68
+ minutes against a 75-minute cap, half the ceiling.
69
+
70
+ <b>The 0.307 is not a fudge factor, it is parallelism.</b> Weights are summed per-mutant
71
+ durations &mdash; the work a shard holds laid end to end &mdash; and the runner executes it
72
+ four-way parallel (<code>max_children</code> defaults to <code>os.cpu_count()</code>;
73
+ <code>ubuntu-latest</code> is 4 vCPU). The median inverts to 3.26 effective workers of 4, so what
74
+ is stored is <b>81.4% parallel efficiency</b> and the worker count separately: a runner with more
75
+ vCPUs then moves one constant and contention moves the other, where a single fitted number would
76
+ hide which had happened.
77
+
78
+ <b>It reproduces the failure it was derived to predict.</b> Six shards at these weights:
79
+ 37.8 median minutes &times; 1.91 = a <b>72.3-minute tail</b> against a real worst job of
80
+ <b>72.5</b> &mdash; 96% of the cap. <code>plan --explain --timeout-minutes 75</code> now prints
81
+ that and exits 1. The matrix moved to <b>eight</b>, where the same arithmetic gives 28.4 &times;
82
+ 1.91 = <b>54.2 min, 72% of the cap</b>; the largest unit (4,063,161 ms) still fits inside an even
83
+ share (5,543,280 ms), so the speedup cap is a full 8.00x and more shards cost nothing but runner
84
+ slots. <code>tests/unit/test_mutation_shard_count.py</code> pins the shard count across
85
+ <code>ci.yml</code> and <code>mutation-weights-refresh.yml</code> (<code>timeout-minutes</code>
86
+ cannot be read through <code>${{ }}</code>, so agreement is asserted rather than derived), and
87
+ re-runs the headroom check on the committed pack every build &mdash; a pack that would be
88
+ cancelled now fails in the <code>test</code> job in milliseconds.
89
+
90
+ <b>Not fixed here, and now its own card:</b> a <code>cancelled</code> <code>ci</code> on main is
91
+ still silent. <code>ci-failure-alert</code> gates on
92
+ <code>conclusion == 'failure'</code>, so the run that skipped the release notified nobody either
93
+ &mdash; see <code>cancelled-ci-on-main-is-silent-and-skips-the-release</code>.
94
+
@@ -143,7 +143,7 @@
143
143
  <div class="stat"><b>27</b><span>Shipped</span></div>
144
144
  <div class="stat"><b>1</b><span>Next up</span></div>
145
145
  <div class="stat"><b>75</b><span>Planned</span></div>
146
- <div class="stat"><b>521</b><span>Loop finds</span></div>
146
+ <div class="stat"><b>522</b><span>Loop finds</span></div>
147
147
  <!-- /ROADMAP:stats -->
148
148
  </div>
149
149
  </section>
@@ -7748,7 +7748,7 @@ the walk and the <code>redirected</code> reporting this card inherits.</p>
7748
7748
  </article>
7749
7749
 
7750
7750
  <article class="cap rcard" id="shard-weights-do-not-predict-the-job-timeout">
7751
- <div class="head"><span class="pill planned">Planned</span><span class="cat">CI · Bug</span></div>
7751
+ <div class="head"><span class="pill inflight">In flight</span><span class="cat">CI · Bug</span></div>
7752
7752
  <h3>Mutation shard weights balance perfectly and predict nothing, so a shard can time out and cancel a release</h3>
7753
7753
  <p><b>Observed, on the merge of #1015.</b> <code>mutation-shard (4)</code> ran 75 minutes against the
7754
7754
  job's <code>timeout-minutes: 75</code> and was cancelled. The aggregate <code>mutation</code> job
@@ -7791,7 +7791,43 @@ give the heaviest shard headroom &mdash; at eight shards the ideal drops by a qu
7791
7791
  speedup cap is 6.0x only because <code>store.py</code> is split per function already, so more
7792
7792
  shards is cheap. Separately, a cancelled <code>ci</code> on main should be loud: it currently
7793
7793
  looks identical to a success from the release path's point of view, because
7794
- <code>publish.yml</code> only asks whether the conclusion was <code>success</code>.</p>
7794
+ <code>publish.yml</code> only asks whether the conclusion was <code>success</code>.
7795
+
7796
+ <b>Fixed, and the calibration is measured.</b> Fitted over the Actions job API on 2026-10-01:
7797
+ <b>169 successful <code>mutation-shard</code> jobs</b>, of which 26 runs completed all six
7798
+ shards. Two numbers come out, and they answer different questions. Per <em>run</em> &mdash; the
7799
+ sum over its six shards, which is pack-invariant and so isolates runner speed from packing
7800
+ &mdash; observed minutes over committed weight-minutes is min 0.265, <b>median 0.307</b>, max
7801
+ 0.355: a spread of only <b>1.34x</b>. Per <em>shard</em> against its own median the range is
7802
+ 1.10x (shard 3) to <b>1.91x</b> (shard 2: median 38.0 min, worst 72.5). <b>So the mean is not
7803
+ what fails.</b> A single slow runner inside an otherwise ordinary run is, and a check scored on
7804
+ the median would have passed the pack that was cancelled &mdash; its median shard was 37.8
7805
+ minutes against a 75-minute cap, half the ceiling.
7806
+
7807
+ <b>The 0.307 is not a fudge factor, it is parallelism.</b> Weights are summed per-mutant
7808
+ durations &mdash; the work a shard holds laid end to end &mdash; and the runner executes it
7809
+ four-way parallel (<code>max_children</code> defaults to <code>os.cpu_count()</code>;
7810
+ <code>ubuntu-latest</code> is 4 vCPU). The median inverts to 3.26 effective workers of 4, so what
7811
+ is stored is <b>81.4% parallel efficiency</b> and the worker count separately: a runner with more
7812
+ vCPUs then moves one constant and contention moves the other, where a single fitted number would
7813
+ hide which had happened.
7814
+
7815
+ <b>It reproduces the failure it was derived to predict.</b> Six shards at these weights:
7816
+ 37.8 median minutes &times; 1.91 = a <b>72.3-minute tail</b> against a real worst job of
7817
+ <b>72.5</b> &mdash; 96% of the cap. <code>plan --explain --timeout-minutes 75</code> now prints
7818
+ that and exits 1. The matrix moved to <b>eight</b>, where the same arithmetic gives 28.4 &times;
7819
+ 1.91 = <b>54.2 min, 72% of the cap</b>; the largest unit (4,063,161 ms) still fits inside an even
7820
+ share (5,543,280 ms), so the speedup cap is a full 8.00x and more shards cost nothing but runner
7821
+ slots. <code>tests/unit/test_mutation_shard_count.py</code> pins the shard count across
7822
+ <code>ci.yml</code> and <code>mutation-weights-refresh.yml</code> (<code>timeout-minutes</code>
7823
+ cannot be read through <code>${{ }}</code>, so agreement is asserted rather than derived), and
7824
+ re-runs the headroom check on the committed pack every build &mdash; a pack that would be
7825
+ cancelled now fails in the <code>test</code> job in milliseconds.
7826
+
7827
+ <b>Not fixed here, and now its own card:</b> a <code>cancelled</code> <code>ci</code> on main is
7828
+ still silent. <code>ci-failure-alert</code> gates on
7829
+ <code>conclusion == 'failure'</code>, so the run that skipped the release notified nobody either
7830
+ &mdash; see <code>cancelled-ci-on-main-is-silent-and-skips-the-release</code>.</p>
7795
7831
  <div class="meta">
7796
7832
  <span class="m">Complexity <b>M</b></span>
7797
7833
  <span class="m hi">Impact <b>High</b></span>
@@ -7799,6 +7835,116 @@ looks identical to a success from the release path's point of view, because
7799
7835
  <span class="m">the pack is balanced to within 700ms of ideal and a shard still timed out at 75 min, cancelling a release</span>
7800
7836
  </div>
7801
7837
  </article>
7838
+
7839
+ <article class="cap rcard" id="cancelled-ci-on-main-is-silent-and-skips-the-release">
7840
+ <div class="head"><span class="pill inflight">In flight</span><span class="cat">CI · Bug</span></div>
7841
+ <h3>A <code>cancelled</code> <code>ci</code> on main skips the release and alerts nobody, because the alert asks only about <code>failure</code></h3>
7842
+ <p><b>Two independent gates, both keyed on the wrong half of the same enum.</b>
7843
+ <code>publish.yml</code> fires on <code>workflow_run</code> and ships only when
7844
+ <code>conclusion == 'success'</code>; <code>ci-failure-alert</code> opens the tracking issue
7845
+ only when <code>conclusion == 'failure'</code>. A <code>ci</code> run that concludes
7846
+ <code>cancelled</code> satisfies neither. <b>It does not ship and it does not tell anyone</b>
7847
+ &mdash; the one conclusion that falls through both.
7848
+
7849
+ <b>Observed, on the merge of #1015.</b> <code>mutation-shard (4)</code> hit
7850
+ <code>timeout-minutes: 75</code> and was cancelled, the aggregate <code>mutation</code> job
7851
+ failed, and the run concluded <code>cancelled</code> rather than <code>failure</code>. No
7852
+ release, no issue, no notification. It surfaced the same day, and only because somebody was
7853
+ reading per-shard job durations out of the Actions API for an unrelated reason &mdash; nothing
7854
+ in the repo would have raised it, and the next one will be found the same way or not at all.
7855
+
7856
+ <b>This is the exact blind spot <code>ci-failure-alert</code>'s own header describes.</b> That
7857
+ file opens by explaining that <code>demo</code> "failed six runs out of six on main, alerted
7858
+ nobody, and was found by a manual audit instead", and concludes that "any workflow that runs on
7859
+ main and nobody watches belongs here". The list was then enforced by
7860
+ <code>tests/unit/test_failure_alerting_covers_unattended.py</code> so a new workflow cannot
7861
+ quietly join the blind spot. <b>The enforcement is over <em>which workflows</em> are watched,
7862
+ and the hole here is <em>which conclusions</em> are</b> &mdash; <code>ci</code> is on the list
7863
+ and still said nothing.
7864
+
7865
+ <b>Why a timeout is not an exotic case.</b> It is the designed behaviour of every
7866
+ <code>timeout-minutes</code> in the repo, and <code>mutation-shard</code>'s is reached by an
7867
+ ordinary slow runner rather than by a bug: across 169 measured shard jobs the worst was 72.5
7868
+ minutes against a 75-minute cap. A job can also be cancelled by the concurrency group or by a
7869
+ human pressing the button &mdash; and only the last of those is one anybody already knows about.
7870
+
7871
+ <b>A runner eviction is the neighbouring case, and it concludes differently.</b> An earlier
7872
+ draft of this card listed eviction among the routes to <code>cancelled</code>; measured on
7873
+ 2026-10-02, it is not. <code>mutation-shard (0)</code> on main took
7874
+ <code>The runner has received a shutdown signal</code> and exit 143 at mutant 3095 of 28084,
7875
+ the job concluded <b>failure</b>, and the alerting fired correctly &mdash; issue #1024 opened
7876
+ and auto-closed when a rerun of the failed jobs went green. That is the point of widening on
7877
+ the <em>green</em> set rather than enumerating bad conclusions: the two most common ways a
7878
+ shard dies land on different sides of an <code>== 'failure'</code> test, and a gate that has
7879
+ to know which one it was is a gate that will be wrong again.
7880
+
7881
+ <b>Shape of the work.</b> Widen the alert's condition from <code>== 'failure'</code> to the set
7882
+ of conclusions that mean "main is not green", which is every one except <code>success</code>,
7883
+ <code>skipped</code> and <code>neutral</code> &mdash; naming what is <em>excluded</em> rather
7884
+ than what is included, so the next conclusion GitHub adds defaults to loud. The issue body
7885
+ should say which conclusion it was, because <em>cancelled</em> and <em>failure</em> want
7886
+ different first moves. Then pin it: the sibling test already enforces the workflow list, so the
7887
+ conclusion set wants the same treatment rather than a comment. Worth checking at the same time
7888
+ whether <code>publish.yml</code> should distinguish "CI did not pass" from "CI did not finish"
7889
+ &mdash; today both are a silent no-op, and a release that was skipped because a runner was slow
7890
+ is recoverable by a rerun that nobody currently knows to start.
7891
+
7892
+ <b>Shipped.</b> The opener now gates on the green set <em>negated</em> &mdash;
7893
+ <code>!contains(fromJSON('["success", "skipped", "neutral"]'), conclusion)</code> &mdash; so a
7894
+ conclusion GitHub adds later defaults to loud. <code>skipped</code> and <code>neutral</code>
7895
+ are in it deliberately: <code>release</code> skips on every run it does not publish from, so
7896
+ without that exclusion each non-green <code>ci</code> would open two issues. The closer keeps
7897
+ <code>== 'success'</code>, because a <code>cancelled</code> run says nothing about whether the
7898
+ tracked failure is fixed and must not stand the issue down. The body now names the conclusion
7899
+ and, for <code>ci</code>, says no release was cut and that a rerun is what publishes it.
7900
+
7901
+ <b>publish.yml was left alone, deliberately.</b> Its
7902
+ <code>conclusion == 'success' &amp;&amp; event == 'push'</code> guard is the fork-PR boundary
7903
+ that stops an outsider cutting a real PyPI release; widening it to tell "did not pass" from
7904
+ "did not finish" would trade a silent no-op for a security hole. The recoverable case &mdash; a
7905
+ release skipped because a runner was slow &mdash; is recovered by the issue telling somebody to
7906
+ rerun, which is what the new body does.
7907
+
7908
+ <b>Found on the way, and fixed in the same change.</b> An empty GitHub expression written
7909
+ inside a <code>run:</code> or <code>script:</code> body makes zizmor emit
7910
+ <code>couldn't parse expression</code> from six audits &mdash; template_injection,
7911
+ overprovisioned_secrets, unredacted_secrets, obfuscation, secrets_outside_env and
7912
+ unsound_ternary. A comment explaining why the script avoids interpolation was enough to cause
7913
+ it. Measured three ways: in a YAML <code>#</code> comment it is harmless (zizmor does not read
7914
+ those), in a <code>script:</code> body it costs six, and in a <code>run:</code> body it costs
7915
+ six even behind a shell <code>#</code>.
7916
+
7917
+ <b>An earlier draft of this section said that blinded the audits for the whole file. It does
7918
+ not, and the review that asked caught it.</b> Planting a real finding &mdash; a
7919
+ <code>head_commit.message</code> interpolated into a <code>run:</code> &mdash; in two copies of
7920
+ the file, one clean and one carrying an empty expression, zizmor reported the
7921
+ template-injection in <b>both</b>. What is actually lost is the unparseable span itself, which
7922
+ no audit inspects, plus six warning lines above a run that still ends in "No findings to
7923
+ report". Worth preventing on those terms rather than the dramatic ones: a span that silently
7924
+ opts out of SAST is a bad place for a mistake to hide. A parametrised test now walks every
7925
+ workflow's parsed run/script bodies.
7926
+
7927
+ <b>One more hole the widening opened, and the review found it.</b>
7928
+ <code>head_branch == 'main'</code> is not a provenance check. <code>ci.yml</code> runs on
7929
+ <code>pull_request</code>, so a fork PR opened from a branch named <code>main</code> produces a
7930
+ <code>ci</code> run whose <code>head_branch</code> is <code>main</code> &mdash; and
7931
+ <code>cancel-in-progress</code> concludes it <code>cancelled</code> on every superseded push.
7932
+ Under the old <code>== 'failure'</code> gate that was rare; under the new one it is routine PR
7933
+ iteration, and the issue would have claimed a release was skipped for a run that was never
7934
+ release-eligible. <code>publish.yml</code>, <code>sbom.yml</code> and
7935
+ <code>mutation-weights-refresh.yml</code> all carry the event+repository pair and this file was
7936
+ the only <code>workflow_run</code> consumer without it, so the fix is the house guard on
7937
+ <em>both</em> jobs &mdash; the closer needed it just as much, since a <em>green</em> fork PR
7938
+ could otherwise close a tracker for a failure still live on main. It is
7939
+ <code>event != 'pull_request'</code> rather than <code>== 'push'</code> because three watched
7940
+ workflows are themselves <code>workflow_run</code>-triggered.</p>
7941
+ <div class="meta">
7942
+ <span class="m">Complexity <b>S</b></span>
7943
+ <span class="m hi">Impact <b>High</b></span>
7944
+ <span class="m">Wow <b class="wow">★★★★</b></span>
7945
+ <span class="m">the alerting that exists to make a red main impossible to miss asks only about 'failure', and the run that skipped a release was 'cancelled'</span>
7946
+ </div>
7947
+ </article>
7802
7948
  <!-- /ROADMAP:cards -->
7803
7949
 
7804
7950
  </div>