agentbundle 0.53.1__tar.gz → 0.53.2__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 (696) hide show
  1. {agentbundle-0.53.1/agentbundle.egg-info → agentbundle-0.53.2}/PKG-INFO +7 -1
  2. {agentbundle-0.53.1 → agentbundle-0.53.2}/README-pypi.md +6 -0
  3. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/manifest.json +1 -1
  4. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/tests/conformance/test_pack_layout_declared_section.py +2 -2
  5. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/install-marker.py +6 -9
  6. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/bounded_metadata.py +3 -3
  7. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/adapter_root_bins.py +1 -1
  8. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/adapters/claude_code.py +4 -4
  9. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/adapters/codex.py +3 -3
  10. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/adapters/copilot.py +1 -1
  11. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/adapters/cursor.py +1 -1
  12. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/adapters/gemini.py +1 -1
  13. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/adapters/kiro.py +4 -4
  14. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/adapters/kiro_ide.py +1 -1
  15. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/main.py +13 -13
  16. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/projections/direct_directory.py +1 -2
  17. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/projections/kiro_ide_hook.py +2 -2
  18. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/projections/merge_into_agent_json.py +3 -4
  19. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/projections/user_merge_json.py +2 -2
  20. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/scope_rails.py +3 -3
  21. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/self_host.py +19 -21
  22. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/validate.py +2 -2
  23. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue.py +1 -1
  24. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/__init__.py +1 -1
  25. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/archive.py +6 -6
  26. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/config.py +5 -5
  27. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/diagnostics.py +31 -31
  28. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/initialise.py +0 -1
  29. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/initialise_self_hosted.py +2 -2
  30. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/package.py +5 -5
  31. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/results.py +2 -2
  32. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/verify.py +1 -1
  33. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/cli.py +16 -18
  34. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/_common.py +2 -3
  35. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/catalogue_package.py +2 -2
  36. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/catalogue_sync.py +275 -297
  37. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/catalogue_tooling_stub.py +3 -3
  38. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/install.py +28 -31
  39. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/list_installed.py +4 -4
  40. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/pack_evals.py +3 -3
  41. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/validate.py +15 -15
  42. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/config.py +12 -15
  43. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/direct_install.py +27 -26
  44. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/direct_source.py +16 -16
  45. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/direct_source_acquisition.py +12 -12
  46. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/direct_source_state.py +7 -7
  47. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/direct_validate.py +3 -3
  48. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/render.py +1 -1
  49. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/safety.py +26 -29
  50. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/scope.py +2 -2
  51. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/statelock.py +1 -1
  52. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/system_trust.py +5 -5
  53. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/version.py +1 -1
  54. {agentbundle-0.53.1 → agentbundle-0.53.2/agentbundle.egg-info}/PKG-INFO +7 -1
  55. {agentbundle-0.53.1 → agentbundle-0.53.2}/pyproject.toml +1 -1
  56. {agentbundle-0.53.1 → agentbundle-0.53.2}/templates/install-marker.py +6 -9
  57. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/README.md +2 -2
  58. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_adapter_codex.py +1 -1
  59. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_agent_plugin_projection.py +2 -2
  60. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_end_to_end_build.py +1 -1
  61. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_lint_packs.py +1 -1
  62. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_pack_schema_install.py +3 -4
  63. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_pipeline.py +1 -1
  64. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_plugin_publication_gates.py +9 -8
  65. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_policy_registry_projection.py +1 -1
  66. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_self_host_check.py +4 -4
  67. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_self_host_fixture_guard.py +1 -1
  68. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_shared_libs_projection.py +1 -1
  69. agentbundle-0.53.2/tests/fixtures/distribution-routes/golden.json +218 -0
  70. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_adapt_schema_migration.py +1 -2
  71. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_blank_catalogue.py +1 -1
  72. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_brownfield_round_trip.py +1 -2
  73. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_build_derivation_claude_plugins.py +2 -2
  74. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_catalogue_init.py +2 -2
  75. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_catalogue_verify_plugin_path.py +2 -2
  76. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_cc_user_hooks_fixture.py +1 -1
  77. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_claude_plugins_install_route.py +0 -6
  78. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_direct_install.py +8 -8
  79. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_discovery_schema_cross_consumer.py +2 -4
  80. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_fixtures_validate.py +4 -4
  81. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_adapt_chain.py +2 -2
  82. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_cmd.py +3 -3
  83. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_core_smoke.py +1 -1
  84. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_session_start_wiring.py +3 -4
  85. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_kiro_repo_hooks_fixture.py +1 -1
  86. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_local_scope_install.py +2 -2
  87. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_marketplace_entry_validation.py +7 -7
  88. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_multi_pack_install.py +2 -3
  89. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_plugin_route_membership.py +16 -16
  90. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_reserved_path_filter.py +1 -1
  91. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_self_host_schema_migration.py +1 -2
  92. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_show_cmd.py +1 -1
  93. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_trust_fallback_tls.py +1 -1
  94. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_upgrade_cmd.py +3 -3
  95. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_upgrade_user_hooks.py +1 -1
  96. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/performance/test_direct_family2_budget_cost.py +19 -19
  97. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/test_workspace_mcp_git_scope.py +11 -8
  98. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/test_workspace_mcp_layout_override.py +2 -2
  99. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_adapt_discovery_schema.py +3 -4
  100. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_adapter_symlink_policy.py +1 -1
  101. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_append_layout_section.py +1 -1
  102. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue.py +2 -2
  103. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_archive_unit_digests.py +1 -1
  104. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_ci_contract.py +1 -1
  105. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_pack_defaults.py +7 -7
  106. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_package_compare.py +1 -1
  107. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_package_refusal.py +1 -1
  108. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_sync.py +184 -186
  109. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_tooling_archive.py +1 -1
  110. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_tooling_defaults.py +1 -1
  111. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_tooling_foundation.py +2 -2
  112. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_tooling_init.py +3 -3
  113. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_tooling_lint.py +1 -1
  114. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_tooling_package.py +3 -3
  115. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_tooling_self_host.py +1 -1
  116. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_tooling_self_hosted_init.py +11 -11
  117. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_tooling_verify.py +1 -1
  118. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_trust_fallback.py +1 -1
  119. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_unit_digests.py +1 -1
  120. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_wave2_schema.py +1 -6
  121. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_wave2_validation.py +1 -6
  122. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_wave3_contracts_inspector.py +1 -1
  123. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_wave3_init_nextsteps.py +1 -1
  124. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_collect_tree_symlinks.py +1 -1
  125. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_direct_admission.py +13 -13
  126. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_direct_architecture_controls.py +20 -20
  127. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_direct_diagnostics.py +12 -12
  128. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_direct_source_acquisition.py +4 -4
  129. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_direct_source_state.py +8 -8
  130. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_direct_validate.py +3 -3
  131. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_https_catalogue.py +1 -1
  132. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_install_event_dropped_wirings.py +5 -7
  133. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_install_first_value_handoff.py +2 -2
  134. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_install_inband_detection.py +7 -7
  135. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_install_refusal_ordering.py +2 -2
  136. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_kiro_ide_hook_projection.py +1 -1
  137. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_kiro_ide_hook_rail.py +2 -2
  138. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_layout_bases_anchoring.py +3 -3
  139. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_list_installed_cmd.py +1 -1
  140. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_list_installed_status.py +7 -7
  141. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_local_scope_t7_install_gates.py +4 -1
  142. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_org_bootstrap.py +1 -2
  143. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_pack_config_api.py +1 -1
  144. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_pack_layout_section_schema.py +1 -1
  145. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_package_catalogue.py +7 -8
  146. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_packstate_source_provenance.py +1 -1
  147. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_plugin_scope_filter.py +4 -6
  148. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_resolve_user_scope_target_adapter.py +1 -1
  149. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_route_surface_parity.py +5 -5
  150. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_safety.py +4 -4
  151. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_source_conflict_guard.py +1 -1
  152. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_system_trust.py +6 -6
  153. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_upgrade_bulk_all.py +1 -1
  154. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_validate_cmd.py +1 -1
  155. agentbundle-0.53.1/tests/fixtures/distribution-routes/golden.json +0 -218
  156. {agentbundle-0.53.1 → agentbundle-0.53.2}/MANIFEST.in +0 -0
  157. {agentbundle-0.53.1 → agentbundle-0.53.2}/README.md +0 -0
  158. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/__init__.py +0 -0
  159. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/__main__.py +0 -0
  160. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/__init__.py +0 -0
  161. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/adapter.schema.json +0 -0
  162. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/adapter.toml +0 -0
  163. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/agent-plugin-extension-namespaces.schema.json +0 -0
  164. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/agent-plugin-extension-namespaces.toml +0 -0
  165. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-index.schema.json +0 -0
  166. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/guides/_shared/reference/catalogue-authoring-standards.md +0 -0
  167. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/guides/_shared/reference/catalogue-ci-contract.md +0 -0
  168. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/packs/AGENTS.md +0 -0
  169. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/packs/CLAUDE.md +0 -0
  170. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/packs/README.md +0 -0
  171. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/packs/_example/.apm/skills/example-skill/SKILL.md +0 -0
  172. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/packs/_example/.apm/skills/example-skill/evals/eval_queries.json +0 -0
  173. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/packs/_example/.claude-plugin/plugin.json +0 -0
  174. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/packs/_example/README.md +0 -0
  175. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/packs/_example/pack.toml +0 -0
  176. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/profiles/AGENTS.md +0 -0
  177. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/profiles/CLAUDE.md +0 -0
  178. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/profiles/README.md +0 -0
  179. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/profiles/_example/README.md +0 -0
  180. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/profiles/_example/profile.toml +0 -0
  181. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/tests/conformance/test_gemini_admissibility.py +0 -0
  182. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/tests/conformance/test_pack_metadata.py +0 -0
  183. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue-scaffold/tests/conformance/test_shared_library_boundaries.py +0 -0
  184. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/catalogue.schema.json +0 -0
  185. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/close_work.py +0 -0
  186. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/cooling.py +0 -0
  187. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/distribution-routes.schema.json +0 -0
  188. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/distribution-routes.toml +0 -0
  189. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/file_safety.py +0 -0
  190. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/guide.schema.json +0 -0
  191. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/install-defaults.toml +0 -0
  192. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/knowledge-captured-observation.schema.json +0 -0
  193. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/marketplace-entry.schema.json +0 -0
  194. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/pack.schema.json +0 -0
  195. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/plugin-manifest.derived.schema.json +0 -0
  196. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/plugin-manifest.schema.json +0 -0
  197. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/profile.schema.json +0 -0
  198. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/public-contracts.txt +0 -0
  199. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/skill-manifest.schema.json +0 -0
  200. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/skill.schema.json +0 -0
  201. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/target-vocab.toml +0 -0
  202. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/vendor/agent-plugins/1.0.0/LICENSE.md +0 -0
  203. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/vendor/agent-plugins/1.0.0/PROVENANCE.md +0 -0
  204. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/vendor/agent-plugins/1.0.0/mcp.schema.json +0 -0
  205. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/vendor/agent-plugins/1.0.0/plugin.schema.json +0 -0
  206. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/work_intake_refresh.py +0 -0
  207. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/workspace_status_engine.py +0 -0
  208. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/_data/workspace_status_prune.py +0 -0
  209. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/__init__.py +0 -0
  210. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/__main__.py +0 -0
  211. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/adapters/__init__.py +0 -0
  212. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/adapters/_sweep_guard.py +0 -0
  213. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/adapters/kiro_cli.py +0 -0
  214. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/contract.py +0 -0
  215. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/hook_wiring_rules.py +0 -0
  216. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/lint_packs.py +0 -0
  217. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/phase_order.py +0 -0
  218. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/projection_io.py +0 -0
  219. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/projections/__init__.py +0 -0
  220. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/projections/codex_agent_toml.py +0 -0
  221. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/projections/copilot_agent_md.py +0 -0
  222. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/projections/copilot_hooks_json.py +0 -0
  223. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/projections/gemini_command_toml.py +0 -0
  224. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/projections/hook_id.py +0 -0
  225. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/projections/merge_json.py +0 -0
  226. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/projections/plugin_hooks.py +0 -0
  227. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/recipes/composite-agents-md.toml +0 -0
  228. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/recipes/composite-marketplace.toml +0 -0
  229. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/recipes/marketplace.toml +0 -0
  230. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/recipes/per-pack-agent-plugin.toml +0 -0
  231. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/recipes/per-pack-apm-package.toml +0 -0
  232. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/recipes/per-pack-claude-plugin.toml +0 -0
  233. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/recipes/per-pack-overlay.toml +0 -0
  234. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/recipes/self-host.toml +0 -0
  235. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/route_agent_plugin.py +0 -0
  236. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/route_apm.py +0 -0
  237. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/route_claude_plugins.py +0 -0
  238. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/route_lookup.py +0 -0
  239. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/shared_libs.py +0 -0
  240. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/target_resolver.py +0 -0
  241. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/build/user_libs.py +0 -0
  242. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_fetch/__init__.py +0 -0
  243. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_fetch/direct_http.py +0 -0
  244. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_fetch/jfrog_cli.py +0 -0
  245. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_fetch/models.py +0 -0
  246. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/build.py +0 -0
  247. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/contracts_inspector.py +0 -0
  248. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/defaults.py +0 -0
  249. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/file_safety.py +0 -0
  250. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/identity.py +0 -0
  251. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/index_generator.py +0 -0
  252. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/journey_validator.py +0 -0
  253. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/lint.py +0 -0
  254. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/manifest.py +0 -0
  255. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/okf_discovery.py +0 -0
  256. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/self_host.py +0 -0
  257. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/self_host_windows.py +0 -0
  258. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/skill_spec_lint.py +0 -0
  259. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/toml_emit.py +0 -0
  260. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/catalogue_tooling/version_ranges.py +0 -0
  261. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/categories.py +0 -0
  262. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/__init__.py +0 -0
  263. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/_drop_warning.py +0 -0
  264. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/adapt.py +0 -0
  265. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/catalogue_build.py +0 -0
  266. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/catalogue_contracts.py +0 -0
  267. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/catalogue_index.py +0 -0
  268. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/catalogue_init.py +0 -0
  269. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/catalogue_lint.py +0 -0
  270. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/catalogue_self_host.py +0 -0
  271. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/catalogue_sync_defaults.py +0 -0
  272. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/catalogue_verify.py +0 -0
  273. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/config.py +0 -0
  274. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/diff.py +0 -0
  275. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/docs.py +0 -0
  276. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/init_state.py +0 -0
  277. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/list_packs.py +0 -0
  278. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/list_profiles.py +0 -0
  279. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/list_targets.py +0 -0
  280. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/oplog_cmd.py +0 -0
  281. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/pack_config_cmd.py +0 -0
  282. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/package_catalogue.py +0 -0
  283. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/profile.py +0 -0
  284. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/reconcile.py +0 -0
  285. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/render.py +0 -0
  286. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/scaffold.py +0 -0
  287. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/show.py +0 -0
  288. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/uninstall.py +0 -0
  289. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/commands/upgrade.py +0 -0
  290. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/https_catalogue.py +0 -0
  291. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/local_exclude.py +0 -0
  292. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/oplog.py +0 -0
  293. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/pack_inventory.py +0 -0
  294. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/scaffold.py +0 -0
  295. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/source_defaults.py +0 -0
  296. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/user_config.py +0 -0
  297. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle/workspace_mcp.py +0 -0
  298. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle.egg-info/SOURCES.txt +0 -0
  299. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle.egg-info/dependency_links.txt +0 -0
  300. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle.egg-info/entry_points.txt +0 -0
  301. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle.egg-info/requires.txt +0 -0
  302. {agentbundle-0.53.1 → agentbundle-0.53.2}/agentbundle.egg-info/top_level.txt +0 -0
  303. {agentbundle-0.53.1 → agentbundle-0.53.2}/conftest.py +0 -0
  304. {agentbundle-0.53.1 → agentbundle-0.53.2}/setup.cfg +0 -0
  305. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/__init__.py +0 -0
  306. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/_direct_acquisition.py +0 -0
  307. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/_support.py +0 -0
  308. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/__init__.py +0 -0
  309. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/claude-code-2.1.226-hook-events.json +0 -0
  310. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/claude-code-2.1.228-hook-events.json +0 -0
  311. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/core/.apm/agents/bar.md +0 -0
  312. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/core/.apm/commands/qux.md +0 -0
  313. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/core/.apm/hook-wiring/baz.toml +0 -0
  314. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/core/.apm/hook-wiring/qux.toml +0 -0
  315. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/core/.apm/hooks/baz.py +0 -0
  316. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/core/.apm/hooks/baz.sh +0 -0
  317. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/core/.apm/skills/example/SKILL.md +0 -0
  318. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/core/.claude-plugin/plugin.json +0 -0
  319. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/core/pack.toml +0 -0
  320. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/governance-extras/.apm/skills/example/SKILL.md +0 -0
  321. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/governance-extras/.claude-plugin/plugin.json +0 -0
  322. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/governance-extras/pack.toml +0 -0
  323. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/monorepo-extras/.apm/skills/example/SKILL.md +0 -0
  324. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/monorepo-extras/.claude-plugin/plugin.json +0 -0
  325. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/monorepo-extras/pack.toml +0 -0
  326. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/product-documentation/.apm/skills/example/SKILL.md +0 -0
  327. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/product-documentation/.claude-plugin/plugin.json +0 -0
  328. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/product-documentation/pack.toml +0 -0
  329. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/user-guide-diataxis/.apm/skills/example/SKILL.md +0 -0
  330. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/user-guide-diataxis/.claude-plugin/plugin.json +0 -0
  331. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/packs/user-guide-diataxis/pack.toml +0 -0
  332. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/fixtures/recipes/bogus-target.toml +0 -0
  333. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_adapter_claude_code.py +0 -0
  334. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_adapter_copilot.py +0 -0
  335. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_adapter_cursor.py +0 -0
  336. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_adapter_gemini.py +0 -0
  337. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_adapter_kiro.py +0 -0
  338. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_adapter_kiro_alias.py +0 -0
  339. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_adapter_kiro_cli.py +0 -0
  340. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_adapter_kiro_ide.py +0 -0
  341. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_adapter_root_bins_projection.py +0 -0
  342. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_agent_boundary_metadata_projection.py +0 -0
  343. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_build_ships_seeds.py +0 -0
  344. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_contract.py +0 -0
  345. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_contract_scope.py +0 -0
  346. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_contract_v07.py +0 -0
  347. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_contract_v08.py +0 -0
  348. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_direct_directory_cleanup.py +0 -0
  349. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_distribution_route_contract.py +0 -0
  350. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_distribution_route_golden.py +0 -0
  351. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_distribution_route_resolution.py +0 -0
  352. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_hook_wiring_rules.py +0 -0
  353. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_load_pack_hook_wiring_safely.py +0 -0
  354. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_pack_schema.py +0 -0
  355. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_pack_schema_allowed_adapters.py +0 -0
  356. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_plugin_hooks.py +0 -0
  357. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_plugin_manifest_schema.py +0 -0
  358. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_projectable_subset.py +0 -0
  359. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_projection_io.py +0 -0
  360. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_projections_merge_json.py +0 -0
  361. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_route_lookup.py +0 -0
  362. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_scope_rails.py +0 -0
  363. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_security.py +0 -0
  364. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_self_host_metadata_policy.py +0 -0
  365. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_self_host_recipe_config.py +0 -0
  366. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_sequential_implementer_dispatch_projection.py +0 -0
  367. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_shared_prefix_contract.py +0 -0
  368. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_user_libs_projection.py +0 -0
  369. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_validate.py +0 -0
  370. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/build_pipeline/test_writers_emit_lf.py +0 -0
  371. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/conftest.py +0 -0
  372. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/contracts/test_agentbundle_show_schema.py +0 -0
  373. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/contracts/test_catalogue_fetch_credential_boundary.py +0 -0
  374. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/contracts/test_skill_schema.py +0 -0
  375. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/adapt/.adapt-discovery.toml +0 -0
  376. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/adapt/values.toml +0 -0
  377. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/blank_catalogue/.claude-plugin/marketplace.json +0 -0
  378. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/blank_catalogue/catalogue.toml +0 -0
  379. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/blank_catalogue/packs/.gitkeep +0 -0
  380. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/blank_catalogue/packs/_example/.apm/skills/example-skill/SKILL.md +0 -0
  381. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/blank_catalogue/packs/_example/.claude-plugin/plugin.json +0 -0
  382. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/blank_catalogue/packs/_example/README.md +0 -0
  383. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/blank_catalogue/packs/_example/evals/eval_queries.json +0 -0
  384. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/blank_catalogue/packs/_example/pack.toml +0 -0
  385. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/blank_catalogue/profiles/.gitkeep +0 -0
  386. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/blank_catalogue/profiles/_example/README.md +0 -0
  387. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/blank_catalogue/profiles/_example/profile.toml +0 -0
  388. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/brownfield/values.toml +0 -0
  389. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/brownfield-adapt/AGENTS.md +0 -0
  390. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/brownfield-adapt/AGENTS.upstream.md +0 -0
  391. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/brownfield-adapt/DESIGN.md +0 -0
  392. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/brownfield-adapt/EXPECTED_TREE.md +0 -0
  393. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/brownfield-adapt/docs/CHARTER.md +0 -0
  394. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/brownfield-adapt/docs/guides/how-to/index.md +0 -0
  395. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/brownfield-adapt/docs/howto/getting-started.md +0 -0
  396. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/brownfield-adapt-expected/AGENTS.md +0 -0
  397. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/brownfield-adapt-expected/docs/CHARTER.md +0 -0
  398. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/brownfield-adapt-user-home/.agentbundle/.adapt-discovery.toml +0 -0
  399. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/brownfield-adapt-user-home/.agentbundle/state.toml +0 -0
  400. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/catalogue_sync/adapter_contract_major_mismatch/pack.toml +0 -0
  401. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/catalogue_wave4/catalogue.toml +0 -0
  402. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/catalogue_wave4/packs/pack-with-journey/.apm/hook-wiring/example.json +0 -0
  403. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/catalogue_wave4/packs/pack-with-journey/.apm/skills/example-skill/SKILL.md +0 -0
  404. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/catalogue_wave4/packs/pack-with-journey/.apm/skills/example-skill/scripts/run.py +0 -0
  405. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/catalogue_wave4/packs/pack-with-journey/JOURNEY.md +0 -0
  406. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/catalogue_wave4/packs/pack-with-journey/pack.toml +0 -0
  407. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/catalogue_wave4/packs/pack-without-journey/pack.toml +0 -0
  408. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/catalogue_wave4/profiles/test-profile.toml +0 -0
  409. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/cognitive-load-hosts.json +0 -0
  410. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/creds/skills/argv-flag/SKILL.md +0 -0
  411. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/creds/skills/argv-flag/scripts/cli.py +0 -0
  412. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/creds/skills/argv-flag-derived/SKILL.md +0 -0
  413. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/creds/skills/argv-flag-derived/scripts/cli.py +0 -0
  414. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/creds/skills/argv-flag-normalised/SKILL.md +0 -0
  415. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/creds/skills/argv-flag-normalised/scripts/cli.py +0 -0
  416. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/creds/skills/conforming/SKILL.md +0 -0
  417. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/creds/skills/conforming/scripts/cli.py +0 -0
  418. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/creds/skills/dotfile-grep/SKILL.md +0 -0
  419. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/creds/skills/dotfile-grep/scripts/leak.py +0 -0
  420. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/creds/skills/dotfile-with-optout/SKILL.md +0 -0
  421. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/creds/skills/dotfile-with-optout/scripts/legit.py +0 -0
  422. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/creds/skills/mcp-server-headers/SKILL.md +0 -0
  423. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/creds/skills/mcp-server-headers/scripts/cli.py +0 -0
  424. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/creds/skills/missing-dont-block/SKILL.md +0 -0
  425. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/direct/ac35_corpus_verdicts.json +0 -0
  426. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/direct/golden_state_0_5.toml +0 -0
  427. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/distribution-routes/witness-packs/portable/.apm/skills/example/SKILL.md +0 -0
  428. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/distribution-routes/witness-packs/portable/pack.toml +0 -0
  429. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/external_catalogue/.claude-plugin/marketplace.json +0 -0
  430. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/external_catalogue/AGENTS.md +0 -0
  431. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/external_catalogue/LICENSE-APACHE +0 -0
  432. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/external_catalogue/LICENSE-MIT +0 -0
  433. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/external_catalogue/agentbundle/_data/install-defaults.toml +0 -0
  434. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/external_catalogue/catalogue.toml +0 -0
  435. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/external_catalogue/packs/alpha/.apm/skills/example/SKILL.md +0 -0
  436. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/external_catalogue/packs/alpha/.claude-plugin/plugin.json +0 -0
  437. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/external_catalogue/packs/alpha/pack.toml +0 -0
  438. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/external_catalogue/packs/alpha/seeds/AGENTS.md +0 -0
  439. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/external_catalogue/packs/beta/.claude-plugin/plugin.json +0 -0
  440. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/external_catalogue/packs/beta/pack.toml +0 -0
  441. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/external_catalogue/profiles/example.toml +0 -0
  442. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/install/catalogue/packs/alpha/.apm/agents/helper.md +0 -0
  443. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/install/catalogue/packs/alpha/.apm/commands/cmd.md +0 -0
  444. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/install/catalogue/packs/alpha/.apm/hook-wiring/run.toml +0 -0
  445. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/install/catalogue/packs/alpha/.apm/hooks/run.sh +0 -0
  446. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/install/catalogue/packs/alpha/.apm/skills/example/SKILL.md +0 -0
  447. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/install/catalogue/packs/alpha/.claude-plugin/plugin.json +0 -0
  448. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/install/catalogue/packs/alpha/pack.toml +0 -0
  449. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/kiro_ide_hook/ask_agent_basic.kiro.hook +0 -0
  450. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/kiro_ide_hook/run_command_with_placeholder.kiro.hook +0 -0
  451. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/lint_packs/clean/pack.toml +0 -0
  452. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/lint_packs/clean/seeds/README.md +0 -0
  453. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/list-installed/golden_120col.txt +0 -0
  454. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/list-installed/golden_80col.txt +0 -0
  455. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/list_packs/catalogue/packs/alpha/pack.toml +0 -0
  456. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/list_packs/catalogue/packs/beta/pack.toml +0 -0
  457. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/local_scope/catalogue/packs/local-test-pack/.apm/skills/local-test/SKILL.md +0 -0
  458. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/local_scope/catalogue/packs/local-test-pack/pack.toml +0 -0
  459. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/cc-user-hooks/.apm/hook-wiring/on-prompt.toml +0 -0
  460. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/cc-user-hooks/.apm/hooks/on-prompt.sh +0 -0
  461. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/cc-user-hooks/pack.toml +0 -0
  462. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/kiro-repo-hooks/.apm/agents/reviewer.md +0 -0
  463. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/kiro-repo-hooks/.apm/hook-wiring/on-spawn.toml +0 -0
  464. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/kiro-repo-hooks/.apm/hooks/on-spawn.sh +0 -0
  465. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/kiro-repo-hooks/pack.toml +0 -0
  466. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/kiro-user-hooks/.apm/agents/reviewer.md +0 -0
  467. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/kiro-user-hooks/.apm/hook-wiring/on-spawn.toml +0 -0
  468. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/kiro-user-hooks/.apm/hooks/on-spawn.sh +0 -0
  469. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/kiro-user-hooks/pack.toml +0 -0
  470. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/malformed-kiro-missing-attach/.apm/agents/reviewer.md +0 -0
  471. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/malformed-kiro-missing-attach/.apm/hook-wiring/on-spawn.toml +0 -0
  472. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/malformed-kiro-missing-attach/.apm/hooks/on-spawn.sh +0 -0
  473. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/malformed-kiro-missing-attach/pack.toml +0 -0
  474. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/malformed-kiro-pascal-events/.apm/agents/reviewer.md +0 -0
  475. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/malformed-kiro-pascal-events/.apm/hook-wiring/on-spawn.toml +0 -0
  476. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/malformed-kiro-pascal-events/.apm/hooks/on-spawn.sh +0 -0
  477. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/malformed-kiro-pascal-events/pack.toml +0 -0
  478. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/malformed-kiro-unknown-agent/.apm/agents/reviewer.md +0 -0
  479. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/malformed-kiro-unknown-agent/.apm/hook-wiring/on-spawn.toml +0 -0
  480. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/malformed-kiro-unknown-agent/.apm/hooks/on-spawn.sh +0 -0
  481. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/packs/malformed-kiro-unknown-agent/pack.toml +0 -0
  482. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/scaffold/test-pack/seeds/AGENTS.md +0 -0
  483. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/scaffold/test-pack/seeds/_agents-footer.md +0 -0
  484. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/scaffold/test-pack/seeds/docs/CHARTER.md +0 -0
  485. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/show_contract/agentbundle-show.schema.json +0 -0
  486. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/show_contract/catalogue.json +0 -0
  487. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/show_contract/installed_state.json +0 -0
  488. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/agents/reviewer.md +0 -0
  489. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/commands/deploy.md +0 -0
  490. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/hook-wiring/pre-commit.toml +0 -0
  491. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/hooks/lint.py +0 -0
  492. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/hooks/pre-commit.sh +0 -0
  493. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/skills/work-loop/SKILL.md +0 -0
  494. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v1/packs/core/.claude-plugin/plugin.json +0 -0
  495. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v1/packs/core/pack.toml +0 -0
  496. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/agents/reviewer.md +0 -0
  497. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/commands/deploy.md +0 -0
  498. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/hook-wiring/pre-commit.toml +0 -0
  499. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/hooks/lint.py +0 -0
  500. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/hooks/pre-commit.sh +0 -0
  501. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/skills/work-loop/SKILL.md +0 -0
  502. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v2/packs/core/.claude-plugin/plugin.json +0 -0
  503. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v2/packs/core/pack.toml +0 -0
  504. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/agents/reviewer.md +0 -0
  505. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/commands/deploy.md +0 -0
  506. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/hook-wiring/pre-commit.toml +0 -0
  507. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/hooks/lint.py +0 -0
  508. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/hooks/pre-commit.sh +0 -0
  509. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/skills/work-loop/SKILL.md +0 -0
  510. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v3/packs/core/.claude-plugin/plugin.json +0 -0
  511. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/upgrade/catalogue_v3/packs/core/pack.toml +0 -0
  512. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/validate/bad_recipe_pack/pack.toml +0 -0
  513. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/validate/malformed_pack/pack.toml +0 -0
  514. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/validate/valid_pack/pack.toml +0 -0
  515. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/fixtures/validate/version_mismatch_pack/pack.toml +0 -0
  516. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/__init__.py +0 -0
  517. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_adapt_cmd.py +0 -0
  518. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_adapt_dual_scope.py +0 -0
  519. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_adapt_preflight_detection.py +0 -0
  520. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_apm_install_route.py +0 -0
  521. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_brownfield_adapt_end_to_end.py +0 -0
  522. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_brownfield_user_home_fixture.py +0 -0
  523. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_build_check_drift_gates.py +0 -0
  524. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_build_derivation_apm.py +0 -0
  525. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_catalogue_init_packageable.py +0 -0
  526. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_catalogue_verify_adapter_compat.py +0 -0
  527. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_catalogue_verify_dependencies.py +0 -0
  528. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_catalogue_verify_external_portability.py +0 -0
  529. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_catalogue_verify_fixture_checks.py +0 -0
  530. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_catalogue_verify_marketplace.py +0 -0
  531. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_catalogue_verify_output_drift.py +0 -0
  532. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_catalogue_verify_package_preflight.py +0 -0
  533. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_catalogue_verify_profile_schema.py +0 -0
  534. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_catalogue_verify_step1.py +0 -0
  535. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_catalogue_wave4_index_generator.py +0 -0
  536. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_catalogue_wave4_integration.py +0 -0
  537. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_catalogue_wave4_journey_validator.py +0 -0
  538. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_catalogue_wave4_schema.py +0 -0
  539. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_config_cascade.py +0 -0
  540. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_credential_brokers_pack_install.py +0 -0
  541. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_credentials_wheel.py +0 -0
  542. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_editable_source_detection.py +0 -0
  543. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_hook_wiring_ingress.py +0 -0
  544. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_converters_user_scope.py +0 -0
  545. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_copilot_full_parity.py +0 -0
  546. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_default_source.py +0 -0
  547. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_dependencies_gate.py +0 -0
  548. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_dropped_primitives_warning.py +0 -0
  549. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_dual_scope.py +0 -0
  550. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_layout_is_best_effort.py +0 -0
  551. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_orphan_reshape.py +0 -0
  552. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_pack_metadata_shape.py +0 -0
  553. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_profile.py +0 -0
  554. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_profile_live.py +0 -0
  555. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_repo_scope_per_adapter.py +0 -0
  556. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_research_user_scope.py +0 -0
  557. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_seed_delivery.py +0 -0
  558. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_upgrade_offer.py +0 -0
  559. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_user_hooks.py +0 -0
  560. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_install_user_scope_allowed_adapters.py +0 -0
  561. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_jfrog_cli_contract.py +0 -0
  562. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_kiro_ide_hook_e2e.py +0 -0
  563. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_kiro_user_hooks_fixture.py +0 -0
  564. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_list_packs_cmd.py +0 -0
  565. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_marketplace_manifest_regression.py +0 -0
  566. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_orphan_cleanup_respects_foreign_state.py +0 -0
  567. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_portable_catalogue_authentication.py +0 -0
  568. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_recommends_cross_scope.py +0 -0
  569. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_reconcile.py +0 -0
  570. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_scaffold_projection.py +0 -0
  571. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_self_host_sweep_respects_state.py +0 -0
  572. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_shared_prefix_coexistence.py +0 -0
  573. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_tier_invariants.py +0 -0
  574. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_uninstall_cmd.py +0 -0
  575. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_uninstall_user_hooks.py +0 -0
  576. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_upgrade_attach_to_agent.py +0 -0
  577. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_version_gate_matrix.py +0 -0
  578. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_workspace_mcp_git_fsm.py +0 -0
  579. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/integration/test_zipapp.py +0 -0
  580. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/performance/__init__.py +0 -0
  581. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/test_adapter_permissions_projection.py +0 -0
  582. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/test_workspace_mcp_elicit.py +0 -0
  583. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/test_workspace_mcp_event_bridge.py +0 -0
  584. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/test_workspace_mcp_git.py +0 -0
  585. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/test_workspace_mcp_lifecycle.py +0 -0
  586. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/test_workspace_mcp_stdin.py +0 -0
  587. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/test_workspace_mcp_tools.py +0 -0
  588. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/__init__.py +0 -0
  589. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/conftest.py +0 -0
  590. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_architect_readme_install_command.py +0 -0
  591. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_curation_deps.py +0 -0
  592. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_fetch.py +0 -0
  593. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_fetch_jfrog.py +0 -0
  594. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_init_cli_self_hosted.py +0 -0
  595. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_package_include_diagnostic.py +0 -0
  596. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_self_hosted_export_removal.py +0 -0
  597. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_skill_spec_lint.py +0 -0
  598. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_sync_fixture_set.py +0 -0
  599. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_tooling_build.py +0 -0
  600. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_tooling_file_safety.py +0 -0
  601. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_tooling_identity.py +0 -0
  602. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_tooling_source_package.py +0 -0
  603. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_wave3_contracts_cli.py +0 -0
  604. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_catalogue_wave3_offline_navigation.py +0 -0
  605. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_cli_catalogue_optional.py +0 -0
  606. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_cli_help_lists_config.py +0 -0
  607. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_cli_list_targets_help.py +0 -0
  608. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_cli_namespace_fixture.py +0 -0
  609. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_cli_path_normalisation.py +0 -0
  610. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_cli_profile_surface.py +0 -0
  611. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_cli_scope_flags.py +0 -0
  612. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_codex_agent_toml.py +0 -0
  613. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_codex_projection_modes.py +0 -0
  614. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_cognitive_load_seed_contract.py +0 -0
  615. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_common_classify_seeds.py +0 -0
  616. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_config.py +0 -0
  617. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_config_cmd.py +0 -0
  618. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_configured_adapter.py +0 -0
  619. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_confirm_helper.py +0 -0
  620. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_contract_parity.py +0 -0
  621. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_contract_v0_3_schema.py +0 -0
  622. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_copilot_agent_md.py +0 -0
  623. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_copilot_hooks_json.py +0 -0
  624. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_copilot_user_scope_wiring.py +0 -0
  625. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_credbroker_lint_hardening.py +0 -0
  626. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_dependencies_batch.py +0 -0
  627. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_diff_cmd.py +0 -0
  628. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_direct_lifecycle_facts.py +0 -0
  629. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_direct_upgrade.py +0 -0
  630. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_footprint_ownership.py +0 -0
  631. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_init_state_cmd.py +0 -0
  632. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_install_argparse_adapter_flag.py +0 -0
  633. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_install_argparse_emit_install_routes.py +0 -0
  634. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_install_defaults_preferred_adapter.py +0 -0
  635. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_install_dropped_primitives_warning.py +0 -0
  636. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_install_force_help.py +0 -0
  637. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_install_messages.py +0 -0
  638. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_install_messages_repo_scope.py +0 -0
  639. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_install_state_provenance.py +0 -0
  640. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_kiro_ide_hook_schema.py +0 -0
  641. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_lint_agent_artifacts_metadata_auth.py +0 -0
  642. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_list_targets_cmd.py +0 -0
  643. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_local_exclude_git_cache.py +0 -0
  644. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_local_scope_schema.py +0 -0
  645. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_local_scope_t10_uninstall.py +0 -0
  646. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_local_scope_t12_show.py +0 -0
  647. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_local_scope_t2_resolve.py +0 -0
  648. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_local_scope_t3_config.py +0 -0
  649. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_local_scope_t4_state_path.py +0 -0
  650. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_local_scope_t5_list_installed.py +0 -0
  651. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_local_scope_t8_install.py +0 -0
  652. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_local_scope_t9_exclude.py +0 -0
  653. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_marker_schema_version_parity.py +0 -0
  654. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_merge_into_agent_json.py +0 -0
  655. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_multi_adapter_disambiguator.py +0 -0
  656. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_nested_symlink_hardening.py +0 -0
  657. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_offer_upgrade_namespace.py +0 -0
  658. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_okf_discovery.py +0 -0
  659. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_orphan_sweep_guards.py +0 -0
  660. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_pack_inventory.py +0 -0
  661. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_pipeline_phase_order.py +0 -0
  662. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_profile_reader.py +0 -0
  663. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_render.py +0 -0
  664. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_render_cmd.py +0 -0
  665. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_render_table.py +0 -0
  666. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_resolve_state_path.py +0 -0
  667. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_resolve_target_adapter_user_config.py +0 -0
  668. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_safety_repo_scope_prefixes.py +0 -0
  669. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_safety_scan_per_pack_scoping.py +0 -0
  670. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_scaffold_cmd.py +0 -0
  671. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_scope.py +0 -0
  672. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_self_host_windows.py +0 -0
  673. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_shared_prefix_disclosure.py +0 -0
  674. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_source_defaults.py +0 -0
  675. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_state_v01_refuse_write.py +0 -0
  676. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_state_v02.py +0 -0
  677. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_state_v0_4_schema.py +0 -0
  678. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_statelock.py +0 -0
  679. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_statelock_hardening.py +0 -0
  680. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_target_resolver.py +0 -0
  681. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_toml_emitters.py +0 -0
  682. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_unresolved_markers.py +0 -0
  683. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_upgrade_recap.py +0 -0
  684. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_upgrade_source_inference.py +0 -0
  685. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_user_config_io.py +0 -0
  686. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_user_config_isolation.py +0 -0
  687. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_user_config_path.py +0 -0
  688. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_user_config_source.py +0 -0
  689. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_user_merge_json.py +0 -0
  690. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_validate_attach_to_agent.py +0 -0
  691. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_validate_categories.py +0 -0
  692. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_validate_hook_wiring_per_file_compatibility.py +0 -0
  693. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_values_from_shapes.py +0 -0
  694. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_version.py +0 -0
  695. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_windows_direct_suite_registration.py +0 -0
  696. {agentbundle-0.53.1 → agentbundle-0.53.2}/tests/unit/test_workspace_mcp_events_poller.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: agentbundle
3
- Version: 0.53.1
3
+ Version: 0.53.2
4
4
  Summary: npm for your coding agent. Install packs of skills, subagents, and hooks into any repo, for every major agent.
5
5
  Author-email: eugenelim <eugenelim@users.noreply.github.com>
6
6
  License-Expression: Apache-2.0 OR MIT
@@ -35,6 +35,12 @@ python -m pip install agentbundle
35
35
 
36
36
  Requires Python 3.11+. Runs on macOS, Linux, and Windows.
37
37
 
38
+ ## What's new in 0.53.2
39
+
40
+ Error messages from `install` and from `.adapt-discovery.toml` loading state
41
+ their rule directly instead of citing internal design records. The legacy
42
+ layout notices now say `legacy dist-tree`. Exit codes are unchanged.
43
+
38
44
  ## What's new in 0.53.1
39
45
 
40
46
  `agentbundle catalogue init` now writes a root `AGENTS.md` and a `CLAUDE.md`, so
@@ -14,6 +14,12 @@ python -m pip install agentbundle
14
14
 
15
15
  Requires Python 3.11+. Runs on macOS, Linux, and Windows.
16
16
 
17
+ ## What's new in 0.53.2
18
+
19
+ Error messages from `install` and from `.adapt-discovery.toml` loading state
20
+ their rule directly instead of citing internal design records. The legacy
21
+ layout notices now say `legacy dist-tree`. Exit codes are unchanged.
22
+
17
23
  ## What's new in 0.53.1
18
24
 
19
25
  `agentbundle catalogue init` now writes a root `AGENTS.md` and a `CLAUDE.md`, so
@@ -16,7 +16,7 @@
16
16
  "profiles/_example/README.md": "164494df049ddce3e57cb44ed604cb3d39be0a6ec2072e609ea3fa4bbfc74c72",
17
17
  "profiles/_example/profile.toml": "68af18cf50fa0327a9776b029c92bb1cf82710c649691b3ac889eb8537b8eac7",
18
18
  "tests/conformance/test_gemini_admissibility.py": "8b337da9272823aed2cb22041b3f9fd27549f075f28b9817efd5be8f8c5bb948",
19
- "tests/conformance/test_pack_layout_declared_section.py": "1e03e04b995bd3f3cd2e6362c07d05514d3fe995c0fbe59045e3cc11a1e787a0",
19
+ "tests/conformance/test_pack_layout_declared_section.py": "48f644778a08d9460458aadb92eb1157042f9094c59f859c8d44df0a271c1256",
20
20
  "tests/conformance/test_pack_metadata.py": "8ea175b88cc6e10ba10cda87676fc225ee2b968d710c8e6ab05fb20e31ec978a",
21
21
  "tests/conformance/test_shared_library_boundaries.py": "5e07783459336e657a355f43aa5a9cf6c138603624daec258ecc0fa3d74239c3"
22
22
  },
@@ -1,4 +1,4 @@
1
- """A pack's declared layout section must be one it documents (spec AC6).
1
+ """A pack's declared layout section must be one it documents.
2
2
 
3
3
  `agentbundle install` appends `[<section>] output_dir = <output_dir>` to an
4
4
  adopter's `agentbundle-layout.toml`, taking both values from the pack manifest.
@@ -209,7 +209,7 @@ def test_no_pack_documents_a_crossing_of_its_own_pairs() -> None:
209
209
 
210
210
 
211
211
  def test_every_reference_doc_agrees_with_its_pack_on_the_base() -> None:
212
- """AC6 admits a pair documented in *one* doc; this requires all of them.
212
+ """A pair documented in *one* doc is admitted; this requires all of them.
213
213
 
214
214
  A pack with several reference pages can otherwise regress one of them to a
215
215
  base the installer does not write, and stay green — the adopter reading
@@ -13,10 +13,6 @@ It detects first-install-or-update and writes a ``[[packs-installed]]`` entry
13
13
  to the scope-correct ``.adapt-install-marker.toml`` file so the existing core
14
14
  session-start nudge and ``/adapt-to-project`` skill can consume it.
15
15
 
16
- Specs:
17
- docs/specs/claude-plugins-install-route/spec.md (route = "claude-plugins")
18
- docs/specs/apm-install-route-parity/spec.md (route = "apm"; --install-route flag)
19
-
20
16
  CLI:
21
17
  ``--install-route {claude-plugins,apm}`` is *required*. The build pipeline bakes
22
18
  the value into the projected hook ``command`` at projection time for both routes;
@@ -604,8 +600,8 @@ def _serialise_marker(entries: list[dict]) -> str:
604
600
  lines.append(f"install-route = {_emit_basic_string(install_route)}")
605
601
  # Pass-through unresolved-markers and new-companions if present on the
606
602
  # entry. CLI-seeded entries carry both; writer-created entries omit them
607
- # (the writer has no visibility into the projected primitive tree —
608
- # per spec). Re-emit verbatim using _emit_basic_string so CLI-seeded
603
+ # (the writer has no visibility into the projected primitive tree).
604
+ # Re-emit verbatim using _emit_basic_string so CLI-seeded
609
605
  # queue/companion lists survive a Claude-plugins writer pass.
610
606
  if "unresolved-markers" in entry:
611
607
  markers_repr = ", ".join(
@@ -692,9 +688,10 @@ def _write_hash(plugin_data: pathlib.Path, current_hash: str) -> None:
692
688
  """Write the hash file at ``${CLAUDE_PLUGIN_DATA}/pack-manifest-hash``.
693
689
 
694
690
  Only called from ``main`` AFTER ``_write_marker`` returns successfully
695
- (the write-after-success ordering is the spec's robustness rail — see
696
- Boundaries §Never do). Hash-write failure is non-fatal (main allows it
697
- to proceed with exit 0 + warning); the next session retries detection.
691
+ (write-after-success ordering, so a failed marker write is retried
692
+ next session instead of being masked by a fresh hash). Hash-write
693
+ failure is non-fatal (main allows it to proceed with exit 0 + warning);
694
+ the next session retries detection.
698
695
 
699
696
  Uses tempfile + os.replace for atomicity, matching the marker write rail.
700
697
  """
@@ -127,7 +127,7 @@ def _parse_frontmatter(
127
127
  except UnicodeDecodeError as exc:
128
128
  raise BoundedMetadataError(f"{label}: invalid UTF-8") from exc
129
129
  # Line endings are normalised for the PARSE ONLY. `data` is the byte string
130
- # AC15 says is written to the normalized tree and fed to the digest, and it
130
+ # is written to the normalized tree and fed to the digest, and it
131
131
  # is untouched here — this rebinds `text`, never `data`.
132
132
  #
133
133
  # Without this, a `SKILL.md` saved with CRLF — the default of most Windows
@@ -153,8 +153,8 @@ def _parse_frontmatter(
153
153
  # after the parse — which is what this did — refuses the whole source when
154
154
  # an unrecognised key holds a value the bounded subset cannot represent:
155
155
  # `version: 1.0` refused while `version: 2` was dropped, and `version` is
156
- # the second most common publisher key in the surveyed corpus. RFC-0098 E18
157
- # says an unrecognised key is ignored regardless of its value type.
156
+ # the second most common publisher key in the surveyed corpus. The
157
+ # rule is that an unrecognised key is ignored regardless of its value type.
158
158
  parsed = _parse_subset(
159
159
  _strip_unrecognised_keys(raw, allowed_top_level_keys), label, limits
160
160
  )
@@ -227,7 +227,7 @@ def collect_pack_root_bins(pack_dir: Path) -> dict[str, Path]:
227
227
  target into each pair. ``agentbundle install`` operates on a single
228
228
  resolved catalogue ``pack_dir`` and owns its own per-scope path-jail, so
229
229
  it needs basenames + sources for one pack, not absolute targets under a
230
- build tree (credbroker-user-scope plan T4 — the install-side seam). The
230
+ build tree (the install-side seam). The
231
231
  install caller composes ``.agentbundle/bin/<basename>`` relpaths from
232
232
  :data:`TARGET_SUBDIR` and writes via ``safety.write_jailed`` with POSIX
233
233
  :data:`EXECUTABLE_MODE`.
@@ -84,8 +84,8 @@ def project_packs(
84
84
 
85
85
 
86
86
  # Mirror of kiro.py:_skill_direct_directory_target — keep in sync.
87
- # A shared helper is barred by the spec's `Never do` boundary (no
88
- # expansion of projections/direct_directory.py beyond `sweep_orphans`).
87
+ # A shared helper is deliberately avoided, so projections/direct_directory.py
88
+ # stays limited to `sweep_orphans`.
89
89
  def _resolve_target(output_root: Path, target_path: str) -> Path:
90
90
  """Join a contract ``target-path`` onto ``output_root``, confined.
91
91
 
@@ -119,7 +119,7 @@ def _installed_skill_names(output_root: Path, target_dir: Path) -> set[str]:
119
119
  """Return skill dir names recorded in the repo state file under target_dir.
120
120
 
121
121
  Delegates to the one shared implementation so this adapter cannot
122
- drift from the other six; see `_sweep_guard` for the AC28 refusal.
122
+ drift from the other six; see `_sweep_guard` for the unreadable-state refusal.
123
123
  """
124
124
  from agentbundle.build.adapters._sweep_guard import installed_skill_names
125
125
 
@@ -193,7 +193,7 @@ def _project_direct_directory(source_dir: Path, target_dir: Path) -> None:
193
193
  continue
194
194
  if entry.is_dir():
195
195
  destination = target_dir / entry.name
196
- # Spec § Never do — `shutil.rmtree` is barred against
196
+ # `shutil.rmtree` is barred against
197
197
  # any entry whose `is_symlink()` is true. If a previous
198
198
  # run left a symlink at the destination path, unlink it
199
199
  # (removes the link, not the target).
@@ -45,7 +45,7 @@ def _installed_skill_names(output_root: Path, target_dir: Path) -> set[str]:
45
45
  """Return skill dir names recorded in the repo state file under target_dir.
46
46
 
47
47
  Delegates to the one shared implementation so this adapter cannot
48
- drift from the other six; see `_sweep_guard` for the AC28 refusal.
48
+ drift from the other six; see `_sweep_guard` for the unreadable-state refusal.
49
49
  """
50
50
  from agentbundle.build.adapters._sweep_guard import installed_skill_names
51
51
 
@@ -157,7 +157,7 @@ def project_packs(
157
157
  if entry.is_dir():
158
158
  expected_names.add(entry.name)
159
159
  destination = target_dir / entry.name
160
- # Spec § Never do — `shutil.rmtree` is barred
160
+ # `shutil.rmtree` is barred
161
161
  # against any entry whose `is_symlink()` is
162
162
  # true. If a previous projection left a
163
163
  # symlink at the destination path, unlink it
@@ -173,7 +173,7 @@ def project_packs(
173
173
  symlinks=True,
174
174
  ignore=ignore_absolute_symlinks,
175
175
  )
176
- # Bound to `skill` only per spec § Never do. Other
176
+ # Orphan sweeping is bound to `skill` only. Other
177
177
  # direct-directory primitives opt in explicitly.
178
178
  if primitive_name == "skill":
179
179
  expected_names |= _installed_skill_names(output_root, target_dir)
@@ -219,7 +219,7 @@ def _installed_skill_names(output_root: Path, target_dir: Path) -> set[str]:
219
219
  """Return skill dir names recorded in the repo state file under target_dir.
220
220
 
221
221
  Delegates to the one shared implementation so this adapter cannot
222
- drift from the other six; see `_sweep_guard` for the AC28 refusal.
222
+ drift from the other six; see `_sweep_guard` for the unreadable-state refusal.
223
223
  """
224
224
  from agentbundle.build.adapters._sweep_guard import installed_skill_names
225
225
 
@@ -234,7 +234,7 @@ def _sweep_skill_orphans(pack_paths: list[Path], contract: dict, output_root: Pa
234
234
  for entry in source_dir.iterdir():
235
235
  if entry.is_dir():
236
236
  expected_names.add(entry.name)
237
- # AC28: this adapter previously built `expected_names` from pack
237
+ # This adapter previously built `expected_names` from pack
238
238
  # sources alone and had no protected set at all, so a sweep removed
239
239
  # every skill installed by `agentbundle install` into the same
240
240
  # directory. The installed set is unioned in, and an unreadable
@@ -229,7 +229,7 @@ def _sweep_skill_orphans(pack_paths: list[Path], contract: dict, output_root: Pa
229
229
  for entry in source_dir.iterdir():
230
230
  if entry.is_dir():
231
231
  expected_names.add(entry.name)
232
- # AC28: this adapter previously built `expected_names` from pack
232
+ # This adapter previously built `expected_names` from pack
233
233
  # sources alone and had no protected set at all, so a sweep removed
234
234
  # every skill installed by `agentbundle install` into the same
235
235
  # directory. The installed set is unioned in, and an unreadable
@@ -131,8 +131,8 @@ def project_packs(
131
131
 
132
132
 
133
133
  # Mirror of claude_code.py:_skill_direct_directory_target — keep in sync.
134
- # A shared helper is barred by the spec's `Never do` boundary (no
135
- # expansion of projections/direct_directory.py beyond `sweep_orphans`).
134
+ # A shared helper is deliberately avoided, so projections/direct_directory.py
135
+ # stays limited to `sweep_orphans`.
136
136
  def _skill_direct_directory_target(contract: dict, output_root: Path) -> Path | None:
137
137
  adapter_block = contract["adapter"]["kiro"]
138
138
  for entry in adapter_block.get("projection", []):
@@ -145,7 +145,7 @@ def _installed_skill_names(output_root: Path, target_dir: Path) -> set[str]:
145
145
  """Return skill dir names recorded in the repo state file under target_dir.
146
146
 
147
147
  Delegates to the one shared implementation so this adapter cannot
148
- drift from the other six; see `_sweep_guard` for the AC28 refusal.
148
+ drift from the other six; see `_sweep_guard` for the unreadable-state refusal.
149
149
  """
150
150
  from agentbundle.build.adapters._sweep_guard import installed_skill_names
151
151
 
@@ -461,7 +461,7 @@ def _project_direct_directory(source_dir: Path, target_dir: Path) -> None:
461
461
  continue
462
462
  if entry.is_dir():
463
463
  destination = target_dir / entry.name
464
- # Spec § Never do — `shutil.rmtree` is barred against
464
+ # `shutil.rmtree` is barred against
465
465
  # any entry whose `is_symlink()` is true. If a previous
466
466
  # run left a symlink at the destination path, unlink it.
467
467
  if destination.is_symlink():
@@ -96,7 +96,7 @@ def _sweep_skill_orphans(pack_paths: list[Path], contract: dict, output_root: Pa
96
96
  for entry in source_dir.iterdir():
97
97
  if entry.is_dir():
98
98
  expected_names.add(entry.name)
99
- # AC28: this adapter previously built `expected_names` from pack
99
+ # This adapter previously built `expected_names` from pack
100
100
  # sources alone and had no protected set at all, so a sweep removed
101
101
  # every skill installed by `agentbundle install` into the same
102
102
  # directory. The installed set is unioned in, and an unreadable
@@ -254,7 +254,7 @@ def _read_install_marker_template() -> bytes:
254
254
  def _project_pack_readme(pack_path: Path, per_pack_output: Path) -> None:
255
255
  """Copy a pack's ``README.md`` into its per-pack dist route, if present.
256
256
 
257
- enriched-pack-manifest T5: the README is the sole portable per-pack doc,
257
+ The README is the sole portable per-pack doc,
258
258
  and the manifest's ``readme = "README.md"`` pointer resolves relative to
259
259
  the route directory. A pack without a README projects none and does not
260
260
  error (the ``readme`` field is then simply absent / unresolved — never a
@@ -326,7 +326,7 @@ def derive_projectable_subset(pack_toml: dict) -> dict:
326
326
  the output only when its source field is present and non-empty, so a
327
327
  legacy ``pack.toml`` declaring none of the enriched fields yields ``{}``
328
328
  and the projected manifest is byte-identical to the pre-enrichment output
329
- (legacy-invariance AC). This is a pure function — no I/O, no schema read.
329
+ (legacy invariance). This is a pure function — no I/O, no schema read.
330
330
  """
331
331
  pack = pack_toml.get("pack", {})
332
332
  if not isinstance(pack, dict):
@@ -1683,20 +1683,20 @@ def _discover_packs_confined(packs_dir: Path) -> list[Pack]:
1683
1683
 
1684
1684
 
1685
1685
  # ---------------------------------------------------------------------------
1686
- # Claude-plugin route membership (docs/specs/claude-plugin-route-scope)
1686
+ # Claude-plugin route membership
1687
1687
  #
1688
1688
  # The route is a user-scope distribution channel: a plugin's code always lives
1689
1689
  # in the adopter's global cache, and `claude plugin install` defaults to
1690
1690
  # `--scope user`. A pack declaring `allowed-scopes = ["repo"]` therefore forbids
1691
1691
  # the only install this route offers, and publishing it contradicts the refusal
1692
- # contract ADR-0002 defines. One predicate decides membership; every writer that
1692
+ # contract for scope-restricted packs. One predicate decides membership; every writer that
1693
1693
  # can publish calls it.
1694
1694
  # ---------------------------------------------------------------------------
1695
1695
 
1696
1696
  def is_publishable(pack_meta: dict, *, slug: str) -> bool:
1697
1697
  """Does this pack belong on the Claude-plugin route?
1698
1698
 
1699
- Three conditions, all required (spec § The derived set):
1699
+ Three conditions, all required:
1700
1700
 
1701
1701
  1. the slug is not underscore-prefixed (reserved authoring asset);
1702
1702
  2. — checked by the caller, which knows whether `.claude-plugin/plugin.json`
@@ -1846,7 +1846,7 @@ def validate_pack_uniqueness(pack: Pack) -> None:
1846
1846
  """Raise if a pack has two primitives with the same local name.
1847
1847
 
1848
1848
  The local name is the stem for most primitives, except `hooks` where
1849
- `.sh` and `.py` are both legal (the spec § Hook extensions makes both
1849
+ `.sh` and `.py` are both legal (both are
1850
1850
  valid in `packs/<pack>/.apm/hooks/`) — so for hooks we key by the
1851
1851
  full filename so `baz.sh` and `baz.py` coexist.
1852
1852
  """
@@ -1912,7 +1912,7 @@ def run_recipe(
1912
1912
 
1913
1913
  `aggregate_scope` is required and has no default: it decides whether a
1914
1914
  pack skipped on the claude-plugins route is announced. A catalogue build
1915
- names every exclusion (AC1); a single-pack render stays silent, because
1915
+ names every exclusion; a single-pack render stays silent, because
1916
1916
  that is the flagship *successful* repo-scope path — `agentbundle install
1917
1917
  --pack core` — and a route refusal there reads as an error on a command
1918
1918
  that worked. A default would let `render_packs_to_dir` and `cmd_build
@@ -2071,7 +2071,7 @@ def _run_per_pack_adapter(context: _PerPackRouteContext) -> dict[str, Any]:
2071
2071
  if not pack_is_publishable(pack.path):
2072
2072
  # Route membership, not an error: a repo-only pack forbids the only
2073
2073
  # install this route offers. Named on stderr so an exclusion is
2074
- # never silent (spec § AC1, AC3).
2074
+ # never silent.
2075
2075
  if aggregate_scope == "catalogue":
2076
2076
  # Catalogue builds name every exclusion. A single-pack render —
2077
2077
  # which is what `agentbundle install --pack core` and every
@@ -2274,7 +2274,7 @@ def _run_per_pack_single(
2274
2274
  if pack_toml_src.exists():
2275
2275
  shutil.copy2(pack_toml_src, per_pack_output / "pack.toml", follow_symlinks=False)
2276
2276
 
2277
- # enriched-pack-manifest T5: project the pack's README.md into the route so
2277
+ # Project the pack's README.md into the route so
2278
2278
  # the manifest's `readme = "README.md"` pointer resolves. The README is the
2279
2279
  # sole portable per-pack doc. follow_symlinks=False mirrors the pack.toml
2280
2280
  # copy's posture (a symlinked README is not dereferenced into dist/).
@@ -2352,7 +2352,7 @@ def _run_per_pack_apm(
2352
2352
  follow_symlinks=False,
2353
2353
  )
2354
2354
 
2355
- # enriched-pack-manifest T5: project the pack's README into the APM
2355
+ # Project the pack's README into the APM
2356
2356
  # route too (the sole portable per-pack doc; same posture as above).
2357
2357
  _project_pack_readme(pack.path, per_pack_output)
2358
2358
 
@@ -2451,7 +2451,7 @@ def _run_aggregate(
2451
2451
  Membership is resolved from the **source** tree (`packs/<slug>/pack.toml`),
2452
2452
  never from the projected copy under `dist/`: `make build` has no dependency
2453
2453
  on `clean`, so a stale dist directory carries the *old* declaration and
2454
- would republish contrary to the pack's current intent (spec § AC4).
2454
+ would republish contrary to the pack's current intent.
2455
2455
  """
2456
2456
  input_subdir = (
2457
2457
  resolved_route.output_subdir
@@ -2528,7 +2528,7 @@ def _run_aggregate(
2528
2528
  # Every surviving entry must agree. Taking the FIRST match let a filtered
2529
2529
  # set silently re-key the marketplace to whichever pack happened to sort
2530
2530
  # first — identity derived from pack-supplied metadata, decided by an
2531
- # unrelated membership change. Refuse on disagreement instead (spec AC7).
2531
+ # unrelated membership change. Refuse on disagreement instead.
2532
2532
  identities: set[tuple[str, str]] = set()
2533
2533
  for entry in entries:
2534
2534
  src = entry.get("source")
@@ -2590,7 +2590,7 @@ def _run_aggregate(
2590
2590
  # single-pack render of a repo-only pack is a *successful* `agentbundle
2591
2591
  # install --pack core`, and announcing an empty marketplace there reads as
2592
2592
  # an error on a command that worked. Round thirteen added this warning
2593
- # ungated and regressed AC12's single-pack silence.
2593
+ # ungated and regressed the single-pack silence.
2594
2594
  if aggregate_scope == "catalogue" and source_by_name and not entries:
2595
2595
  print(_empty_marketplace_warning(excluded + stale), file=sys.stderr)
2596
2596
  output_path.write_text(
@@ -24,8 +24,7 @@ def ignore_absolute_symlinks(directory: str, names: list[str]) -> set[str]:
24
24
  dropping every symlink, two dropping only absolute targets — which is what
25
25
  six copies of one rule does.
26
26
 
27
- The surviving policy is pass-through, because
28
- `docs/specs/codex-native-skills/spec.md` states it as the invariant:
27
+ The surviving policy is pass-through, because the invariant is:
29
28
  "the symlink-pass-through is the path-traversal-safety invariant; never
30
29
  resolve a symlink to its target at projection time". Resolving is what
31
30
  materialises a target's bytes into the output; preserving the link does not,
@@ -248,8 +248,8 @@ def _expand_placeholders(
248
248
 
249
249
  Refuses (defense-in-depth) on malformed or unresolvable
250
250
  placeholders even though the validate rail covered these
251
- upstream. Resolved text is NOT re-scanned (RFC § Substitution
252
- rules clause 3) — single pass via ``re.sub``.
251
+ upstream. Resolved text is NOT re-scanned, so a substituted value
252
+ cannot itself expand — single pass via ``re.sub``.
253
253
  """
254
254
  # Defense-in-depth check 1 — malformed placeholder.
255
255
  for match in _ANY_PLACEHOLDER_RE.finditer(command):
@@ -128,8 +128,7 @@ def unproject(target_path: Path, owned: list[tuple[str, str]]) -> None:
128
128
 
129
129
  Empty ``hooks.<event>`` arrays are removed. The agent file itself
130
130
  is **never** removed by this function — that's the agent
131
- primitive's ``direct-file`` uninstall's responsibility (the
132
- § Conflict, idempotency, uninstall).
131
+ primitive's ``direct-file`` uninstall's responsibility.
133
132
 
134
133
  If the target file is absent, ``unproject`` is a no-op — same
135
134
  rationale as T5's ``user_merge_json.unproject``: a state row
@@ -219,8 +218,8 @@ def _shape_check_event_array(target_path: Path, event: str, value: object) -> No
219
218
  def _merge_one_entry(event_array: list, tagged_entry: dict) -> None:
220
219
  """Append or replace-in-place by id.
221
220
 
222
- No adopter-collision branch: the agent JSON is pack-owned (the
223
- § What this section does NOT add — no ``--force-merge`` for Kiro).
221
+ No adopter-collision branch: the agent JSON is pack-owned, so there is
222
+ no ``--force-merge`` for Kiro.
224
223
  Adopter hand-edits to the agent file are squatting on a managed
225
224
  surface; the next upgrade replaces the file via the agent
226
225
  primitive's ``direct-file`` projection.
@@ -17,8 +17,8 @@ three boundaries documented in the merge semantics:
17
17
  The module exposes two callables: ``project`` (install / reinstall)
18
18
  and ``unproject`` (uninstall). Both write atomically via tmp + rename.
19
19
 
20
- This module is stdlib-only — ``json`` + ``pathlib`` per the spec's
21
- *Never do — No new top-level dependency* boundary.
20
+ This module is stdlib-only — ``json`` + ``pathlib`` — because the build
21
+ pipeline takes no new top-level dependency.
22
22
  """
23
23
 
24
24
  from __future__ import annotations
@@ -64,7 +64,7 @@ _MARKER_REGEX = re.compile(rb"<adapt:(?:[A-Z_][A-Z0-9_]*|[a-z][a-z0-9-]*)>")
64
64
  # `.apm/hook-wiring/` are already user-scope-refused by Rail B, so a
65
65
  # marker check on them is unreachable. `seeds/` is already
66
66
  # user-scope-refused by Rail A, so the marker rail's input never
67
- # includes `seeds/`. Spec § *Install-scope dimension* pins the list.
67
+ # includes `seeds/`. This list is fixed, not derived.
68
68
  _MARKER_RAIL_DIRS = (".apm/skills", ".apm/agents", ".apm/commands")
69
69
 
70
70
  # Cap per-file inspection size to keep Rail C bounded. A primitive file
@@ -511,8 +511,8 @@ def check_kiro_wiring(
511
511
  # ---------------------------------------------------------------------------
512
512
  # T-C2: kiro-ide-hook validate rail.
513
513
  #
514
- # Five refusal paths covering the validate rail
515
- # under § *Kiro IDE event hooks — new `kiro-ide-hook` primitive*:
514
+ # Five refusal paths covering the validate rail for the `kiro-ide-hook`
515
+ # primitive:
516
516
  #
517
517
  # 1. Missing required field (`name`, `version`, `when.type`,
518
518
  # `then.type`).
@@ -16,9 +16,9 @@ intact under dry-run too.
16
16
 
17
17
  Marker resolution (`<adapt:NAME>` → discovery value) is the ONE place
18
18
  install-time substitution happens — every other build mode copies
19
- markers through unchanged (spec § Boundaries — Never do). The
19
+ markers through unchanged. The
20
20
  `.adapt-discovery.toml` *materialisation* lives in the
21
- `adapt-to-project` skill, out of scope here. T7 ships only the
21
+ `adapt-to-project` skill, out of scope here. This module ships only the
22
22
  consumer.
23
23
 
24
24
  Self-host scope:
@@ -306,10 +306,10 @@ TARGET_PATHS = (
306
306
  # so `make build-self` only projects the in-house packs;
307
307
  # `_aggregate_marketplace` applies the Claude-plugin route's publishability
308
308
  # predicate. It previously ignored the pack filter on the rationale that "the
309
- # catalogue advertises every pack"; docs/specs/claude-plugin-route-scope
310
- # overturns that. The route installs at user scope, so advertising a pack whose
311
- # `allowed-scopes` forbids user scope offers an install it cannot honour — and
312
- # once the dist branch drops the directory, the entry becomes a dangling fetch.
309
+ # catalogue advertises every pack"; that rationale no longer holds. The route
310
+ # installs at user scope, so advertising a pack whose `allowed-scopes` forbids
311
+ # user scope offers an install it cannot honour — and once the dist branch
312
+ # drops the directory, the entry becomes a dangling fetch.
313
313
  # Adapters outside this list (e.g. `kiro-ide`) are handled via the
314
314
  # `preferred_adapter` override path in `_effective_adapters`.
315
315
  _DEFAULT_SELF_HOST_ADAPTERS: tuple[str, ...] = ("claude-code", "codex")
@@ -678,7 +678,7 @@ EXCLUDED_PATTERNS: tuple[str, ...] = (
678
678
  # projection contract. Pyc files embed the absolute source path so they
679
679
  # can never be byte-identical across machines; excluding them prevents
680
680
  # false-positive drift failures when a skill script is imported or run
681
- # before build-check executes. See docs/backlog.md § pycache-drift.
681
+ # before build-check executes.
682
682
  "**/__pycache__/**",
683
683
  )
684
684
 
@@ -765,7 +765,7 @@ def _project_seeds(
765
765
  Returns a `{relative_target → source}` map for use by the drift
766
766
  source-naming logic.
767
767
  """
768
- # Two-pass design (per spec § Always do): build the full
768
+ # Two-pass design: build the full
769
769
  # {relative → source} map and detect collisions *before* writing
770
770
  # anything, so a collision-mid-real-write doesn't leave a partial
771
771
  # projection on disk.
@@ -791,9 +791,8 @@ def _project_seeds(
791
791
  # targets. They live in seeds so adopters can edit them;
792
792
  # the Phase-2 composite-agents-md recipe consumes them
793
793
  # by reading `packs/core/seeds/_agents-footer.md`
794
- # directly. Skip standalone projection. Convention
795
- # documented in ``docs/architecture/pack-layout.md`` § The source-of-truth split.
796
- # split.
794
+ # directly. By convention a leading underscore marks a
795
+ # source-only partial, so it gets no standalone projection.
797
796
  if src.name.startswith("_"):
798
797
  continue
799
798
  relative = src.relative_to(seeds_dir)
@@ -884,8 +883,7 @@ def _aggregate_marketplace(
884
883
  # marketplace add <owner>/<repo>` resolves — so it must apply the same
885
884
  # predicate as the dist writer. The prior note here said this function
886
885
  # "intentionally ignores the pack filter — the catalogue advertises
887
- # every pack"; that is overturned by
888
- # docs/specs/claude-plugin-route-scope: advertising a pack whose
886
+ # every pack"; that no longer holds: advertising a pack whose
889
887
  # allowed-scopes forbids user scope offers an install the route cannot
890
888
  # honour, and leaves a dangling fetch once the branch drops it.
891
889
  from agentbundle.build.main import pack_is_publishable
@@ -1008,7 +1006,7 @@ def _recreate_claude_symlink(output_root: Path, *, force_copy: bool = False) ->
1008
1006
  pass
1009
1007
  claude.unlink()
1010
1008
  elif claude.exists():
1011
- # Regular file at CLAUDE.md — replace with symlink per spec.
1009
+ # Regular file at CLAUDE.md — replace it with the symlink.
1012
1010
  claude.unlink()
1013
1011
  claude.symlink_to(desired_target)
1014
1012
  return claude
@@ -1147,7 +1145,7 @@ def _emit_info_for_unclassified(
1147
1145
  `[info]` lines for paths that are neither Projected nor Excluded.
1148
1146
 
1149
1147
  Info-level — does not fail the build. Surfaces omissions so the
1150
- next PR can classify them (per spec § *Always do*). If the working
1148
+ next PR can classify them. If the working
1151
1149
  tree is not a git repo or git is unavailable, emits a single
1152
1150
  warning rather than silently skipping classification — an operator
1153
1151
  seeing "zero info lines" should not mis-attribute it to "fully
@@ -1307,10 +1305,10 @@ def diff_against_working_tree(
1307
1305
  ) -> list[str]:
1308
1306
  """Compare every file in `shadow` against the corresponding path in
1309
1307
  `working_tree`. When `source_map` is provided, drift messages name
1310
- the source path and regeneration command per spec § *Always do*
1308
+ the source path and regeneration command
1311
1309
  (`[drift] <projected>: edit <source>; run: make build-self`).
1312
1310
 
1313
- Phase-2 strengthening per the self-hosting spec:
1311
+ Strengthened beyond a plain byte comparison:
1314
1312
 
1315
1313
  - **CRLF→LF normalisation** for text-like files (those that decode
1316
1314
  as UTF-8). Binary content is compared byte-for-byte. A CRLF-on-
@@ -1488,7 +1486,7 @@ def run_self_host(
1488
1486
  # Read `.adapt-discovery.toml` via the typed loader. Legacy
1489
1487
  # `[adapt]` table, unknown `discovery-schema-version`, and any
1490
1488
  # other invalid shape surface as `ConfigError` and refuse with
1491
- # the `self-host: ` prefix per spec.
1489
+ # the `self-host: ` prefix.
1492
1490
  from agentbundle.config import ConfigError, load_adapt_discovery_typed
1493
1491
 
1494
1492
  try:
@@ -1576,7 +1574,7 @@ def run_self_host(
1576
1574
  # credentialed consumers resolve via the `credbroker`
1577
1575
  # pip library, not a vendored shim. The shim source survives only as
1578
1576
  # the adapter-root-bins companion-shim projection source (below).
1579
- # T6: project adapter-root-bins/ into <working_tree>/.agentbundle/bin/
1577
+ # Project adapter-root-bins/ into <working_tree>/.agentbundle/bin/
1580
1578
  # with 0o755 on POSIX. Inter-pack basename collision raises
1581
1579
  # ValueError; surface as self-host: <msg> and exit 5.
1582
1580
  try:
@@ -1584,7 +1582,7 @@ def run_self_host(
1584
1582
  except ValueError as exc:
1585
1583
  print(f"self-host: {exc}", file=sys.stderr)
1586
1584
  return 5
1587
- # credbroker-user-scope T3: vendor the stdlib-base `credbroker` source
1585
+ # Vendor the stdlib-base `credbroker` source
1588
1586
  # to the per-scope lib floor (`<working_tree>/.agentbundle/lib/credbroker/`)
1589
1587
  # and the catalogue-visible pack copy (`.apm/user-libs/credbroker/`). No-op
1590
1588
  # outside the monorepo (package source absent — see user_libs docstring).
@@ -2074,7 +2072,7 @@ def _refuse_fixture_packs_dir(packs_dir: Path, *, dry_run: bool) -> int | None:
2074
2072
  either alone:
2075
2073
 
2076
2074
  * **Components.** A `tests` component followed anywhere by a `fixtures`
2077
- component. RFC-0082 moved the engine suite to
2075
+ component. The engine suite now lives at
2078
2076
  `tests/build_pipeline/fixtures/`, where the two are no longer adjacent;
2079
2077
  the original substring test missed that and failed *open*.
2080
2078
  * **The historical substring.** `tests/fixtures/` anywhere in the path.
@@ -1,7 +1,7 @@
1
1
  """Stdlib-only JSON-Schema subset validator.
2
2
 
3
- The build pipeline depends on stdlib only (per spec § Boundaries —
4
- Never do), so we cannot import a JSON-Schema library. This module
3
+ The build pipeline depends on stdlib only, so we cannot import a
4
+ JSON-Schema library. This module
5
5
  ships this subset:
6
6
 
7
7
  Supported keywords:
@@ -129,7 +129,7 @@ def resolve_git_ref(uri: str) -> str | None:
129
129
 
130
130
  A missing ``@<ref>`` suffix resolves to ``"main"`` — the same default
131
131
  ``_resolve_https`` fetches against, so this is the one parse both the
132
- fetch and the AC-0037 pin read, rather than two parses that could
132
+ fetch and the pin read, rather than two parses that could
133
133
  disagree. A local path and the digest-bearing ``archive+https://`` and
134
134
  ``catalogue+https://`` schemes don't name a ref at all, so each of those
135
135
  resolves to ``None``.
@@ -3,7 +3,7 @@
3
3
  This package provides the configuration schema, result types, and command
4
4
  stubs for the agentbundle catalogue * and agentbundle lint packs CLI surface.
5
5
 
6
- Wave 2-4 specs fill the command logic; this package establishes the stable
6
+ This package establishes the stable
7
7
  contract layer between all modules.
8
8
  """
9
9