agentbundle 0.58.1__tar.gz → 0.59.1__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.58.1/agentbundle.egg-info → agentbundle-0.59.1}/PKG-INFO +12 -1
- {agentbundle-0.58.1 → agentbundle-0.59.1}/README-pypi.md +11 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/cooling.py +79 -2
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/work_intake_refresh.py +242 -177
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/workspace_status_engine.py +14 -55
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/self_host.py +2 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/version.py +1 -1
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/workspace_mcp.py +16 -159
- {agentbundle-0.58.1 → agentbundle-0.59.1/agentbundle.egg-info}/PKG-INFO +12 -1
- {agentbundle-0.58.1 → agentbundle-0.59.1}/pyproject.toml +1 -1
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_policy_registry_projection.py +2 -2
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_self_host_check.py +42 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_skill_spec_lint.py +1 -1
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_workspace_mcp_events_poller.py +2 -3
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_workspace_mcp_supervisor_run.py +16 -24
- {agentbundle-0.58.1 → agentbundle-0.59.1}/MANIFEST.in +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/README.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/__init__.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/__main__.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/__init__.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/_content_safety.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/adapter.schema.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/adapter.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/agent-plugin-extension-namespaces.schema.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/agent-plugin-extension-namespaces.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-index.schema.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-manifest.schema.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-members.txt +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/guides/_shared/reference/catalogue-authoring-standards.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/guides/_shared/reference/catalogue-ci-contract.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/manifest.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/packs/AGENTS.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/packs/CLAUDE.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/packs/README.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/packs/_example/.apm/skills/example-skill/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/packs/_example/.apm/skills/example-skill/evals/eval_queries.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/packs/_example/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/packs/_example/README.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/packs/_example/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/profiles/AGENTS.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/profiles/CLAUDE.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/profiles/README.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/profiles/_example/README.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/profiles/_example/profile.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/tests/conformance/test_gemini_admissibility.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/tests/conformance/test_pack_layout_declared_section.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/tests/conformance/test_pack_metadata.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue-scaffold/tests/conformance/test_shared_library_boundaries.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/catalogue.schema.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/close_work.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/distribution-routes.schema.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/distribution-routes.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/file_safety.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/guide.schema.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/install-defaults.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/install-marker.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/knowledge-captured-observation.schema.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/marketplace-entry.schema.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/pack.schema.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/plugin-manifest.derived.schema.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/plugin-manifest.schema.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/profile.schema.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/public-contracts.txt +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/skill-manifest.schema.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/skill.schema.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/target-vocab.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/vendor/agent-plugins/1.0.0/LICENSE.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/vendor/agent-plugins/1.0.0/PROVENANCE.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/vendor/agent-plugins/1.0.0/mcp.schema.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/vendor/agent-plugins/1.0.0/plugin.schema.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/_data/workspace_status_prune.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/bounded_metadata.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/__init__.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/__main__.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/adapter_root_bins.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/adapters/__init__.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/adapters/_sweep_guard.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/adapters/claude_code.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/adapters/codex.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/adapters/copilot.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/adapters/cursor.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/adapters/gemini.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/adapters/kiro.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/adapters/kiro_cli.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/adapters/kiro_ide.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/contract.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/hook_wiring_rules.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/lint_packs.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/main.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/phase_order.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/projection_io.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/projections/__init__.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/projections/codex_agent_toml.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/projections/copilot_agent_md.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/projections/copilot_hooks_json.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/projections/direct_directory.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/projections/gemini_command_toml.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/projections/hook_id.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/projections/kiro_ide_hook.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/projections/merge_into_agent_json.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/projections/merge_json.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/projections/plugin_hooks.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/projections/user_merge_json.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/recipes/composite-agents-md.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/recipes/composite-marketplace.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/recipes/marketplace.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/recipes/per-pack-agent-plugin.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/recipes/per-pack-apm-package.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/recipes/per-pack-claude-plugin.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/recipes/per-pack-overlay.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/recipes/self-host.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/route_agent_plugin.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/route_apm.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/route_claude_plugins.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/route_lookup.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/scope_rails.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/shared_libs.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/target_resolver.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/user_libs.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/build/validate.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_fetch/__init__.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_fetch/direct_http.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_fetch/jfrog_cli.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_fetch/models.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/__init__.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/archive.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/build.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/config.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/contracts_inspector.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/defaults.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/diagnostics.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/file_safety.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/identity.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/index_generator.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/initialise.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/initialise_self_hosted.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/journey_validator.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/lint.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/manifest.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/okf_discovery.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/package.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/results.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/self_host.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/self_host_windows.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/skill_spec_lint.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/toml_emit.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/verify.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/catalogue_tooling/version_ranges.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/categories.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/cli.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/__init__.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/_common.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/_drop_warning.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/adapt.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/catalogue_build.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/catalogue_contracts.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/catalogue_index.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/catalogue_init.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/catalogue_lint.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/catalogue_package.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/catalogue_self_host.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/catalogue_sync.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/catalogue_sync_defaults.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/catalogue_tooling_stub.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/catalogue_verify.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/config.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/diff.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/docs.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/init_state.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/install.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/list_installed.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/list_packs.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/list_profiles.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/list_targets.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/oplog_cmd.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/pack_config_cmd.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/pack_evals.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/package_catalogue.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/profile.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/reconcile.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/render.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/scaffold.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/show.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/uninstall.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/upgrade.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/commands/validate.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/config.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/direct_install.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/direct_source.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/direct_source_acquisition.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/direct_source_state.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/direct_validate.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/https_catalogue.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/local_exclude.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/oplog.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/pack_inventory.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/pack_renames.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/render.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/safety.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/scaffold.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/scope.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/source_defaults.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/statelock.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/system_trust.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle/user_config.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle.egg-info/SOURCES.txt +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle.egg-info/dependency_links.txt +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle.egg-info/entry_points.txt +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle.egg-info/requires.txt +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/agentbundle.egg-info/top_level.txt +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/conftest.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/setup.cfg +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/templates/install-marker.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/__init__.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/_direct_acquisition.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/_rename_fixtures.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/_support.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/__init__.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/README.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/claude-code-2.1.226-hook-events.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/claude-code-2.1.228-hook-events.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/core/.apm/agents/bar.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/core/.apm/commands/qux.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/core/.apm/hook-wiring/baz.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/core/.apm/hook-wiring/qux.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/core/.apm/hooks/baz.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/core/.apm/hooks/baz.sh +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/core/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/core/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/core/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/governance-extras/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/governance-extras/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/governance-extras/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/monorepo-extras/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/monorepo-extras/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/monorepo-extras/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/product-documentation/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/product-documentation/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/product-documentation/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/user-guide-diataxis/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/user-guide-diataxis/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/packs/user-guide-diataxis/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/fixtures/recipes/bogus-target.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_adapter_claude_code.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_adapter_codex.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_adapter_copilot.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_adapter_cursor.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_adapter_gemini.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_adapter_kiro.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_adapter_kiro_alias.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_adapter_kiro_cli.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_adapter_kiro_ide.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_adapter_root_bins_projection.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_agent_boundary_metadata_projection.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_agent_plugin_projection.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_build_ships_seeds.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_build_validate_bundled_schema.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_contract.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_contract_scope.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_contract_v07.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_contract_v08.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_direct_directory_cleanup.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_distribution_route_contract.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_distribution_route_golden.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_distribution_route_resolution.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_end_to_end_build.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_hook_wiring_rules.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_lint_packs.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_load_pack_hook_wiring_safely.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_pack_schema.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_pack_schema_allowed_adapters.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_pack_schema_install.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_pipeline.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_plugin_hooks.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_plugin_manifest_schema.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_plugin_publication_gates.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_projectable_subset.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_projection_io.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_projections_merge_json.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_route_lookup.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_scope_rails.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_security.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_self_host_fixture_guard.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_self_host_metadata_policy.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_self_host_recipe_config.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_sequential_implementer_dispatch_projection.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_shared_libs_projection.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_shared_prefix_contract.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_user_libs_projection.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_validate.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/build_pipeline/test_writers_emit_lf.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/conftest.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/contracts/test_agentbundle_show_schema.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/contracts/test_catalogue_fetch_credential_boundary.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/contracts/test_skill_schema.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/adapt/.adapt-discovery.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/adapt/values.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/blank_catalogue/.claude-plugin/marketplace.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/blank_catalogue/catalogue.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/blank_catalogue/packs/.gitkeep +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/blank_catalogue/packs/_example/.apm/skills/example-skill/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/blank_catalogue/packs/_example/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/blank_catalogue/packs/_example/README.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/blank_catalogue/packs/_example/evals/eval_queries.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/blank_catalogue/packs/_example/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/blank_catalogue/profiles/.gitkeep +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/blank_catalogue/profiles/_example/README.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/blank_catalogue/profiles/_example/profile.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/brownfield/values.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/brownfield-adapt/AGENTS.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/brownfield-adapt/AGENTS.upstream.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/brownfield-adapt/DESIGN.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/brownfield-adapt/EXPECTED_TREE.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/brownfield-adapt/docs/CHARTER.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/brownfield-adapt/docs/guides/how-to/index.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/brownfield-adapt/docs/howto/getting-started.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/brownfield-adapt-expected/AGENTS.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/brownfield-adapt-expected/docs/CHARTER.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/brownfield-adapt-user-home/.agentbundle/.adapt-discovery.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/brownfield-adapt-user-home/.agentbundle/state.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/catalogue_sync/adapter_contract_major_mismatch/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/catalogue_wave4/catalogue.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/catalogue_wave4/packs/pack-with-journey/.apm/hook-wiring/example.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/catalogue_wave4/packs/pack-with-journey/.apm/skills/example-skill/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/catalogue_wave4/packs/pack-with-journey/.apm/skills/example-skill/scripts/run.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/catalogue_wave4/packs/pack-with-journey/JOURNEY.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/catalogue_wave4/packs/pack-with-journey/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/catalogue_wave4/packs/pack-without-journey/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/catalogue_wave4/profiles/test-profile.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/cognitive-load-hosts.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/creds/skills/argv-flag/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/creds/skills/argv-flag/scripts/cli.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/creds/skills/argv-flag-derived/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/creds/skills/argv-flag-derived/scripts/cli.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/creds/skills/argv-flag-normalised/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/creds/skills/argv-flag-normalised/scripts/cli.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/creds/skills/conforming/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/creds/skills/conforming/scripts/cli.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/creds/skills/dotfile-grep/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/creds/skills/dotfile-grep/scripts/leak.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/creds/skills/dotfile-with-optout/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/creds/skills/dotfile-with-optout/scripts/legit.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/creds/skills/mcp-server-headers/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/creds/skills/mcp-server-headers/scripts/cli.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/creds/skills/missing-dont-block/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/direct/ac35_corpus_verdicts.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/direct/golden_state_0_5.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/distribution-routes/golden.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/distribution-routes/witness-packs/portable/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/distribution-routes/witness-packs/portable/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/external_catalogue/.claude-plugin/marketplace.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/external_catalogue/AGENTS.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/external_catalogue/LICENSE-APACHE +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/external_catalogue/LICENSE-MIT +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/external_catalogue/agentbundle/_data/install-defaults.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/external_catalogue/catalogue.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/external_catalogue/packs/alpha/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/external_catalogue/packs/alpha/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/external_catalogue/packs/alpha/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/external_catalogue/packs/alpha/seeds/AGENTS.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/external_catalogue/packs/beta/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/external_catalogue/packs/beta/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/external_catalogue/profiles/example.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/install/catalogue/packs/alpha/.apm/agents/helper.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/install/catalogue/packs/alpha/.apm/commands/cmd.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/install/catalogue/packs/alpha/.apm/hook-wiring/run.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/install/catalogue/packs/alpha/.apm/hooks/run.sh +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/install/catalogue/packs/alpha/.apm/skills/example/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/install/catalogue/packs/alpha/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/install/catalogue/packs/alpha/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/kiro_ide_hook/ask_agent_basic.kiro.hook +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/kiro_ide_hook/run_command_with_placeholder.kiro.hook +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/lint_packs/clean/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/lint_packs/clean/seeds/README.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/list-installed/golden_120col.txt +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/list-installed/golden_80col.txt +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/list_packs/catalogue/packs/alpha/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/list_packs/catalogue/packs/beta/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/local_scope/catalogue/packs/local-test-pack/.apm/skills/local-test/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/local_scope/catalogue/packs/local-test-pack/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/cc-user-hooks/.apm/hook-wiring/on-prompt.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/cc-user-hooks/.apm/hooks/on-prompt.sh +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/cc-user-hooks/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/kiro-repo-hooks/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/kiro-repo-hooks/.apm/hook-wiring/on-spawn.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/kiro-repo-hooks/.apm/hooks/on-spawn.sh +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/kiro-repo-hooks/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/kiro-user-hooks/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/kiro-user-hooks/.apm/hook-wiring/on-spawn.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/kiro-user-hooks/.apm/hooks/on-spawn.sh +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/kiro-user-hooks/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/malformed-kiro-missing-attach/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/malformed-kiro-missing-attach/.apm/hook-wiring/on-spawn.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/malformed-kiro-missing-attach/.apm/hooks/on-spawn.sh +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/malformed-kiro-missing-attach/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/malformed-kiro-pascal-events/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/malformed-kiro-pascal-events/.apm/hook-wiring/on-spawn.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/malformed-kiro-pascal-events/.apm/hooks/on-spawn.sh +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/malformed-kiro-pascal-events/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/malformed-kiro-unknown-agent/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/malformed-kiro-unknown-agent/.apm/hook-wiring/on-spawn.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/malformed-kiro-unknown-agent/.apm/hooks/on-spawn.sh +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/packs/malformed-kiro-unknown-agent/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/scaffold/test-pack/seeds/AGENTS.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/scaffold/test-pack/seeds/_agents-footer.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/scaffold/test-pack/seeds/docs/CHARTER.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/show_contract/agentbundle-show.schema.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/show_contract/catalogue.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/show_contract/installed_state.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/commands/deploy.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/hook-wiring/pre-commit.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/hooks/lint.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/hooks/pre-commit.sh +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v1/packs/core/.apm/skills/work-loop/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v1/packs/core/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v1/packs/core/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/commands/deploy.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/hook-wiring/pre-commit.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/hooks/lint.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/hooks/pre-commit.sh +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v2/packs/core/.apm/skills/work-loop/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v2/packs/core/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v2/packs/core/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/agents/reviewer.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/commands/deploy.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/hook-wiring/pre-commit.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/hooks/lint.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/hooks/pre-commit.sh +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v3/packs/core/.apm/skills/work-loop/SKILL.md +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v3/packs/core/.claude-plugin/plugin.json +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/upgrade/catalogue_v3/packs/core/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/validate/bad_recipe_pack/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/validate/malformed_pack/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/validate/valid_pack/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/fixtures/validate/version_mismatch_pack/pack.toml +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/__init__.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/_https_archive.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_adapt_cmd.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_adapt_dual_scope.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_adapt_preflight_detection.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_adapt_schema_migration.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_apm_install_route.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_blank_catalogue.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_brownfield_adapt_end_to_end.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_brownfield_round_trip.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_brownfield_user_home_fixture.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_build_check_drift_gates.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_build_derivation_apm.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_build_derivation_claude_plugins.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_bundled_contracts_fail_closed.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_catalogue_init.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_catalogue_init_packageable.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_catalogue_verify_adapter_compat.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_catalogue_verify_dependencies.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_catalogue_verify_external_portability.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_catalogue_verify_fixture_checks.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_catalogue_verify_marketplace.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_catalogue_verify_output_drift.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_catalogue_verify_package_preflight.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_catalogue_verify_plugin_path.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_catalogue_verify_profile_schema.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_catalogue_verify_step1.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_catalogue_wave4_index_generator.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_catalogue_wave4_integration.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_catalogue_wave4_journey_validator.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_catalogue_wave4_schema.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_cc_user_hooks_fixture.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_claude_plugins_install_route.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_config_cascade.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_credential_brokers_pack_install.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_credentials_wheel.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_direct_install.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_discovery_schema_cross_consumer.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_editable_source_detection.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_fixtures_validate.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_hook_wiring_ingress.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_adapt_chain.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_cmd.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_converters_user_scope.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_copilot_full_parity.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_core_smoke.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_default_source.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_dependencies_gate.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_dropped_primitives_warning.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_dual_scope.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_layout_is_best_effort.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_orphan_reshape.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_pack_metadata_shape.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_profile.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_profile_live.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_repo_scope_per_adapter.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_research_user_scope.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_seed_delivery.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_session_start_wiring.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_upgrade_offer.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_user_hooks.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_install_user_scope_allowed_adapters.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_jfrog_cli_contract.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_kiro_ide_hook_e2e.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_kiro_repo_hooks_fixture.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_kiro_user_hooks_fixture.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_list_packs_cmd.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_local_scope_install.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_marketplace_entry_validation.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_marketplace_manifest_regression.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_multi_pack_install.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_orphan_cleanup_respects_foreign_state.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_plugin_route_membership.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_portable_catalogue_authentication.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_recommends_cross_scope.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_reconcile.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_rename_hint_cli.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_rename_migration_e2e.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_reserved_path_filter.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_scaffold_projection.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_self_host_schema_migration.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_self_host_sweep_respects_state.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_shared_prefix_coexistence.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_show_cmd.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_tier_invariants.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_trust_fallback_tls.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_uninstall_cmd.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_uninstall_user_hooks.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_upgrade_attach_to_agent.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_upgrade_cmd.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_upgrade_user_hooks.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_version_gate_matrix.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_workspace_mcp_git_fsm.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/integration/test_zipapp.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/performance/__init__.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/performance/test_direct_family2_budget_cost.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/test_adapter_permissions_projection.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/test_workspace_mcp_depends_on.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/test_workspace_mcp_elicit.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/test_workspace_mcp_event_bridge.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/test_workspace_mcp_git.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/test_workspace_mcp_git_scope.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/test_workspace_mcp_layout_override.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/test_workspace_mcp_lifecycle.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/test_workspace_mcp_stdin.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/test_workspace_mcp_tools.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/__init__.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/conftest.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_adapt_discovery_schema.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_adapter_symlink_policy.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_append_layout_section.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_architect_readme_install_command.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_bundled_contract_errors.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_archive_unit_digests.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_ci_contract.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_curation_deps.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_fetch.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_fetch_jfrog.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_init_cli_self_hosted.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_manifest_schema.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_pack_defaults.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_package_compare.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_package_include_diagnostic.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_package_refusal.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_self_hosted_export_removal.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_spec_version.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_sync.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_sync_fixture_set.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_tooling_archive.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_tooling_build.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_tooling_defaults.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_tooling_file_safety.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_tooling_foundation.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_tooling_identity.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_tooling_init.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_tooling_lint.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_tooling_package.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_tooling_self_host.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_tooling_self_hosted_init.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_tooling_source_package.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_tooling_verify.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_trust_fallback.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_unit_digests.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_wave2_schema.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_wave2_validation.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_wave3_contracts_cli.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_wave3_contracts_inspector.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_wave3_init_nextsteps.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_catalogue_wave3_offline_navigation.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_cli_catalogue_optional.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_cli_help_lists_config.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_cli_list_targets_help.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_cli_namespace_fixture.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_cli_path_normalisation.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_cli_profile_surface.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_cli_scope_flags.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_codex_agent_toml.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_codex_projection_modes.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_cognitive_load_seed_contract.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_collect_tree_symlinks.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_common_classify_seeds.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_config.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_config_cmd.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_configured_adapter.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_confirm_helper.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_contract_parity.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_contract_v0_3_schema.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_copilot_agent_md.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_copilot_hooks_json.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_copilot_user_scope_wiring.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_credbroker_lint_hardening.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_dependencies_batch.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_diff_cmd.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_direct_admission.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_direct_architecture_controls.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_direct_diagnostics.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_direct_lifecycle_facts.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_direct_source_acquisition.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_direct_source_state.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_direct_upgrade.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_direct_validate.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_footprint_ownership.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_https_catalogue.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_init_state_cmd.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_install_argparse_adapter_flag.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_install_argparse_emit_install_routes.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_install_defaults_preferred_adapter.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_install_dropped_primitives_warning.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_install_event_dropped_wirings.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_install_first_value_handoff.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_install_force_help.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_install_inband_detection.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_install_messages.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_install_messages_repo_scope.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_install_refusal_ordering.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_install_state_provenance.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_kiro_ide_hook_projection.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_kiro_ide_hook_rail.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_kiro_ide_hook_schema.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_layout_bases_anchoring.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_lint_agent_artifacts_metadata_auth.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_list_installed_cmd.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_list_installed_status.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_list_targets_cmd.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_local_exclude_git_cache.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_local_scope_schema.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_local_scope_t10_uninstall.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_local_scope_t12_show.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_local_scope_t2_resolve.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_local_scope_t3_config.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_local_scope_t4_state_path.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_local_scope_t5_list_installed.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_local_scope_t7_install_gates.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_local_scope_t8_install.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_local_scope_t9_exclude.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_marker_schema_version_parity.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_merge_into_agent_json.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_multi_adapter_disambiguator.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_nested_symlink_hardening.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_no_contracts_fallback.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_offer_upgrade_namespace.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_okf_discovery.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_org_bootstrap.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_orphan_sweep_guards.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_pack_config_api.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_pack_evals_bundled_contract.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_pack_inventory.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_pack_layout_section_schema.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_pack_renames.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_package_catalogue.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_packstate_source_provenance.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_pipeline_phase_order.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_plugin_scope_filter.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_profile_reader.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_render.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_render_cmd.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_render_table.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_resolve_state_path.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_resolve_target_adapter_user_config.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_resolve_user_scope_target_adapter.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_route_surface_parity.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_safety.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_safety_repo_scope_prefixes.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_safety_scan_per_pack_scoping.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_scaffold_cmd.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_scope.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_self_host_windows.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_shared_prefix_disclosure.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_source_conflict_guard.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_source_defaults.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_state_v01_refuse_write.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_state_v02.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_state_v0_4_schema.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_statelock.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_statelock_hardening.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_system_trust.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_target_resolver.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_toml_emitters.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_unresolved_markers.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_upgrade_bulk_all.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_upgrade_recap.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_upgrade_source_inference.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_user_config_io.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_user_config_isolation.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_user_config_path.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_user_config_source.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_user_merge_json.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_validate_attach_to_agent.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_validate_categories.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_validate_cmd.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_validate_hook_wiring_per_file_compatibility.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_values_from_shapes.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_version.py +0 -0
- {agentbundle-0.58.1 → agentbundle-0.59.1}/tests/unit/test_windows_direct_suite_registration.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agentbundle
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.59.1
|
|
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,17 @@ 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.59.1
|
|
39
|
+
|
|
40
|
+
`catalogue self-host` keeps a repository's root `AGENT_RULES.md`, so routing
|
|
41
|
+
rows an adopter adds survive regeneration.
|
|
42
|
+
|
|
43
|
+
## What's new in 0.59.0
|
|
44
|
+
|
|
45
|
+
The workspace bridge now reads a supervisor run's status file only. The old
|
|
46
|
+
engine-state fallback is removed, so a spec directory with no supervisor status
|
|
47
|
+
shows no run and no pending gate, and `gate_question` is a framed object or null.
|
|
48
|
+
|
|
38
49
|
## What's new in 0.58.1
|
|
39
50
|
|
|
40
51
|
The workspace MCP bridge understands supervisor runs. While a spec has a
|
|
@@ -14,6 +14,17 @@ 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.59.1
|
|
18
|
+
|
|
19
|
+
`catalogue self-host` keeps a repository's root `AGENT_RULES.md`, so routing
|
|
20
|
+
rows an adopter adds survive regeneration.
|
|
21
|
+
|
|
22
|
+
## What's new in 0.59.0
|
|
23
|
+
|
|
24
|
+
The workspace bridge now reads a supervisor run's status file only. The old
|
|
25
|
+
engine-state fallback is removed, so a spec directory with no supervisor status
|
|
26
|
+
shows no run and no pending gate, and `gate_question` is a framed object or null.
|
|
27
|
+
|
|
17
28
|
## What's new in 0.58.1
|
|
18
29
|
|
|
19
30
|
The workspace MCP bridge understands supervisor runs. While a spec has a
|
|
@@ -8,7 +8,7 @@ import re
|
|
|
8
8
|
import stat
|
|
9
9
|
import sys
|
|
10
10
|
from contextlib import suppress
|
|
11
|
-
from dataclasses import dataclass
|
|
11
|
+
from dataclasses import dataclass, replace
|
|
12
12
|
from datetime import date, datetime, timedelta
|
|
13
13
|
from pathlib import Path
|
|
14
14
|
from typing import Any, TypeGuard
|
|
@@ -40,6 +40,13 @@ REFUSAL_CODES = frozenset(
|
|
|
40
40
|
}
|
|
41
41
|
)
|
|
42
42
|
|
|
43
|
+
_PARENT_RE = re.compile(r"^docs/product/briefs/[a-z0-9][a-z0-9-]{0,127}\.md$")
|
|
44
|
+
_BRIEF_SLUG_RE = re.compile(r"^[a-z0-9][a-z0-9-]{0,127}$")
|
|
45
|
+
_SPEC_LOCATOR_RE = re.compile(r"^docs/specs/[^/]+/spec\.md$")
|
|
46
|
+
_BRIEF_HEADER_RE = re.compile(r"^- \*\*Brief:\*\*(.*)$")
|
|
47
|
+
_HTML_COMMENT_RE = re.compile(r"<!--.*?-->", re.DOTALL)
|
|
48
|
+
MAX_SPEC_BYTES = 1_000_000
|
|
49
|
+
_BRIEFS_DIRECTORY = ("docs", "product", "briefs")
|
|
43
50
|
_DELIVERY_ID_RE = re.compile(r"^[a-z0-9][a-z0-9-]{0,127}$")
|
|
44
51
|
_DIGEST_RE = re.compile(r"^sha256:[0-9a-f]{64}$")
|
|
45
52
|
_EVIDENCE_RE = re.compile(r"^(?:commit:[0-9a-f]{40}|pr:[0-9]+|run:[0-9]+)$")
|
|
@@ -90,6 +97,7 @@ class CoolingRecord:
|
|
|
90
97
|
authority: tuple[tuple[str, tuple[tuple[str, str], ...]], ...]
|
|
91
98
|
confirmation_proof: str
|
|
92
99
|
exception: tuple[tuple[str, str], ...] | None = None
|
|
100
|
+
parent: str | None = None
|
|
93
101
|
|
|
94
102
|
@classmethod
|
|
95
103
|
def from_payload(cls, payload: dict[str, object]) -> "CoolingRecord":
|
|
@@ -123,6 +131,7 @@ class CoolingRecord:
|
|
|
123
131
|
tuple((key, str(value)) for key, value in exception.items())
|
|
124
132
|
if exception is not None else None
|
|
125
133
|
),
|
|
134
|
+
parent=None if payload.get("parent") is None else str(payload["parent"]),
|
|
126
135
|
)
|
|
127
136
|
|
|
128
137
|
def as_payload(self) -> dict[str, object]:
|
|
@@ -145,6 +154,8 @@ class CoolingRecord:
|
|
|
145
154
|
}
|
|
146
155
|
if self.exception is not None:
|
|
147
156
|
payload["exception"] = dict(self.exception)
|
|
157
|
+
if self.parent is not None:
|
|
158
|
+
payload["parent"] = self.parent
|
|
148
159
|
return payload
|
|
149
160
|
|
|
150
161
|
|
|
@@ -302,7 +313,7 @@ def validate_payload(payload: object) -> CoolingResult:
|
|
|
302
313
|
"""Validate the closed lifecycle shape without raising on untrusted input."""
|
|
303
314
|
if (
|
|
304
315
|
not isinstance(payload, dict)
|
|
305
|
-
or set(payload) - (_REQUIRED | {"exception"})
|
|
316
|
+
or set(payload) - (_REQUIRED | {"exception", "parent"})
|
|
306
317
|
or not set(payload) >= _REQUIRED
|
|
307
318
|
):
|
|
308
319
|
return CoolingResult(code="record-invalid")
|
|
@@ -347,6 +358,10 @@ def validate_payload(payload: object) -> CoolingResult:
|
|
|
347
358
|
return CoolingResult(code="record-invalid")
|
|
348
359
|
if _zone(payload["timezone"]) is None:
|
|
349
360
|
return CoolingResult(code="record-invalid")
|
|
361
|
+
if "parent" in payload and payload["parent"] != "none" and not _matches(
|
|
362
|
+
_PARENT_RE, payload["parent"]
|
|
363
|
+
):
|
|
364
|
+
return CoolingResult(code="record-invalid")
|
|
350
365
|
has_exception = "exception" in payload
|
|
351
366
|
if (payload["disposition"] == "retain-exception") != has_exception:
|
|
352
367
|
return CoolingResult(code="record-invalid")
|
|
@@ -698,6 +713,63 @@ def _resolve_destination(root: Path, candidates: object) -> Path | str:
|
|
|
698
713
|
return "unsafe-target"
|
|
699
714
|
|
|
700
715
|
|
|
716
|
+
def _brief_file_exists(root: Path, slug: str) -> bool:
|
|
717
|
+
"""Report whether `docs/product/briefs/<slug>.md` is a listed regular file.
|
|
718
|
+
|
|
719
|
+
The three directories must be real, and the name must appear in the
|
|
720
|
+
directory listing byte-for-byte, so a case variant or a link never counts.
|
|
721
|
+
"""
|
|
722
|
+
file_safety = _close_work().file_safety()
|
|
723
|
+
directory = root.joinpath(*_BRIEFS_DIRECTORY)
|
|
724
|
+
name = f"{slug}.md"
|
|
725
|
+
try:
|
|
726
|
+
file_safety.validate_confined_directory(root, directory)
|
|
727
|
+
if name not in {entry.name for entry in directory.iterdir()}:
|
|
728
|
+
return False
|
|
729
|
+
return stat.S_ISREG(os.lstat(directory / name).st_mode)
|
|
730
|
+
except (OSError, ValueError):
|
|
731
|
+
return False
|
|
732
|
+
|
|
733
|
+
|
|
734
|
+
def _derive_parent(root: Path, locator: str) -> str | None:
|
|
735
|
+
"""Read a spec's `Brief:` header and return a `parent` value, or None.
|
|
736
|
+
|
|
737
|
+
None means the scope stays unknown, so every unreadable or unrecognised
|
|
738
|
+
input fails closed. Only the preamble before the first `##` heading is read.
|
|
739
|
+
"""
|
|
740
|
+
try:
|
|
741
|
+
root = Path(root)
|
|
742
|
+
raw = _close_work().file_safety().read_confined_regular_file(
|
|
743
|
+
root, root / locator, max_bytes=MAX_SPEC_BYTES
|
|
744
|
+
)
|
|
745
|
+
text = raw.decode("utf-8")
|
|
746
|
+
except (ImportError, OSError, ValueError, RecursionError):
|
|
747
|
+
return None
|
|
748
|
+
values: list[str] = []
|
|
749
|
+
for line in text.splitlines():
|
|
750
|
+
if line.startswith("## "):
|
|
751
|
+
break
|
|
752
|
+
found = _BRIEF_HEADER_RE.match(line)
|
|
753
|
+
if found:
|
|
754
|
+
values.append(_HTML_COMMENT_RE.sub("", found.group(1)).strip())
|
|
755
|
+
if not values:
|
|
756
|
+
return "none"
|
|
757
|
+
if len(values) != 1:
|
|
758
|
+
return None
|
|
759
|
+
value = values[0]
|
|
760
|
+
if value in {"", "none"}:
|
|
761
|
+
return "none"
|
|
762
|
+
if value.startswith("brief:"):
|
|
763
|
+
slug = value[len("brief:"):]
|
|
764
|
+
path = f"docs/product/briefs/{slug}.md"
|
|
765
|
+
else:
|
|
766
|
+
path = value
|
|
767
|
+
slug = path[len("docs/product/briefs/"):-len(".md")]
|
|
768
|
+
if not _PARENT_RE.fullmatch(path) or not _BRIEF_SLUG_RE.fullmatch(slug):
|
|
769
|
+
return None
|
|
770
|
+
return path if _brief_file_exists(root, slug) else None
|
|
771
|
+
|
|
772
|
+
|
|
701
773
|
def enrol(
|
|
702
774
|
*,
|
|
703
775
|
root: Path,
|
|
@@ -721,6 +793,11 @@ def enrol(
|
|
|
721
793
|
destination = _resolve_destination(root, candidates)
|
|
722
794
|
if isinstance(destination, str):
|
|
723
795
|
return CoolingResult(code=destination)
|
|
796
|
+
if record.parent is None and _SPEC_LOCATOR_RE.fullmatch(record.locator):
|
|
797
|
+
# Read before the write: a cooled spec body is never read afterwards.
|
|
798
|
+
derived = _derive_parent(root, record.locator)
|
|
799
|
+
if derived is not None:
|
|
800
|
+
record = replace(record, parent=derived)
|
|
724
801
|
try:
|
|
725
802
|
return _write_record(root, destination, record, authority_binding)
|
|
726
803
|
except (ImportError, OSError, ValueError):
|