agentbundle 0.53.2__tar.gz → 0.57.0__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.
- {agentbundle-0.53.2/agentbundle.egg-info → agentbundle-0.57.0}/PKG-INFO +32 -1
- {agentbundle-0.53.2 → agentbundle-0.57.0}/README-pypi.md +31 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/adapter.schema.json +2 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-index.schema.json +1 -1
- agentbundle-0.57.0/agentbundle/_data/catalogue-manifest.schema.json +62 -0
- agentbundle-0.57.0/agentbundle/_data/catalogue-members.txt +8 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue.schema.json +1 -1
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/pack.schema.json +1 -1
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/profile.schema.json +1 -1
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/public-contracts.txt +1 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/skill-manifest.schema.json +1 -1
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/skill.schema.json +1 -1
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/__init__.py +8 -7
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/lint_packs.py +21 -48
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/main.py +61 -53
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/recipes/self-host.toml +1 -1
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/self_host.py +1 -1
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue.py +24 -2
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/archive.py +3 -3
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/config.py +28 -62
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/diagnostics.py +1 -1
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/initialise.py +21 -21
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/lint.py +11 -21
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/verify.py +6 -6
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/cli.py +35 -4
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/catalogue_contracts.py +19 -1
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/install.py +35 -36
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/pack_evals.py +4 -3
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/profile.py +5 -20
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/upgrade.py +90 -5
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/validate.py +14 -49
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/config.py +37 -11
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/direct_source.py +3 -7
- agentbundle-0.57.0/agentbundle/pack_renames.py +419 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/render.py +2 -3
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/scope.py +2 -3
- agentbundle-0.57.0/agentbundle/version.py +96 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0/agentbundle.egg-info}/PKG-INFO +32 -1
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle.egg-info/SOURCES.txt +15 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/pyproject.toml +1 -1
- agentbundle-0.57.0/tests/_rename_fixtures.py +259 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/_support.py +3 -3
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_agent_plugin_projection.py +33 -3
- agentbundle-0.57.0/tests/build_pipeline/test_build_validate_bundled_schema.py +41 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_lint_packs.py +60 -44
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_pack_schema.py +5 -5
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_plugin_manifest_schema.py +1 -1
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_self_host_check.py +7 -7
- agentbundle-0.57.0/tests/integration/_https_archive.py +112 -0
- agentbundle-0.57.0/tests/integration/test_bundled_contracts_fail_closed.py +92 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_claude_plugins_install_route.py +4 -4
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_dropped_primitives_warning.py +6 -6
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_profile_live.py +2 -2
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_multi_pack_install.py +25 -25
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_plugin_route_membership.py +7 -4
- agentbundle-0.57.0/tests/integration/test_rename_hint_cli.py +824 -0
- agentbundle-0.57.0/tests/integration/test_rename_migration_e2e.py +219 -0
- agentbundle-0.57.0/tests/unit/test_bundled_contract_errors.py +289 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_curation_deps.py +2 -2
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_init_cli_self_hosted.py +2 -2
- agentbundle-0.57.0/tests/unit/test_catalogue_manifest_schema.py +215 -0
- agentbundle-0.57.0/tests/unit/test_catalogue_spec_version.py +124 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_tooling_lint.py +96 -69
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_tooling_self_hosted_init.py +16 -16
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_wave3_contracts_cli.py +5 -2
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_dependencies_batch.py +3 -3
- agentbundle-0.57.0/tests/unit/test_no_contracts_fallback.py +90 -0
- agentbundle-0.57.0/tests/unit/test_pack_evals_bundled_contract.py +33 -0
- agentbundle-0.57.0/tests/unit/test_pack_renames.py +905 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_toml_emitters.py +2 -2
- agentbundle-0.53.2/agentbundle/version.py +0 -49
- {agentbundle-0.53.2 → agentbundle-0.57.0}/MANIFEST.in +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/README.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/__init__.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/__main__.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/__init__.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/adapter.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/agent-plugin-extension-namespaces.schema.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/agent-plugin-extension-namespaces.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/guides/_shared/reference/catalogue-authoring-standards.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/guides/_shared/reference/catalogue-ci-contract.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/manifest.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/packs/AGENTS.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/packs/CLAUDE.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/packs/README.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/packs/_example/.apm/skills/example-skill/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/packs/_example/.apm/skills/example-skill/evals/eval_queries.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/packs/_example/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/packs/_example/README.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/packs/_example/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/profiles/AGENTS.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/profiles/CLAUDE.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/profiles/README.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/profiles/_example/README.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/profiles/_example/profile.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/tests/conformance/test_gemini_admissibility.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/tests/conformance/test_pack_layout_declared_section.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/tests/conformance/test_pack_metadata.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/catalogue-scaffold/tests/conformance/test_shared_library_boundaries.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/close_work.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/cooling.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/distribution-routes.schema.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/distribution-routes.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/file_safety.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/guide.schema.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/install-defaults.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/install-marker.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/knowledge-captured-observation.schema.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/marketplace-entry.schema.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/plugin-manifest.derived.schema.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/plugin-manifest.schema.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/target-vocab.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/vendor/agent-plugins/1.0.0/LICENSE.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/vendor/agent-plugins/1.0.0/PROVENANCE.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/vendor/agent-plugins/1.0.0/mcp.schema.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/vendor/agent-plugins/1.0.0/plugin.schema.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/work_intake_refresh.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/workspace_status_engine.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/_data/workspace_status_prune.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/bounded_metadata.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/__main__.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/adapter_root_bins.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/adapters/__init__.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/adapters/_sweep_guard.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/adapters/claude_code.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/adapters/codex.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/adapters/copilot.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/adapters/cursor.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/adapters/gemini.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/adapters/kiro.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/adapters/kiro_cli.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/adapters/kiro_ide.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/contract.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/hook_wiring_rules.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/phase_order.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/projection_io.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/projections/__init__.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/projections/codex_agent_toml.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/projections/copilot_agent_md.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/projections/copilot_hooks_json.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/projections/direct_directory.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/projections/gemini_command_toml.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/projections/hook_id.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/projections/kiro_ide_hook.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/projections/merge_into_agent_json.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/projections/merge_json.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/projections/plugin_hooks.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/projections/user_merge_json.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/recipes/composite-agents-md.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/recipes/composite-marketplace.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/recipes/marketplace.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/recipes/per-pack-agent-plugin.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/recipes/per-pack-apm-package.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/recipes/per-pack-claude-plugin.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/recipes/per-pack-overlay.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/route_agent_plugin.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/route_apm.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/route_claude_plugins.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/route_lookup.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/scope_rails.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/shared_libs.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/target_resolver.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/user_libs.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/build/validate.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_fetch/__init__.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_fetch/direct_http.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_fetch/jfrog_cli.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_fetch/models.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/__init__.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/build.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/contracts_inspector.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/defaults.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/file_safety.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/identity.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/index_generator.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/initialise_self_hosted.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/journey_validator.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/manifest.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/okf_discovery.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/package.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/results.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/self_host.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/self_host_windows.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/skill_spec_lint.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/toml_emit.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/catalogue_tooling/version_ranges.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/categories.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/__init__.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/_common.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/_drop_warning.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/adapt.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/catalogue_build.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/catalogue_index.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/catalogue_init.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/catalogue_lint.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/catalogue_package.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/catalogue_self_host.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/catalogue_sync.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/catalogue_sync_defaults.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/catalogue_tooling_stub.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/catalogue_verify.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/config.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/diff.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/docs.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/init_state.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/list_installed.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/list_packs.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/list_profiles.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/list_targets.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/oplog_cmd.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/pack_config_cmd.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/package_catalogue.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/reconcile.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/render.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/scaffold.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/show.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/commands/uninstall.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/direct_install.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/direct_source_acquisition.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/direct_source_state.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/direct_validate.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/https_catalogue.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/local_exclude.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/oplog.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/pack_inventory.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/safety.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/scaffold.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/source_defaults.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/statelock.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/system_trust.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/user_config.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle/workspace_mcp.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle.egg-info/dependency_links.txt +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle.egg-info/entry_points.txt +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle.egg-info/requires.txt +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/agentbundle.egg-info/top_level.txt +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/conftest.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/setup.cfg +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/templates/install-marker.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/__init__.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/_direct_acquisition.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/__init__.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/README.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/claude-code-2.1.226-hook-events.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/claude-code-2.1.228-hook-events.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/core/.apm/agents/bar.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/core/.apm/commands/qux.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/core/.apm/hook-wiring/baz.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/core/.apm/hook-wiring/qux.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/core/.apm/hooks/baz.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/core/.apm/hooks/baz.sh +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/core/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/core/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/core/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/governance-extras/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/governance-extras/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/governance-extras/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/monorepo-extras/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/monorepo-extras/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/monorepo-extras/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/product-documentation/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/product-documentation/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/product-documentation/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/user-guide-diataxis/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/user-guide-diataxis/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/packs/user-guide-diataxis/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/fixtures/recipes/bogus-target.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_adapter_claude_code.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_adapter_codex.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_adapter_copilot.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_adapter_cursor.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_adapter_gemini.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_adapter_kiro.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_adapter_kiro_alias.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_adapter_kiro_cli.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_adapter_kiro_ide.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_adapter_root_bins_projection.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_agent_boundary_metadata_projection.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_build_ships_seeds.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_contract.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_contract_scope.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_contract_v07.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_contract_v08.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_direct_directory_cleanup.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_distribution_route_contract.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_distribution_route_golden.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_distribution_route_resolution.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_end_to_end_build.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_hook_wiring_rules.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_load_pack_hook_wiring_safely.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_pack_schema_allowed_adapters.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_pack_schema_install.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_pipeline.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_plugin_hooks.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_plugin_publication_gates.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_policy_registry_projection.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_projectable_subset.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_projection_io.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_projections_merge_json.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_route_lookup.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_scope_rails.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_security.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_self_host_fixture_guard.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_self_host_metadata_policy.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_self_host_recipe_config.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_sequential_implementer_dispatch_projection.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_shared_libs_projection.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_shared_prefix_contract.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_user_libs_projection.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_validate.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/build_pipeline/test_writers_emit_lf.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/conftest.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/contracts/test_agentbundle_show_schema.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/contracts/test_catalogue_fetch_credential_boundary.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/contracts/test_skill_schema.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/adapt/.adapt-discovery.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/adapt/values.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/blank_catalogue/.claude-plugin/marketplace.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/blank_catalogue/catalogue.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/blank_catalogue/packs/.gitkeep +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/blank_catalogue/packs/_example/.apm/skills/example-skill/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/blank_catalogue/packs/_example/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/blank_catalogue/packs/_example/README.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/blank_catalogue/packs/_example/evals/eval_queries.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/blank_catalogue/packs/_example/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/blank_catalogue/profiles/.gitkeep +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/blank_catalogue/profiles/_example/README.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/blank_catalogue/profiles/_example/profile.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/brownfield/values.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/brownfield-adapt/AGENTS.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/brownfield-adapt/AGENTS.upstream.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/brownfield-adapt/DESIGN.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/brownfield-adapt/EXPECTED_TREE.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/brownfield-adapt/docs/CHARTER.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/brownfield-adapt/docs/guides/how-to/index.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/brownfield-adapt/docs/howto/getting-started.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/brownfield-adapt-expected/AGENTS.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/brownfield-adapt-expected/docs/CHARTER.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/brownfield-adapt-user-home/.agentbundle/.adapt-discovery.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/brownfield-adapt-user-home/.agentbundle/state.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/catalogue_sync/adapter_contract_major_mismatch/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/catalogue_wave4/catalogue.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/catalogue_wave4/packs/pack-with-journey/.apm/hook-wiring/example.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/catalogue_wave4/packs/pack-with-journey/.apm/skills/example-skill/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/catalogue_wave4/packs/pack-with-journey/.apm/skills/example-skill/scripts/run.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/catalogue_wave4/packs/pack-with-journey/JOURNEY.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/catalogue_wave4/packs/pack-with-journey/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/catalogue_wave4/packs/pack-without-journey/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/catalogue_wave4/profiles/test-profile.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/cognitive-load-hosts.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/creds/skills/argv-flag/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/creds/skills/argv-flag/scripts/cli.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/creds/skills/argv-flag-derived/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/creds/skills/argv-flag-derived/scripts/cli.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/creds/skills/argv-flag-normalised/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/creds/skills/argv-flag-normalised/scripts/cli.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/creds/skills/conforming/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/creds/skills/conforming/scripts/cli.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/creds/skills/dotfile-grep/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/creds/skills/dotfile-grep/scripts/leak.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/creds/skills/dotfile-with-optout/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/creds/skills/dotfile-with-optout/scripts/legit.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/creds/skills/mcp-server-headers/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/creds/skills/mcp-server-headers/scripts/cli.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/creds/skills/missing-dont-block/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/direct/ac35_corpus_verdicts.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/direct/golden_state_0_5.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/distribution-routes/golden.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/distribution-routes/witness-packs/portable/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/distribution-routes/witness-packs/portable/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/external_catalogue/.claude-plugin/marketplace.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/external_catalogue/AGENTS.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/external_catalogue/LICENSE-APACHE +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/external_catalogue/LICENSE-MIT +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/external_catalogue/agentbundle/_data/install-defaults.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/external_catalogue/catalogue.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/external_catalogue/packs/alpha/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/external_catalogue/packs/alpha/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/external_catalogue/packs/alpha/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/external_catalogue/packs/alpha/seeds/AGENTS.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/external_catalogue/packs/beta/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/external_catalogue/packs/beta/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/external_catalogue/profiles/example.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/install/catalogue/packs/alpha/.apm/agents/helper.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/install/catalogue/packs/alpha/.apm/commands/cmd.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/install/catalogue/packs/alpha/.apm/hook-wiring/run.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/install/catalogue/packs/alpha/.apm/hooks/run.sh +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/install/catalogue/packs/alpha/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/install/catalogue/packs/alpha/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/install/catalogue/packs/alpha/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/kiro_ide_hook/ask_agent_basic.kiro.hook +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/kiro_ide_hook/run_command_with_placeholder.kiro.hook +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/lint_packs/clean/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/lint_packs/clean/seeds/README.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/list-installed/golden_120col.txt +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/list-installed/golden_80col.txt +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/list_packs/catalogue/packs/alpha/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/list_packs/catalogue/packs/beta/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/local_scope/catalogue/packs/local-test-pack/.apm/skills/local-test/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/local_scope/catalogue/packs/local-test-pack/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/cc-user-hooks/.apm/hook-wiring/on-prompt.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/cc-user-hooks/.apm/hooks/on-prompt.sh +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/cc-user-hooks/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/kiro-repo-hooks/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/kiro-repo-hooks/.apm/hook-wiring/on-spawn.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/kiro-repo-hooks/.apm/hooks/on-spawn.sh +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/kiro-repo-hooks/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/kiro-user-hooks/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/kiro-user-hooks/.apm/hook-wiring/on-spawn.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/kiro-user-hooks/.apm/hooks/on-spawn.sh +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/kiro-user-hooks/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/malformed-kiro-missing-attach/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/malformed-kiro-missing-attach/.apm/hook-wiring/on-spawn.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/malformed-kiro-missing-attach/.apm/hooks/on-spawn.sh +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/malformed-kiro-missing-attach/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/malformed-kiro-pascal-events/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/malformed-kiro-pascal-events/.apm/hook-wiring/on-spawn.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/malformed-kiro-pascal-events/.apm/hooks/on-spawn.sh +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/malformed-kiro-pascal-events/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/malformed-kiro-unknown-agent/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/malformed-kiro-unknown-agent/.apm/hook-wiring/on-spawn.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/malformed-kiro-unknown-agent/.apm/hooks/on-spawn.sh +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/packs/malformed-kiro-unknown-agent/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/scaffold/test-pack/seeds/AGENTS.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/scaffold/test-pack/seeds/_agents-footer.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/scaffold/test-pack/seeds/docs/CHARTER.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/show_contract/agentbundle-show.schema.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/show_contract/catalogue.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/show_contract/installed_state.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/commands/deploy.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/hook-wiring/pre-commit.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/hooks/lint.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/hooks/pre-commit.sh +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/skills/work-loop/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v1/packs/core/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v1/packs/core/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/commands/deploy.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/hook-wiring/pre-commit.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/hooks/lint.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/hooks/pre-commit.sh +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/skills/work-loop/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v2/packs/core/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v2/packs/core/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/commands/deploy.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/hook-wiring/pre-commit.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/hooks/lint.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/hooks/pre-commit.sh +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/skills/work-loop/SKILL.md +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v3/packs/core/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/upgrade/catalogue_v3/packs/core/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/validate/bad_recipe_pack/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/validate/malformed_pack/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/validate/valid_pack/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/fixtures/validate/version_mismatch_pack/pack.toml +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/__init__.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_adapt_cmd.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_adapt_dual_scope.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_adapt_preflight_detection.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_adapt_schema_migration.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_apm_install_route.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_blank_catalogue.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_brownfield_adapt_end_to_end.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_brownfield_round_trip.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_brownfield_user_home_fixture.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_build_check_drift_gates.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_build_derivation_apm.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_build_derivation_claude_plugins.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_catalogue_init.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_catalogue_init_packageable.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_catalogue_verify_adapter_compat.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_catalogue_verify_dependencies.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_catalogue_verify_external_portability.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_catalogue_verify_fixture_checks.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_catalogue_verify_marketplace.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_catalogue_verify_output_drift.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_catalogue_verify_package_preflight.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_catalogue_verify_plugin_path.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_catalogue_verify_profile_schema.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_catalogue_verify_step1.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_catalogue_wave4_index_generator.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_catalogue_wave4_integration.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_catalogue_wave4_journey_validator.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_catalogue_wave4_schema.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_cc_user_hooks_fixture.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_config_cascade.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_credential_brokers_pack_install.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_credentials_wheel.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_direct_install.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_discovery_schema_cross_consumer.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_editable_source_detection.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_fixtures_validate.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_hook_wiring_ingress.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_adapt_chain.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_cmd.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_converters_user_scope.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_copilot_full_parity.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_core_smoke.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_default_source.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_dependencies_gate.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_dual_scope.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_layout_is_best_effort.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_orphan_reshape.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_pack_metadata_shape.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_profile.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_repo_scope_per_adapter.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_research_user_scope.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_seed_delivery.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_session_start_wiring.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_upgrade_offer.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_user_hooks.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_install_user_scope_allowed_adapters.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_jfrog_cli_contract.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_kiro_ide_hook_e2e.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_kiro_repo_hooks_fixture.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_kiro_user_hooks_fixture.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_list_packs_cmd.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_local_scope_install.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_marketplace_entry_validation.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_marketplace_manifest_regression.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_orphan_cleanup_respects_foreign_state.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_portable_catalogue_authentication.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_recommends_cross_scope.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_reconcile.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_reserved_path_filter.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_scaffold_projection.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_self_host_schema_migration.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_self_host_sweep_respects_state.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_shared_prefix_coexistence.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_show_cmd.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_tier_invariants.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_trust_fallback_tls.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_uninstall_cmd.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_uninstall_user_hooks.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_upgrade_attach_to_agent.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_upgrade_cmd.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_upgrade_user_hooks.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_version_gate_matrix.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_workspace_mcp_git_fsm.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/integration/test_zipapp.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/performance/__init__.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/performance/test_direct_family2_budget_cost.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/test_adapter_permissions_projection.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/test_workspace_mcp_elicit.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/test_workspace_mcp_event_bridge.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/test_workspace_mcp_git.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/test_workspace_mcp_git_scope.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/test_workspace_mcp_layout_override.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/test_workspace_mcp_lifecycle.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/test_workspace_mcp_stdin.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/test_workspace_mcp_tools.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/__init__.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/conftest.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_adapt_discovery_schema.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_adapter_symlink_policy.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_append_layout_section.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_architect_readme_install_command.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_archive_unit_digests.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_ci_contract.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_fetch.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_fetch_jfrog.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_pack_defaults.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_package_compare.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_package_include_diagnostic.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_package_refusal.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_self_hosted_export_removal.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_skill_spec_lint.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_sync.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_sync_fixture_set.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_tooling_archive.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_tooling_build.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_tooling_defaults.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_tooling_file_safety.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_tooling_foundation.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_tooling_identity.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_tooling_init.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_tooling_package.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_tooling_self_host.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_tooling_source_package.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_tooling_verify.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_trust_fallback.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_unit_digests.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_wave2_schema.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_wave2_validation.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_wave3_contracts_inspector.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_wave3_init_nextsteps.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_catalogue_wave3_offline_navigation.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_cli_catalogue_optional.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_cli_help_lists_config.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_cli_list_targets_help.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_cli_namespace_fixture.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_cli_path_normalisation.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_cli_profile_surface.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_cli_scope_flags.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_codex_agent_toml.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_codex_projection_modes.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_cognitive_load_seed_contract.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_collect_tree_symlinks.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_common_classify_seeds.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_config.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_config_cmd.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_configured_adapter.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_confirm_helper.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_contract_parity.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_contract_v0_3_schema.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_copilot_agent_md.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_copilot_hooks_json.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_copilot_user_scope_wiring.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_credbroker_lint_hardening.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_diff_cmd.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_direct_admission.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_direct_architecture_controls.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_direct_diagnostics.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_direct_lifecycle_facts.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_direct_source_acquisition.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_direct_source_state.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_direct_upgrade.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_direct_validate.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_footprint_ownership.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_https_catalogue.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_init_state_cmd.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_install_argparse_adapter_flag.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_install_argparse_emit_install_routes.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_install_defaults_preferred_adapter.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_install_dropped_primitives_warning.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_install_event_dropped_wirings.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_install_first_value_handoff.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_install_force_help.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_install_inband_detection.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_install_messages.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_install_messages_repo_scope.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_install_refusal_ordering.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_install_state_provenance.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_kiro_ide_hook_projection.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_kiro_ide_hook_rail.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_kiro_ide_hook_schema.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_layout_bases_anchoring.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_lint_agent_artifacts_metadata_auth.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_list_installed_cmd.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_list_installed_status.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_list_targets_cmd.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_local_exclude_git_cache.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_local_scope_schema.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_local_scope_t10_uninstall.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_local_scope_t12_show.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_local_scope_t2_resolve.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_local_scope_t3_config.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_local_scope_t4_state_path.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_local_scope_t5_list_installed.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_local_scope_t7_install_gates.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_local_scope_t8_install.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_local_scope_t9_exclude.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_marker_schema_version_parity.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_merge_into_agent_json.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_multi_adapter_disambiguator.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_nested_symlink_hardening.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_offer_upgrade_namespace.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_okf_discovery.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_org_bootstrap.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_orphan_sweep_guards.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_pack_config_api.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_pack_inventory.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_pack_layout_section_schema.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_package_catalogue.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_packstate_source_provenance.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_pipeline_phase_order.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_plugin_scope_filter.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_profile_reader.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_render.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_render_cmd.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_render_table.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_resolve_state_path.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_resolve_target_adapter_user_config.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_resolve_user_scope_target_adapter.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_route_surface_parity.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_safety.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_safety_repo_scope_prefixes.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_safety_scan_per_pack_scoping.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_scaffold_cmd.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_scope.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_self_host_windows.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_shared_prefix_disclosure.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_source_conflict_guard.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_source_defaults.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_state_v01_refuse_write.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_state_v02.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_state_v0_4_schema.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_statelock.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_statelock_hardening.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_system_trust.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_target_resolver.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_unresolved_markers.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_upgrade_bulk_all.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_upgrade_recap.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_upgrade_source_inference.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_user_config_io.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_user_config_isolation.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_user_config_path.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_user_config_source.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_user_merge_json.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_validate_attach_to_agent.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_validate_categories.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_validate_cmd.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_validate_hook_wiring_per_file_compatibility.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_values_from_shapes.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_version.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/tests/unit/test_windows_direct_suite_registration.py +0 -0
- {agentbundle-0.53.2 → agentbundle-0.57.0}/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.
|
|
3
|
+
Version: 0.57.0
|
|
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,37 @@ 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.57.0
|
|
39
|
+
|
|
40
|
+
`install` and `upgrade` now print the steps to move to a renamed pack when the
|
|
41
|
+
catalogue renamed the one you asked for. The governance pack is now
|
|
42
|
+
`repo-governance`. CLIs older than 0.57.0 print plain "not found", so the steps
|
|
43
|
+
are also in the `repo-governance` pack README and the changelog.
|
|
44
|
+
|
|
45
|
+
## What's new in 0.56.0
|
|
46
|
+
|
|
47
|
+
`agentbundle --version` and `catalogue contracts list` now report the catalogue
|
|
48
|
+
specification version. **Breaking:** `catalogue contracts list --format json`
|
|
49
|
+
now prints an object, `{"catalogue_specification": "<version>", "contracts":
|
|
50
|
+
[...]}`, instead of a bare array. Read the `contracts` key for the rows.
|
|
51
|
+
|
|
52
|
+
## What's new in 0.55.0
|
|
53
|
+
|
|
54
|
+
A new bundled contract, `catalogue-manifest.schema.json`, describes the shape
|
|
55
|
+
of the release archive manifest, and `catalogue contracts list`, `show`, and
|
|
56
|
+
`export` expose it. It checks shape only and is not evidence of integrity or
|
|
57
|
+
origin. `catalogue verify` now rejects a boolean `schema` value in
|
|
58
|
+
`catalogue-manifest.json` with `CAT-V-ARC-011`. The archive guide states what
|
|
59
|
+
proves where an archive came from.
|
|
60
|
+
|
|
61
|
+
## What's new in 0.54.0
|
|
62
|
+
|
|
63
|
+
Every contract now loads from the copy bundled with `agentbundle`. A
|
|
64
|
+
`contracts/` folder in or above a catalogue no longer overrides
|
|
65
|
+
`target-vocab.toml` or `adapter.toml`, and a missing or unparsable bundled
|
|
66
|
+
contract fails closed. `catalogue lint` now reports a missing pack schema as a
|
|
67
|
+
`CAT-L006` error instead of a warning that skipped validation.
|
|
68
|
+
|
|
38
69
|
## What's new in 0.53.2
|
|
39
70
|
|
|
40
71
|
Error messages from `install` and from `.adapt-discovery.toml` loading state
|
|
@@ -14,6 +14,37 @@ 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.57.0
|
|
18
|
+
|
|
19
|
+
`install` and `upgrade` now print the steps to move to a renamed pack when the
|
|
20
|
+
catalogue renamed the one you asked for. The governance pack is now
|
|
21
|
+
`repo-governance`. CLIs older than 0.57.0 print plain "not found", so the steps
|
|
22
|
+
are also in the `repo-governance` pack README and the changelog.
|
|
23
|
+
|
|
24
|
+
## What's new in 0.56.0
|
|
25
|
+
|
|
26
|
+
`agentbundle --version` and `catalogue contracts list` now report the catalogue
|
|
27
|
+
specification version. **Breaking:** `catalogue contracts list --format json`
|
|
28
|
+
now prints an object, `{"catalogue_specification": "<version>", "contracts":
|
|
29
|
+
[...]}`, instead of a bare array. Read the `contracts` key for the rows.
|
|
30
|
+
|
|
31
|
+
## What's new in 0.55.0
|
|
32
|
+
|
|
33
|
+
A new bundled contract, `catalogue-manifest.schema.json`, describes the shape
|
|
34
|
+
of the release archive manifest, and `catalogue contracts list`, `show`, and
|
|
35
|
+
`export` expose it. It checks shape only and is not evidence of integrity or
|
|
36
|
+
origin. `catalogue verify` now rejects a boolean `schema` value in
|
|
37
|
+
`catalogue-manifest.json` with `CAT-V-ARC-011`. The archive guide states what
|
|
38
|
+
proves where an archive came from.
|
|
39
|
+
|
|
40
|
+
## What's new in 0.54.0
|
|
41
|
+
|
|
42
|
+
Every contract now loads from the copy bundled with `agentbundle`. A
|
|
43
|
+
`contracts/` folder in or above a catalogue no longer overrides
|
|
44
|
+
`target-vocab.toml` or `adapter.toml`, and a missing or unparsable bundled
|
|
45
|
+
contract fails closed. `catalogue lint` now reports a missing pack schema as a
|
|
46
|
+
`CAT-L006` error instead of a warning that skipped validation.
|
|
47
|
+
|
|
17
48
|
## What's new in 0.53.2
|
|
18
49
|
|
|
19
50
|
Error messages from `install` and from `.adapt-discovery.toml` loading state
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://eugenelim.github.io/agent-ready-repo/docs/spec/catalogue/0.1/adapter.schema.json",
|
|
2
4
|
"x-spec": "docs/specs/distribution-route-contract",
|
|
3
5
|
"type": "object",
|
|
4
6
|
"required": ["contract", "primitive", "adapter"],
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"x-spec": "docs/specs/catalogue-wave4-semantic-contracts-index",
|
|
3
3
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
4
|
-
"$id": "catalogue-index.schema.json",
|
|
4
|
+
"$id": "https://eugenelim.github.io/agent-ready-repo/docs/spec/catalogue/0.1/catalogue-index.schema.json",
|
|
5
5
|
"title": "Neutral catalogue index",
|
|
6
6
|
"type": "object",
|
|
7
7
|
"additionalProperties": false,
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
{
|
|
2
|
+
"x-spec": "docs/specs/catalogue-manifest-schema",
|
|
3
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
4
|
+
"$id": "https://eugenelim.github.io/agent-ready-repo/docs/spec/catalogue/0.1/catalogue-manifest.schema.json",
|
|
5
|
+
"title": "Catalogue archive manifest",
|
|
6
|
+
"description": "Shape of the catalogue-manifest.json that `agentbundle catalogue package` writes into a catalogue archive. This schema describes shape only. A manifest that is valid against it is neither archive verification (the archive's bytes, digests and members are checked by `agentbundle catalogue verify`) nor evidence of who published the archive. Origin is established only by `catalogue verify --sha256-file` with a sidecar, or by a signature, obtained through a separately authenticated channel. Objects stay open: extra keys are allowed. The writer also emits keys this schema does not type because the verifier does not check them: source_revision, minimum_agentbundle_version, catalogue_name, catalogue_display_name and marketplace_digest (each may be null or a string), adapter_contract_version and pack_schema_version.",
|
|
7
|
+
"type": "object",
|
|
8
|
+
"required": ["schema", "bundle", "release", "generated_at", "files", "packs"],
|
|
9
|
+
"properties": {
|
|
10
|
+
"schema": {
|
|
11
|
+
"description": "Manifest schema version, 1 or 2. The package's validator rejects an integer-valued number such as 1.0 that standard JSON Schema validators and `catalogue verify` accept.",
|
|
12
|
+
"type": "integer",
|
|
13
|
+
"enum": [1, 2]
|
|
14
|
+
},
|
|
15
|
+
"bundle": {"type": "string"},
|
|
16
|
+
"release": {"type": "string"},
|
|
17
|
+
"generated_at": {"type": "string"},
|
|
18
|
+
"files": {
|
|
19
|
+
"type": "array",
|
|
20
|
+
"items": {
|
|
21
|
+
"type": "object",
|
|
22
|
+
"required": ["path", "sha256"],
|
|
23
|
+
"properties": {
|
|
24
|
+
"path": {"type": "string"},
|
|
25
|
+
"sha256": {"type": "string"}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
"packs": {
|
|
30
|
+
"type": "array",
|
|
31
|
+
"items": {
|
|
32
|
+
"type": "object",
|
|
33
|
+
"required": ["name", "version"],
|
|
34
|
+
"properties": {
|
|
35
|
+
"name": {"type": "string"},
|
|
36
|
+
"version": {"type": "string"},
|
|
37
|
+
"path": {"type": "string"},
|
|
38
|
+
"digest": {"type": "string"}
|
|
39
|
+
},
|
|
40
|
+
"if": {"required": ["digest"]},
|
|
41
|
+
"then": {"required": ["path"]}
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
"profiles": {
|
|
45
|
+
"type": "array",
|
|
46
|
+
"items": {
|
|
47
|
+
"if": {"type": "string"},
|
|
48
|
+
"else": {
|
|
49
|
+
"type": "object",
|
|
50
|
+
"required": ["name"],
|
|
51
|
+
"properties": {
|
|
52
|
+
"name": {"type": "string"},
|
|
53
|
+
"path": {"type": "string"},
|
|
54
|
+
"digest": {"type": "string"}
|
|
55
|
+
},
|
|
56
|
+
"if": {"required": ["digest"]},
|
|
57
|
+
"then": {"required": ["path"]}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "catalogue.schema.json",
|
|
3
|
+
"$id": "https://eugenelim.github.io/agent-ready-repo/docs/spec/catalogue/0.1/catalogue.schema.json",
|
|
4
4
|
"title": "CatalogueConfig",
|
|
5
5
|
"description": "JSON Schema for catalogue.toml — ini-005 Bucket 3 configuration layer.",
|
|
6
6
|
"type": "object",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "pack.schema.json",
|
|
3
|
+
"$id": "https://eugenelim.github.io/agent-ready-repo/docs/spec/catalogue/0.1/pack.schema.json",
|
|
4
4
|
"title": "PackConfig",
|
|
5
5
|
"description": "JSON Schema for pack.toml — pack metadata and adapter-contract configuration.",
|
|
6
6
|
"type": "object",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "profile.schema.json",
|
|
3
|
+
"$id": "https://eugenelim.github.io/agent-ready-repo/docs/spec/catalogue/0.1/profile.schema.json",
|
|
4
4
|
"title": "ProfileConfig",
|
|
5
5
|
"description": "JSON Schema for profiles/*.toml — pack-profile install bundles.",
|
|
6
6
|
"type": "object",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft-07/schema#",
|
|
3
|
-
"$id": "skill-manifest.schema.json",
|
|
3
|
+
"$id": "https://eugenelim.github.io/agent-ready-repo/docs/spec/catalogue/0.1/skill-manifest.schema.json",
|
|
4
4
|
"type": "object",
|
|
5
5
|
"required": ["id", "name", "version", "description"],
|
|
6
6
|
"additionalProperties": false,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "skill.schema.json",
|
|
3
|
+
"$id": "https://eugenelim.github.io/agent-ready-repo/docs/spec/catalogue/0.1/skill.schema.json",
|
|
4
4
|
"title": "SkillFrontmatter",
|
|
5
5
|
"description": "JSON Schema for SKILL.md frontmatter — the closed key set enforced by agentbundle catalogue lint --deep.",
|
|
6
6
|
"type": "object",
|
|
@@ -19,14 +19,13 @@ Subcommands landing in later tasks (T6–T8):
|
|
|
19
19
|
from __future__ import annotations
|
|
20
20
|
|
|
21
21
|
import argparse
|
|
22
|
-
import json
|
|
23
22
|
import shutil
|
|
24
23
|
import sys
|
|
25
24
|
from pathlib import Path
|
|
26
25
|
|
|
27
26
|
from agentbundle.build.contract import load as load_contract
|
|
28
27
|
from agentbundle.build.lint_packs import cmd_lint_packs
|
|
29
|
-
from agentbundle.build.main import
|
|
28
|
+
from agentbundle.build.main import cmd_build
|
|
30
29
|
from agentbundle.build.self_host import cmd_check, cmd_self
|
|
31
30
|
from agentbundle.build.validate import validate as validate_instance
|
|
32
31
|
|
|
@@ -42,12 +41,15 @@ def _cmd_validate(args: argparse.Namespace) -> int:
|
|
|
42
41
|
)
|
|
43
42
|
return 1
|
|
44
43
|
|
|
44
|
+
# Imported at call time so a patch of `agentbundle.build.main._read_bundled`
|
|
45
|
+
# reaches this call.
|
|
46
|
+
from agentbundle.build.main import _load_bundled_json
|
|
47
|
+
|
|
45
48
|
try:
|
|
46
|
-
|
|
47
|
-
except (
|
|
49
|
+
schema = _load_bundled_json("adapter.schema.json")
|
|
50
|
+
except (OSError, ValueError, ModuleNotFoundError) as exc:
|
|
48
51
|
print(
|
|
49
|
-
"validate: adapter.schema.json
|
|
50
|
-
"repository contracts",
|
|
52
|
+
f"validate: cannot read bundled _data/adapter.schema.json: {exc}",
|
|
51
53
|
file=sys.stderr,
|
|
52
54
|
)
|
|
53
55
|
return 1
|
|
@@ -58,7 +60,6 @@ def _cmd_validate(args: argparse.Namespace) -> int:
|
|
|
58
60
|
print(f"validate: failed to load {contract_path}: {exc}", file=sys.stderr)
|
|
59
61
|
return 1
|
|
60
62
|
|
|
61
|
-
schema = json.loads(schema_text)
|
|
62
63
|
errors = validate_instance(contract, schema)
|
|
63
64
|
if errors:
|
|
64
65
|
print(
|
|
@@ -18,7 +18,7 @@ Three checks, applied to every pack under a `--packs-dir`:
|
|
|
18
18
|
exceed the strictest `description-max-length`. Multi-line YAML
|
|
19
19
|
descriptions (`>`, `|`, continuation lines) are refused outright
|
|
20
20
|
rather than mis-parsed. Constraints come from
|
|
21
|
-
`
|
|
21
|
+
the bundled `_data/target-vocab.toml`.
|
|
22
22
|
|
|
23
23
|
The lint is Python-only so it runs on every CI platform without
|
|
24
24
|
shelling out, and it is wired into `make build` / `make build-self` /
|
|
@@ -44,11 +44,6 @@ from agentbundle.safety import PathJailError, assert_portable_name
|
|
|
44
44
|
# their content.
|
|
45
45
|
_PACK_SUBTREES = ("seeds", ".apm")
|
|
46
46
|
|
|
47
|
-
# Path to the sibling vocab file, relative to a repo root. The loader
|
|
48
|
-
# walks up from a caller-supplied start until an ancestor contains
|
|
49
|
-
# this relative path.
|
|
50
|
-
_VOCAB_RELPATH = Path("contracts/target-vocab.toml")
|
|
51
|
-
|
|
52
47
|
# Sentinel returned by `_extract_frontmatter_fields` when a key's
|
|
53
48
|
# value position is `>`, `|`, or empty (signaling a folded / nested
|
|
54
49
|
# block). The metadata checks translate this into a finding
|
|
@@ -57,7 +52,7 @@ _MULTILINE = object()
|
|
|
57
52
|
|
|
58
53
|
|
|
59
54
|
class Constraints(NamedTuple):
|
|
60
|
-
"""Strictest-cap snapshot of `
|
|
55
|
+
"""Strictest-cap snapshot of the bundled `_data/target-vocab.toml`.
|
|
61
56
|
|
|
62
57
|
`binding_targets` keys (`"description_max"`, `"name_max"`,
|
|
63
58
|
`"name_pattern"`) carry the ASCII-sorted list of targets enforcing
|
|
@@ -71,53 +66,31 @@ class Constraints(NamedTuple):
|
|
|
71
66
|
binding_targets: dict[str, list[str]]
|
|
72
67
|
|
|
73
68
|
|
|
74
|
-
def
|
|
75
|
-
|
|
76
|
-
while True:
|
|
77
|
-
possible = cursor / _VOCAB_RELPATH
|
|
78
|
-
if possible.is_file():
|
|
79
|
-
return possible
|
|
80
|
-
if cursor.parent == cursor:
|
|
81
|
-
return None
|
|
82
|
-
cursor = cursor.parent
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
def _load_target_vocab(start: Path) -> tuple[dict | None, str | None]:
|
|
86
|
-
"""Walk up from `start` looking for `contracts/target-vocab.toml`;
|
|
87
|
-
then fall back to the bundled engine copy. This keeps the gate working when
|
|
88
|
-
an adopter points `--packs-dir` at a tree outside the repo and when the
|
|
89
|
-
engine runs from an installed artifact. Returns `(vocab_dict, None)` on
|
|
90
|
-
success, `(None, err)` when both sources fail or the file is malformed."""
|
|
91
|
-
candidate = _walk_up_for_vocab(start)
|
|
92
|
-
source = str(candidate) if candidate is not None else None
|
|
93
|
-
text = candidate.read_text(encoding="utf-8") if candidate is not None else None
|
|
94
|
-
if text is None:
|
|
95
|
-
try:
|
|
96
|
-
from importlib.resources import files
|
|
69
|
+
def _load_target_vocab() -> tuple[dict | None, str | None]:
|
|
70
|
+
"""Load the bundled `_data/target-vocab.toml`; no other source is tried.
|
|
97
71
|
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
72
|
+
Returns `(vocab_dict, None)` on success, `(None, err)` when the bundled
|
|
73
|
+
copy is missing, unreadable or malformed. `err` names the file."""
|
|
74
|
+
# Imported here so a patch of `agentbundle.build.main._read_bundled`
|
|
75
|
+
# reaches this call; `agentbundle.build.main` as an attribute of the
|
|
76
|
+
# package is rebound to the CLI function.
|
|
77
|
+
from agentbundle.build.main import _read_bundled
|
|
78
|
+
|
|
79
|
+
try:
|
|
80
|
+
text = _read_bundled("target-vocab.toml")
|
|
81
|
+
except (OSError, UnicodeDecodeError) as exc:
|
|
107
82
|
return None, (
|
|
108
|
-
"lint-packs: target-vocab.toml
|
|
109
|
-
f"{start} and checked bundled package data; expected "
|
|
110
|
-
f"{_VOCAB_RELPATH.as_posix()} or _data/{_VOCAB_RELPATH.name})"
|
|
83
|
+
f"lint-packs: cannot read bundled _data/target-vocab.toml: {exc}"
|
|
111
84
|
)
|
|
112
85
|
try:
|
|
113
86
|
raw = tomllib.loads(text)
|
|
114
87
|
except tomllib.TOMLDecodeError as exc:
|
|
115
|
-
return None, f"lint-packs: failed to parse
|
|
88
|
+
return None, f"lint-packs: failed to parse _data/target-vocab.toml: {exc}"
|
|
116
89
|
targets = raw.get("target")
|
|
117
90
|
if not isinstance(targets, dict) or not targets:
|
|
118
91
|
return None, (
|
|
119
|
-
|
|
120
|
-
|
|
92
|
+
"lint-packs: _data/target-vocab.toml has no [target.<name>] tables — "
|
|
93
|
+
"the metadata gate has no constraints to apply"
|
|
121
94
|
)
|
|
122
95
|
return raw, None
|
|
123
96
|
|
|
@@ -499,14 +472,14 @@ def lint_pack(
|
|
|
499
472
|
from agentbundle.build import route_lookup
|
|
500
473
|
from agentbundle.build.hook_wiring_rules import claude_projection_paths
|
|
501
474
|
from agentbundle.build.main import (
|
|
475
|
+
_load_bundled_toml,
|
|
502
476
|
_load_distribution_route_contract,
|
|
503
|
-
_read_bundled,
|
|
504
477
|
)
|
|
505
478
|
from agentbundle.build.projections.plugin_hooks import compile_plugin_hooks
|
|
506
479
|
|
|
507
480
|
contract_data = contract
|
|
508
481
|
if contract_data is None:
|
|
509
|
-
contract_data =
|
|
482
|
+
contract_data = _load_bundled_toml("adapter.toml")
|
|
510
483
|
try:
|
|
511
484
|
route_data = _load_distribution_route_contract()
|
|
512
485
|
route_declarations = route_lookup.read_route_declarations(route_data)
|
|
@@ -597,7 +570,7 @@ def cmd_lint_packs(args: argparse.Namespace) -> int:
|
|
|
597
570
|
if not packs_dir.exists():
|
|
598
571
|
print(f"lint-packs: packs-dir not found: {packs_dir}", file=sys.stderr)
|
|
599
572
|
return 1
|
|
600
|
-
vocab, err = _load_target_vocab(
|
|
573
|
+
vocab, err = _load_target_vocab()
|
|
601
574
|
if err is not None:
|
|
602
575
|
print(err, file=sys.stderr)
|
|
603
576
|
print(
|
|
@@ -134,47 +134,60 @@ _AGENT_PLUGIN_SCHEMA_ANNOTATION_KEYWORDS = {
|
|
|
134
134
|
}
|
|
135
135
|
|
|
136
136
|
|
|
137
|
-
def
|
|
138
|
-
"""
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
and a dev checkout); fall back to the repo path for dev checkouts
|
|
143
|
-
whose `_data/` hasn't been synced. Inside a `zipapp` neither path is
|
|
144
|
-
a real filesystem location — callers should use `_read_bundled` to
|
|
145
|
-
get the text content instead of trying to open the returned Path.
|
|
137
|
+
def _bundled_path(name: str) -> Path:
|
|
138
|
+
"""Return the path of a data file shipped under `agentbundle/_data/`.
|
|
139
|
+
|
|
140
|
+
Inside a `zipapp` the returned path is not a real filesystem location;
|
|
141
|
+
use `_read_bundled` to get the text instead of opening it.
|
|
146
142
|
"""
|
|
147
|
-
|
|
148
|
-
if bundled.exists():
|
|
149
|
-
return bundled
|
|
150
|
-
return REPO_ROOT / "contracts" / name
|
|
143
|
+
return PACKAGE_ROOT.parent / "_data" / name
|
|
151
144
|
|
|
152
145
|
|
|
153
146
|
def _read_bundled(name: str) -> str:
|
|
154
147
|
"""Read a packaged data file, transparently handling the zipapp case.
|
|
155
148
|
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
149
|
+
Reads `agentbundle/_data/<name>` through `importlib.resources`, which
|
|
150
|
+
works for filesystem installs and inside a `zipapp`. A missing file
|
|
151
|
+
raises `FileNotFoundError` naming `_data/<name>`; no other source is
|
|
152
|
+
tried.
|
|
153
|
+
"""
|
|
154
|
+
from importlib.resources import files
|
|
155
|
+
|
|
156
|
+
resource = files("agentbundle").joinpath(f"_data/{name}")
|
|
157
|
+
if not resource.is_file():
|
|
158
|
+
raise FileNotFoundError(f"bundled contract missing: _data/{name}")
|
|
159
|
+
return resource.read_text(encoding="utf-8")
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
def _load_bundled_toml(name: str) -> dict:
|
|
163
|
+
"""Parse a packaged TOML file; no other source is tried.
|
|
164
|
+
|
|
165
|
+
A missing, undecodable or unparsable copy raises `ValueError` (or
|
|
166
|
+
`FileNotFoundError` when absent) whose message names `_data/<name>`.
|
|
161
167
|
"""
|
|
162
168
|
try:
|
|
163
|
-
|
|
169
|
+
return tomllib.loads(_read_bundled(name))
|
|
170
|
+
except (UnicodeDecodeError, tomllib.TOMLDecodeError) as exc:
|
|
171
|
+
raise ValueError(f"bundled contract unreadable: _data/{name}: {exc}") from exc
|
|
164
172
|
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
173
|
+
|
|
174
|
+
def _load_bundled_json(name: str) -> Any:
|
|
175
|
+
"""Parse a packaged JSON file; no other source is tried.
|
|
176
|
+
|
|
177
|
+
A missing, undecodable or unparsable copy raises `ValueError` (or
|
|
178
|
+
`FileNotFoundError` when absent) whose message names `_data/<name>`.
|
|
179
|
+
"""
|
|
180
|
+
try:
|
|
181
|
+
return json.loads(_read_bundled(name))
|
|
182
|
+
except (UnicodeDecodeError, json.JSONDecodeError) as exc:
|
|
183
|
+
raise ValueError(f"bundled contract unreadable: _data/{name}: {exc}") from exc
|
|
171
184
|
|
|
172
185
|
|
|
173
|
-
CONTRACT_PATH =
|
|
174
|
-
ROUTE_CONTRACT_PATH =
|
|
175
|
-
ROUTE_SCHEMA_PATH =
|
|
176
|
-
PACK_SCHEMA_PATH =
|
|
177
|
-
PLUGIN_MANIFEST_SCHEMA_PATH =
|
|
186
|
+
CONTRACT_PATH = _bundled_path("adapter.toml")
|
|
187
|
+
ROUTE_CONTRACT_PATH = _bundled_path("distribution-routes.toml")
|
|
188
|
+
ROUTE_SCHEMA_PATH = _bundled_path("distribution-routes.schema.json")
|
|
189
|
+
PACK_SCHEMA_PATH = _bundled_path("pack.schema.json")
|
|
190
|
+
PLUGIN_MANIFEST_SCHEMA_PATH = _bundled_path("plugin-manifest.schema.json")
|
|
178
191
|
PRIMITIVE_DIRS = ("skills", "agents", "hooks", "hook-wiring", "commands")
|
|
179
192
|
|
|
180
193
|
# The canonical SessionStart hook command synthesised into each derived
|
|
@@ -274,7 +287,7 @@ def validate_derived_plugin_manifest_dict(manifest: dict, label: str = "<derived
|
|
|
274
287
|
Call this BEFORE writing to disk so a synthesis bug does not land a
|
|
275
288
|
malformed plugin.json in dist/ (Blocker-3: pre-write validation).
|
|
276
289
|
"""
|
|
277
|
-
schema =
|
|
290
|
+
schema = _load_bundled_json("plugin-manifest.derived.schema.json")
|
|
278
291
|
errors = validate_instance(manifest, schema)
|
|
279
292
|
if errors:
|
|
280
293
|
raise ValueError(
|
|
@@ -848,10 +861,8 @@ def _validate_agent_plugin_extension_schema(schema: object) -> None:
|
|
|
848
861
|
|
|
849
862
|
def _load_agent_plugin_extension_registry() -> dict:
|
|
850
863
|
"""Load the bundled, closed extension allocation contract."""
|
|
851
|
-
registry =
|
|
852
|
-
schema = json
|
|
853
|
-
_read_bundled("agent-plugin-extension-namespaces.schema.json")
|
|
854
|
-
)
|
|
864
|
+
registry = _load_bundled_toml("agent-plugin-extension-namespaces.toml")
|
|
865
|
+
schema = _load_bundled_json("agent-plugin-extension-namespaces.schema.json")
|
|
855
866
|
if validate_instance(registry, schema):
|
|
856
867
|
raise ValueError("agent-plugin: extension-registry error invalid-contract")
|
|
857
868
|
_validate_agent_plugin_extension_registry(registry)
|
|
@@ -863,12 +874,13 @@ def _load_agent_plugin_extension_registry() -> dict:
|
|
|
863
874
|
|
|
864
875
|
|
|
865
876
|
def _load_agent_plugin_extension_schema(schema_path: str) -> dict:
|
|
866
|
-
"""Load one active schema
|
|
877
|
+
"""Load one active schema; a refusal names only its package-relative path."""
|
|
867
878
|
try:
|
|
868
|
-
schema =
|
|
869
|
-
except (OSError, TypeError,
|
|
879
|
+
schema = _load_bundled_json(schema_path)
|
|
880
|
+
except (OSError, TypeError, ValueError) as exc:
|
|
870
881
|
raise ValueError(
|
|
871
|
-
"agent-plugin: extension-registry error invalid-schema"
|
|
882
|
+
"agent-plugin: extension-registry error invalid-schema: "
|
|
883
|
+
f"_data/{schema_path}"
|
|
872
884
|
) from exc
|
|
873
885
|
_validate_agent_plugin_extension_schema(schema)
|
|
874
886
|
return schema
|
|
@@ -1039,9 +1051,7 @@ def derive_agent_plugin_manifest(
|
|
|
1039
1051
|
if extensions:
|
|
1040
1052
|
manifest["extensions"] = extensions
|
|
1041
1053
|
|
|
1042
|
-
schema = json
|
|
1043
|
-
_read_bundled("vendor/agent-plugins/1.0.0/plugin.schema.json")
|
|
1044
|
-
)
|
|
1054
|
+
schema = _load_bundled_json("vendor/agent-plugins/1.0.0/plugin.schema.json")
|
|
1045
1055
|
errors = validate_instance(manifest, schema)
|
|
1046
1056
|
if errors:
|
|
1047
1057
|
raise _agent_plugin_error(pack_name, "manifest", "schema-invalid")
|
|
@@ -1349,9 +1359,7 @@ def _run_per_pack_agent_plugin(
|
|
|
1349
1359
|
raise ValueError("agent-plugin: output error unsafe-output") from exc
|
|
1350
1360
|
|
|
1351
1361
|
produced: dict[str, str] = {}
|
|
1352
|
-
schema = json
|
|
1353
|
-
_read_bundled("vendor/agent-plugins/1.0.0/plugin.schema.json")
|
|
1354
|
-
)
|
|
1362
|
+
schema = _load_bundled_json("vendor/agent-plugins/1.0.0/plugin.schema.json")
|
|
1355
1363
|
for item in prepared:
|
|
1356
1364
|
pack_root = route_root / item.pack_name
|
|
1357
1365
|
_assert_under(pack_root, route_root)
|
|
@@ -1476,7 +1484,7 @@ def _resolve_distribution_route(
|
|
|
1476
1484
|
try:
|
|
1477
1485
|
behaviors = route_lookup.resolve_route_behaviors(route_contract)
|
|
1478
1486
|
except ValueError:
|
|
1479
|
-
schema =
|
|
1487
|
+
schema = _load_bundled_json("distribution-routes.schema.json")
|
|
1480
1488
|
errors = validate_instance(route_contract, schema)
|
|
1481
1489
|
if errors:
|
|
1482
1490
|
raise ValueError(
|
|
@@ -1526,7 +1534,7 @@ def _resolve_distribution_route(
|
|
|
1526
1534
|
f"adapter-projector {expected_adapter!r}"
|
|
1527
1535
|
)
|
|
1528
1536
|
|
|
1529
|
-
schema =
|
|
1537
|
+
schema = _load_bundled_json("distribution-routes.schema.json")
|
|
1530
1538
|
errors = validate_instance(route_contract, schema)
|
|
1531
1539
|
if errors:
|
|
1532
1540
|
raise ValueError(
|
|
@@ -1581,8 +1589,8 @@ def _resolve_distribution_route(
|
|
|
1581
1589
|
|
|
1582
1590
|
def _load_distribution_route_contract() -> dict:
|
|
1583
1591
|
"""Decode and validate the bundled distribution-route contract."""
|
|
1584
|
-
route_contract =
|
|
1585
|
-
schema =
|
|
1592
|
+
route_contract = _load_bundled_toml("distribution-routes.toml")
|
|
1593
|
+
schema = _load_bundled_json("distribution-routes.schema.json")
|
|
1586
1594
|
errors = validate_instance(route_contract, schema)
|
|
1587
1595
|
if errors:
|
|
1588
1596
|
raise ValueError(
|
|
@@ -1821,7 +1829,7 @@ def validate_pack_metadata(
|
|
|
1821
1829
|
raise ValueError("pack metadata is unsafe") from exc
|
|
1822
1830
|
else:
|
|
1823
1831
|
metadata = tomllib.loads(pack_toml_path.read_text(encoding="utf-8"))
|
|
1824
|
-
schema =
|
|
1832
|
+
schema = _load_bundled_json("pack.schema.json")
|
|
1825
1833
|
errors = validate_instance(metadata, schema)
|
|
1826
1834
|
if errors:
|
|
1827
1835
|
raise ValueError(
|
|
@@ -1833,7 +1841,7 @@ def validate_pack_metadata(
|
|
|
1833
1841
|
def validate_plugin_manifest(plugin_json_path: Path) -> None:
|
|
1834
1842
|
"""Validate a per-pack .claude-plugin/plugin.json against schema."""
|
|
1835
1843
|
manifest = json.loads(plugin_json_path.read_text(encoding="utf-8"))
|
|
1836
|
-
schema =
|
|
1844
|
+
schema = _load_bundled_json("plugin-manifest.schema.json")
|
|
1837
1845
|
errors = validate_instance(manifest, schema)
|
|
1838
1846
|
if errors:
|
|
1839
1847
|
raise ValueError(
|
|
@@ -2622,7 +2630,7 @@ def run_default_build(
|
|
|
2622
2630
|
) -> list[dict]:
|
|
2623
2631
|
"""Run the bundled route-bearing recipes used by plain `make build`."""
|
|
2624
2632
|
if contract is None:
|
|
2625
|
-
contract =
|
|
2633
|
+
contract = _load_bundled_toml("adapter.toml")
|
|
2626
2634
|
route_contract = _load_distribution_route_contract()
|
|
2627
2635
|
behaviors = route_lookup.resolve_route_behaviors(route_contract)
|
|
2628
2636
|
recipes = [load_recipe(recipe_name) for recipe_name in default_recipes()]
|
|
@@ -2660,7 +2668,7 @@ def cmd_build(args) -> int:
|
|
|
2660
2668
|
output_dir = Path(args.output_dir).resolve()
|
|
2661
2669
|
packs_dir = Path(args.packs_dir).resolve()
|
|
2662
2670
|
try:
|
|
2663
|
-
contract =
|
|
2671
|
+
contract = _load_bundled_toml("adapter.toml")
|
|
2664
2672
|
route_contract = _load_distribution_route_contract()
|
|
2665
2673
|
except Exception as exc:
|
|
2666
2674
|
print(f"build: failed to load contract: {exc}", file=sys.stderr)
|
|
@@ -23,7 +23,7 @@ targets = ["claude-code", "codex"]
|
|
|
23
23
|
# advertised via `marketplace.json` but their primitives don't belong in this
|
|
24
24
|
# repo's `.claude/skills/` tree; `monorepo-extras` is repo-only by metadata but
|
|
25
25
|
# the bundle is not a canonical `new-package` consumer, so it's left out too.
|
|
26
|
-
include = ["core", "governance
|
|
26
|
+
include = ["core", "repo-governance", "product-documentation", "catalogue-curation"]
|
|
27
27
|
|
|
28
28
|
[recipe.iterate]
|
|
29
29
|
over = "packs/*/"
|
|
@@ -315,7 +315,7 @@ TARGET_PATHS = (
|
|
|
315
315
|
_DEFAULT_SELF_HOST_ADAPTERS: tuple[str, ...] = ("claude-code", "codex")
|
|
316
316
|
_DEFAULT_SELF_HOST_PACKS: tuple[str, ...] = (
|
|
317
317
|
"core",
|
|
318
|
-
"governance
|
|
318
|
+
"repo-governance",
|
|
319
319
|
"product-documentation",
|
|
320
320
|
"user-guide-diataxis",
|
|
321
321
|
)
|