apm-cli 0.12.1__tar.gz → 0.12.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (309) hide show
  1. {apm_cli-0.12.1/src/apm_cli.egg-info → apm_cli-0.12.3}/PKG-INFO +2 -1
  2. {apm_cli-0.12.1 → apm_cli-0.12.3}/README.md +1 -0
  3. {apm_cli-0.12.1 → apm_cli-0.12.3}/pyproject.toml +1 -1
  4. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/adapters/client/claude.py +6 -0
  5. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/adapters/client/copilot.py +481 -39
  6. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/adapters/client/cursor.py +6 -0
  7. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/adapters/client/gemini.py +6 -0
  8. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/adapters/client/opencode.py +6 -0
  9. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/adapters/client/windsurf.py +6 -0
  10. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/bundle/packer.py +2 -2
  11. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/bundle/unpacker.py +2 -2
  12. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/cache/url_normalize.py +6 -3
  13. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/cli.py +2 -0
  14. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/_helpers.py +46 -7
  15. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/audit.py +213 -31
  16. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/compile/cli.py +94 -0
  17. apm_cli-0.12.3/src/apm_cli/commands/init.py +572 -0
  18. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/install.py +14 -5
  19. apm_cli-0.12.3/src/apm_cli/commands/targets.py +135 -0
  20. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/compilation/link_resolver.py +183 -12
  21. apm_cli-0.12.3/src/apm_cli/core/apm_yml.py +97 -0
  22. apm_cli-0.12.3/src/apm_cli/core/errors.py +156 -0
  23. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/core/target_detection.py +199 -1
  24. apm_cli-0.12.3/src/apm_cli/deps/bare_cache.py +545 -0
  25. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/deps/github_downloader.py +190 -155
  26. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/deps/plugin_parser.py +10 -12
  27. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/deps/shared_clone_cache.py +29 -4
  28. apm_cli-0.12.3/src/apm_cli/install/cache_pin.py +233 -0
  29. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/context.py +9 -0
  30. apm_cli-0.12.3/src/apm_cli/install/drift.py +731 -0
  31. apm_cli-0.12.3/src/apm_cli/install/heals/__init__.py +33 -0
  32. apm_cli-0.12.3/src/apm_cli/install/heals/base.py +122 -0
  33. apm_cli-0.12.3/src/apm_cli/install/heals/branch_ref_drift.py +66 -0
  34. apm_cli-0.12.3/src/apm_cli/install/heals/buggy_lockfile_recovery.py +99 -0
  35. apm_cli-0.12.3/src/apm_cli/install/phases/heal.py +90 -0
  36. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/phases/integrate.py +39 -3
  37. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/phases/lockfile.py +57 -0
  38. apm_cli-0.12.3/src/apm_cli/install/phases/targets.py +435 -0
  39. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/pipeline.py +17 -2
  40. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/services.py +18 -0
  41. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/sources.py +59 -16
  42. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/integration/base_integrator.py +9 -0
  43. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/integration/mcp_integrator.py +12 -0
  44. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/integration/skill_integrator.py +8 -12
  45. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/models/dependency/reference.py +18 -13
  46. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/policy/ci_checks.py +94 -1
  47. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/policy/discovery.py +21 -7
  48. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/policy/outcome_routing.py +17 -8
  49. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/security/__init__.py +2 -0
  50. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/security/gate.py +18 -1
  51. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/utils/content_hash.py +13 -0
  52. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/utils/diagnostics.py +73 -0
  53. apm_cli-0.12.3/src/apm_cli/utils/guards.py +123 -0
  54. apm_cli-0.12.3/src/apm_cli/utils/normalization.py +57 -0
  55. {apm_cli-0.12.1 → apm_cli-0.12.3/src/apm_cli.egg-info}/PKG-INFO +2 -1
  56. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli.egg-info/SOURCES.txt +13 -0
  57. apm_cli-0.12.1/src/apm_cli/commands/init.py +0 -294
  58. apm_cli-0.12.1/src/apm_cli/install/phases/targets.py +0 -215
  59. {apm_cli-0.12.1 → apm_cli-0.12.3}/AUTHORS +0 -0
  60. {apm_cli-0.12.1 → apm_cli-0.12.3}/LICENSE +0 -0
  61. {apm_cli-0.12.1 → apm_cli-0.12.3}/NOTICE +0 -0
  62. {apm_cli-0.12.1 → apm_cli-0.12.3}/setup.cfg +0 -0
  63. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/__init__.py +0 -0
  64. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/adapters/__init__.py +0 -0
  65. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/adapters/client/__init__.py +0 -0
  66. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/adapters/client/base.py +0 -0
  67. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/adapters/client/codex.py +0 -0
  68. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/adapters/client/vscode.py +0 -0
  69. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/adapters/package_manager/__init__.py +0 -0
  70. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/adapters/package_manager/base.py +0 -0
  71. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/adapters/package_manager/default_manager.py +0 -0
  72. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/bundle/__init__.py +0 -0
  73. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/bundle/local_bundle.py +0 -0
  74. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/bundle/lockfile_enrichment.py +0 -0
  75. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/bundle/plugin_exporter.py +0 -0
  76. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/cache/__init__.py +0 -0
  77. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/cache/git_cache.py +0 -0
  78. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/cache/http_cache.py +0 -0
  79. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/cache/integrity.py +0 -0
  80. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/cache/locking.py +0 -0
  81. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/cache/paths.py +0 -0
  82. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/__init__.py +0 -0
  83. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/_apm_yml_writer.py +0 -0
  84. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/cache.py +0 -0
  85. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/compile/__init__.py +0 -0
  86. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/compile/watcher.py +0 -0
  87. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/config.py +0 -0
  88. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/deps/__init__.py +0 -0
  89. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/deps/_utils.py +0 -0
  90. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/deps/cli.py +0 -0
  91. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/experimental.py +0 -0
  92. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/list_cmd.py +0 -0
  93. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/marketplace/__init__.py +0 -0
  94. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/marketplace/check.py +0 -0
  95. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/marketplace/doctor.py +0 -0
  96. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/marketplace/init.py +0 -0
  97. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/marketplace/migrate.py +0 -0
  98. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/marketplace/outdated.py +0 -0
  99. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/marketplace/plugin/__init__.py +0 -0
  100. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/marketplace/plugin/add.py +0 -0
  101. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/marketplace/plugin/remove.py +0 -0
  102. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/marketplace/plugin/set.py +0 -0
  103. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/marketplace/publish.py +0 -0
  104. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/marketplace/validate.py +0 -0
  105. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/mcp.py +0 -0
  106. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/outdated.py +0 -0
  107. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/pack.py +0 -0
  108. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/policy.py +0 -0
  109. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/prune.py +0 -0
  110. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/run.py +0 -0
  111. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/runtime.py +0 -0
  112. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/uninstall/__init__.py +0 -0
  113. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/uninstall/cli.py +0 -0
  114. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/uninstall/engine.py +0 -0
  115. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/update.py +0 -0
  116. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/commands/view.py +0 -0
  117. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/compilation/__init__.py +0 -0
  118. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/compilation/agents_compiler.py +0 -0
  119. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/compilation/build_id.py +0 -0
  120. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/compilation/claude_formatter.py +0 -0
  121. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/compilation/constants.py +0 -0
  122. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/compilation/constitution.py +0 -0
  123. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/compilation/constitution_block.py +0 -0
  124. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/compilation/context_optimizer.py +0 -0
  125. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/compilation/distributed_compiler.py +0 -0
  126. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/compilation/gemini_formatter.py +0 -0
  127. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/compilation/injector.py +0 -0
  128. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/compilation/output_writer.py +0 -0
  129. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/compilation/template_builder.py +0 -0
  130. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/config.py +0 -0
  131. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/constants.py +0 -0
  132. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/core/__init__.py +0 -0
  133. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/core/auth.py +0 -0
  134. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/core/azure_cli.py +0 -0
  135. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/core/build_orchestrator.py +0 -0
  136. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/core/command_logger.py +0 -0
  137. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/core/conflict_detector.py +0 -0
  138. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/core/docker_args.py +0 -0
  139. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/core/experimental.py +0 -0
  140. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/core/null_logger.py +0 -0
  141. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/core/operations.py +0 -0
  142. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/core/safe_installer.py +0 -0
  143. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/core/scope.py +0 -0
  144. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/core/script_runner.py +0 -0
  145. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/core/token_manager.py +0 -0
  146. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/deps/__init__.py +0 -0
  147. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/deps/aggregator.py +0 -0
  148. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/deps/apm_resolver.py +0 -0
  149. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/deps/artifactory_entry.py +0 -0
  150. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/deps/dependency_graph.py +0 -0
  151. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/deps/download_strategies.py +0 -0
  152. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/deps/git_remote_ops.py +0 -0
  153. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/deps/github_downloader_validation.py +0 -0
  154. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/deps/installed_package.py +0 -0
  155. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/deps/lockfile.py +0 -0
  156. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/deps/package_validator.py +0 -0
  157. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/deps/registry_proxy.py +0 -0
  158. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/deps/transport_selection.py +0 -0
  159. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/deps/verifier.py +0 -0
  160. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/drift.py +0 -0
  161. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/factory.py +0 -0
  162. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/__init__.py +0 -0
  163. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/errors.py +0 -0
  164. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/helpers/__init__.py +0 -0
  165. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/helpers/security_scan.py +0 -0
  166. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/insecure_policy.py +0 -0
  167. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/local_bundle_handler.py +0 -0
  168. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/mcp/__init__.py +0 -0
  169. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/mcp/args.py +0 -0
  170. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/mcp/command.py +0 -0
  171. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/mcp/conflicts.py +0 -0
  172. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/mcp/entry.py +0 -0
  173. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/mcp/registry.py +0 -0
  174. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/mcp/warnings.py +0 -0
  175. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/mcp/writer.py +0 -0
  176. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/phases/__init__.py +0 -0
  177. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/phases/cleanup.py +0 -0
  178. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/phases/download.py +0 -0
  179. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/phases/finalize.py +0 -0
  180. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/phases/local_content.py +0 -0
  181. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/phases/policy_gate.py +0 -0
  182. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/phases/policy_target_check.py +0 -0
  183. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/phases/post_deps_local.py +0 -0
  184. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/phases/resolve.py +0 -0
  185. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/presentation/__init__.py +0 -0
  186. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/presentation/dry_run.py +0 -0
  187. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/request.py +0 -0
  188. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/service.py +0 -0
  189. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/skill_path_migration.py +0 -0
  190. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/summary.py +0 -0
  191. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/template.py +0 -0
  192. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/install/validation.py +0 -0
  193. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/integration/__init__.py +0 -0
  194. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/integration/agent_integrator.py +0 -0
  195. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/integration/cleanup.py +0 -0
  196. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/integration/command_integrator.py +0 -0
  197. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/integration/copilot_cowork_paths.py +0 -0
  198. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/integration/coverage.py +0 -0
  199. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/integration/dispatch.py +0 -0
  200. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/integration/hook_integrator.py +0 -0
  201. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/integration/instruction_integrator.py +0 -0
  202. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/integration/prompt_integrator.py +0 -0
  203. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/integration/skill_transformer.py +0 -0
  204. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/integration/targets.py +0 -0
  205. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/integration/utils.py +0 -0
  206. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/__init__.py +0 -0
  207. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/_git_utils.py +0 -0
  208. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/_io.py +0 -0
  209. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/builder.py +0 -0
  210. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/client.py +0 -0
  211. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/errors.py +0 -0
  212. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/git_stderr.py +0 -0
  213. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/init_template.py +0 -0
  214. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/migration.py +0 -0
  215. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/models.py +0 -0
  216. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/pr_integration.py +0 -0
  217. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/publisher.py +0 -0
  218. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/ref_resolver.py +0 -0
  219. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/registry.py +0 -0
  220. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/resolver.py +0 -0
  221. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/semver.py +0 -0
  222. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/shadow_detector.py +0 -0
  223. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/tag_pattern.py +0 -0
  224. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/validator.py +0 -0
  225. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/version_pins.py +0 -0
  226. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/yml_editor.py +0 -0
  227. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/marketplace/yml_schema.py +0 -0
  228. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/models/__init__.py +0 -0
  229. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/models/apm_package.py +0 -0
  230. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/models/dependency/__init__.py +0 -0
  231. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/models/dependency/mcp.py +0 -0
  232. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/models/dependency/types.py +0 -0
  233. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/models/plugin.py +0 -0
  234. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/models/results.py +0 -0
  235. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/models/validation.py +0 -0
  236. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/output/__init__.py +0 -0
  237. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/output/formatters.py +0 -0
  238. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/output/models.py +0 -0
  239. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/output/script_formatters.py +0 -0
  240. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/policy/__init__.py +0 -0
  241. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/policy/_help_text.py +0 -0
  242. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/policy/inheritance.py +0 -0
  243. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/policy/install_preflight.py +0 -0
  244. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/policy/matcher.py +0 -0
  245. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/policy/models.py +0 -0
  246. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/policy/parser.py +0 -0
  247. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/policy/policy_checks.py +0 -0
  248. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/policy/project_config.py +0 -0
  249. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/policy/schema.py +0 -0
  250. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/primitives/__init__.py +0 -0
  251. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/primitives/discovery.py +0 -0
  252. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/primitives/models.py +0 -0
  253. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/primitives/parser.py +0 -0
  254. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/registry/__init__.py +0 -0
  255. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/registry/client.py +0 -0
  256. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/registry/integration.py +0 -0
  257. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/registry/operations.py +0 -0
  258. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/runtime/__init__.py +0 -0
  259. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/runtime/base.py +0 -0
  260. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/runtime/codex_runtime.py +0 -0
  261. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/runtime/copilot_runtime.py +0 -0
  262. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/runtime/factory.py +0 -0
  263. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/runtime/llm_runtime.py +0 -0
  264. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/runtime/manager.py +0 -0
  265. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/security/audit_report.py +0 -0
  266. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/security/content_scanner.py +0 -0
  267. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/security/file_scanner.py +0 -0
  268. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/update_policy.py +0 -0
  269. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/utils/__init__.py +0 -0
  270. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/utils/atomic_io.py +0 -0
  271. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/utils/console.py +0 -0
  272. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/utils/exclude.py +0 -0
  273. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/utils/file_ops.py +0 -0
  274. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/utils/git_env.py +0 -0
  275. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/utils/github_host.py +0 -0
  276. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/utils/helpers.py +0 -0
  277. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/utils/install_tui.py +0 -0
  278. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/utils/path_security.py +0 -0
  279. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/utils/paths.py +0 -0
  280. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/utils/reflink.py +0 -0
  281. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/utils/short_sha.py +0 -0
  282. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/utils/subprocess_env.py +0 -0
  283. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/utils/version_checker.py +0 -0
  284. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/utils/yaml_io.py +0 -0
  285. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/version.py +0 -0
  286. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/workflow/__init__.py +0 -0
  287. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/workflow/discovery.py +0 -0
  288. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/workflow/parser.py +0 -0
  289. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli/workflow/runner.py +0 -0
  290. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli.egg-info/dependency_links.txt +0 -0
  291. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli.egg-info/entry_points.txt +0 -0
  292. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli.egg-info/requires.txt +0 -0
  293. {apm_cli-0.12.1 → apm_cli-0.12.3}/src/apm_cli.egg-info/top_level.txt +0 -0
  294. {apm_cli-0.12.1 → apm_cli-0.12.3}/tests/test_apm_package_models.py +0 -0
  295. {apm_cli-0.12.1 → apm_cli-0.12.3}/tests/test_apm_resolver.py +0 -0
  296. {apm_cli-0.12.1 → apm_cli-0.12.3}/tests/test_codex_docker_args_fix.py +0 -0
  297. {apm_cli-0.12.1 → apm_cli-0.12.3}/tests/test_codex_empty_string_and_defaults.py +0 -0
  298. {apm_cli-0.12.1 → apm_cli-0.12.3}/tests/test_collision_integration.py +0 -0
  299. {apm_cli-0.12.1 → apm_cli-0.12.3}/tests/test_console.py +0 -0
  300. {apm_cli-0.12.1 → apm_cli-0.12.3}/tests/test_distributed_compilation.py +0 -0
  301. {apm_cli-0.12.1 → apm_cli-0.12.3}/tests/test_empty_string_and_defaults.py +0 -0
  302. {apm_cli-0.12.1 → apm_cli-0.12.3}/tests/test_enhanced_discovery.py +0 -0
  303. {apm_cli-0.12.1 → apm_cli-0.12.3}/tests/test_github_downloader.py +0 -0
  304. {apm_cli-0.12.1 → apm_cli-0.12.3}/tests/test_github_downloader_token_precedence.py +0 -0
  305. {apm_cli-0.12.1 → apm_cli-0.12.3}/tests/test_lockfile.py +0 -0
  306. {apm_cli-0.12.1 → apm_cli-0.12.3}/tests/test_runnable_prompts.py +0 -0
  307. {apm_cli-0.12.1 → apm_cli-0.12.3}/tests/test_runtime_manager_token_precedence.py +0 -0
  308. {apm_cli-0.12.1 → apm_cli-0.12.3}/tests/test_token_manager.py +0 -0
  309. {apm_cli-0.12.1 → apm_cli-0.12.3}/tests/test_virtual_package_multi_install.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: apm-cli
3
- Version: 0.12.1
3
+ Version: 0.12.3
4
4
  Summary: MCP configuration tool
5
5
  Author-email: Daniel Meppiel <user@example.com>
6
6
  License: MIT License
@@ -146,6 +146,7 @@ Agent context is executable in effect — a prompt is a program for an LLM. APM
146
146
 
147
147
  - **[Content security](https://microsoft.github.io/apm/enterprise/security/)** — `apm install` blocks compromised packages before agents read them; `apm audit` runs the same checks on demand
148
148
  - **[Lockfile integrity](https://microsoft.github.io/apm/enterprise/governance/)** — `apm.lock` records resolved sources and content hashes for full provenance
149
+ - **[Drift detection](https://microsoft.github.io/apm/guides/drift-detection/)** — `apm audit` rebuilds your agent context in scratch and diffs it against your working tree to catch hand-edits before they ship
149
150
  - **[MCP trust boundaries](https://microsoft.github.io/apm/guides/mcp-servers/)** — transitive MCP servers require explicit consent
150
151
 
151
152
  ### 3. Governed by policy
@@ -81,6 +81,7 @@ Agent context is executable in effect — a prompt is a program for an LLM. APM
81
81
 
82
82
  - **[Content security](https://microsoft.github.io/apm/enterprise/security/)** — `apm install` blocks compromised packages before agents read them; `apm audit` runs the same checks on demand
83
83
  - **[Lockfile integrity](https://microsoft.github.io/apm/enterprise/governance/)** — `apm.lock` records resolved sources and content hashes for full provenance
84
+ - **[Drift detection](https://microsoft.github.io/apm/guides/drift-detection/)** — `apm audit` rebuilds your agent context in scratch and diffs it against your working tree to catch hand-edits before they ship
84
85
  - **[MCP trust boundaries](https://microsoft.github.io/apm/guides/mcp-servers/)** — transitive MCP servers require explicit consent
85
86
 
86
87
  ### 3. Governed by policy
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "apm-cli"
7
- version = "0.12.1"
7
+ version = "0.12.3"
8
8
  description = "MCP configuration tool"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -42,6 +42,12 @@ class ClaudeClientAdapter(CopilotClientAdapter):
42
42
  target_name: str = "claude"
43
43
  mcp_servers_key: str = "mcpServers"
44
44
 
45
+ # Claude Desktop / Code's mcp config does NOT support runtime env-var
46
+ # substitution -- the value in ``env`` must be a literal string. This
47
+ # adapter MUST keep the legacy install-time resolution behaviour.
48
+ # See #1152 supply-chain analysis.
49
+ _supports_runtime_env_substitution: bool = False
50
+
45
51
  @staticmethod
46
52
  def _normalize_mcp_entry_for_claude_code(entry: dict) -> dict:
47
53
  """Normalize a server entry to Claude Code's on-disk shape.