apcore-cli 0.10.0__tar.gz → 0.10.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/CHANGELOG.md +49 -0
  2. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/PKG-INFO +3 -3
  3. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/pyproject.toml +3 -3
  4. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/.github/CODEOWNERS +0 -0
  5. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/.github/copilot-ignore +0 -0
  6. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/.github/workflows/ci.yml +0 -0
  7. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/.gitignore +0 -0
  8. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/.gitmessage +0 -0
  9. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/.pre-commit-config.yaml +0 -0
  10. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/CLAUDE.md +0 -0
  11. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/LICENSE +0 -0
  12. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/Makefile +0 -0
  13. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/README.md +0 -0
  14. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/examples/README.md +0 -0
  15. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/examples/extensions/math/add.py +0 -0
  16. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/examples/extensions/math/multiply.py +0 -0
  17. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/examples/extensions/sysutil/disk.py +0 -0
  18. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/examples/extensions/sysutil/env.py +0 -0
  19. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/examples/extensions/sysutil/info.py +0 -0
  20. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/examples/extensions/text/reverse.py +0 -0
  21. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/examples/extensions/text/upper.py +0 -0
  22. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/examples/extensions/text/wordcount.py +0 -0
  23. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/examples/run_examples.sh +0 -0
  24. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/planning/approval-gate.md +0 -0
  25. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/planning/config-resolver.md +0 -0
  26. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/planning/core-dispatcher.md +0 -0
  27. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/planning/discovery.md +0 -0
  28. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/planning/exposure-filtering.md +0 -0
  29. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/planning/grouped-commands.md +0 -0
  30. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/planning/output-formatter.md +0 -0
  31. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/planning/overview.md +0 -0
  32. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/planning/schema-parser.md +0 -0
  33. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/planning/security-manager.md +0 -0
  34. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/planning/shell-integration.md +0 -0
  35. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/planning/state.json +0 -0
  36. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/__init__.py +0 -0
  37. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/__main__.py +0 -0
  38. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/_sandbox_runner.py +0 -0
  39. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/approval.py +0 -0
  40. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/builtin_group.py +0 -0
  41. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/cli.py +0 -0
  42. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/config.py +0 -0
  43. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/discovery.py +0 -0
  44. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/display_helpers.py +0 -0
  45. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/exit_codes.py +0 -0
  46. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/exposure.py +0 -0
  47. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/factory.py +0 -0
  48. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/init_cmd.py +0 -0
  49. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/output.py +0 -0
  50. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/ref_resolver.py +0 -0
  51. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/schema_parser.py +0 -0
  52. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/security/__init__.py +0 -0
  53. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/security/audit.py +0 -0
  54. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/security/auth.py +0 -0
  55. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/security/config_encryptor.py +0 -0
  56. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/security/sandbox.py +0 -0
  57. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/shell.py +0 -0
  58. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/strategy.py +0 -0
  59. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/system_cmd.py +0 -0
  60. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/system_usage.py +0 -0
  61. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/src/apcore_cli/validate.py +0 -0
  62. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/__init__.py +0 -0
  63. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/conformance/__init__.py +0 -0
  64. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/conformance/test_apcli_visibility.py +0 -0
  65. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/conformance/test_snake_case_kwargs.py +0 -0
  66. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/conftest.py +0 -0
  67. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/shell_test_utils.py +0 -0
  68. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_apcli_integration.py +0 -0
  69. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_approval.py +0 -0
  70. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_bugfixes.py +0 -0
  71. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_builtin_group.py +0 -0
  72. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_cli.py +0 -0
  73. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_config.py +0 -0
  74. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_discovery.py +0 -0
  75. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_discovery_fe13.py +0 -0
  76. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_display_helpers.py +0 -0
  77. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_e2e.py +0 -0
  78. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_exit_codes.py +0 -0
  79. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_exposure.py +0 -0
  80. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_factory_fe13.py +0 -0
  81. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_init_cmd.py +0 -0
  82. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_integration.py +0 -0
  83. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_list_command_filters.py +0 -0
  84. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_output.py +0 -0
  85. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_output_format_exec.py +0 -0
  86. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_output_format_markdown_skill.py +0 -0
  87. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_public_api.py +0 -0
  88. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_ref_resolver.py +0 -0
  89. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_sandbox_runner.py +0 -0
  90. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_schema_parser.py +0 -0
  91. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_security/__init__.py +0 -0
  92. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_security/test_audit.py +0 -0
  93. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_security/test_auth.py +0 -0
  94. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_security/test_config_encryptor.py +0 -0
  95. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_security/test_sandbox.py +0 -0
  96. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_shell.py +0 -0
  97. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_strategy.py +0 -0
  98. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_system_cmd.py +0 -0
  99. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_system_usage.py +0 -0
  100. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_toolkit_integration.py +0 -0
  101. {apcore_cli-0.10.0 → apcore_cli-0.10.2}/tests/test_validate.py +0 -0
@@ -5,6 +5,55 @@ All notable changes to apcore-cli (Python SDK) will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.10.2] - 2026-06-24
9
+
10
+ ### Changed
11
+
12
+ - **Required runtime bumped to apcore 0.25.0 and apcore-toolkit 0.9.1.** Dependency
13
+ floors in `pyproject.toml` raised from `apcore>=0.24.0` / `apcore-toolkit>=0.8.1`
14
+ to `apcore>=0.25.0` / `apcore-toolkit>=0.9.1`, tracking the aligned apcore 0.25.0
15
+ and apcore-toolkit 0.9.1 releases. **No source changes** — the full test suite
16
+ passes unchanged.
17
+
18
+ Neither delta touches a surface the CLI consumes:
19
+ - **apcore 0.24.0 → 0.25.0** adds config-driven ACL discovery (`acl.root`
20
+ activation + `ACL.discover`), auto-wired only by the `APCore` bootstrap and
21
+ skipped when the caller supplies its own `Executor`. The CLI never constructs
22
+ `APCore`, so discovery does not engage; the change is backward-compatible
23
+ regardless (a missing `acl.root` attaches no ACL, preserving the no-enforcement
24
+ default).
25
+ - **apcore-toolkit 0.8.1 → 0.9.1** is a bug-fix release; the Python fix (OpenAPI
26
+ parser handling integer status-code keys and explicit `null`) lives in
27
+ `extract_output_schema`, which the CLI does not call. The toolkit surface the
28
+ CLI uses (`RegistryWriter`, `BindingLoader`, `DisplayResolver`, `format_*`) is
29
+ unchanged.
30
+
31
+ ## [0.10.1] - 2026-06-15
32
+
33
+ ### Changed
34
+
35
+ - **Required runtime bumped to apcore 0.24.0 and apcore-toolkit 0.8.1.** Dependency
36
+ floors in `pyproject.toml` raised from `apcore>=0.22.0` / `apcore-toolkit>=0.8.0`
37
+ to `apcore>=0.24.0` / `apcore-toolkit>=0.8.1`, tracking the aligned apcore 0.24.0
38
+ and apcore-toolkit 0.8.1 releases. **No source changes** — the full test suite
39
+ passes unchanged.
40
+
41
+ The apcore 0.22.0 → 0.24.0 delta does not touch any surface the CLI consumes:
42
+ - **Per-instance `ToggleState` isolation (#71)** — the CLI never constructs
43
+ `ToggleState`/`APCore` nor calls the free `is_module_disabled()`; module
44
+ toggling is delegated to the `system.control.toggle_feature` module via
45
+ `Executor.call()`.
46
+ - **Default AI error-recovery metadata (#70)** and **error `details` snake_case
47
+ key alignment (A-D-019)** — the CLI reads error fields (`details`, `suggestion`,
48
+ `ai_guidance`, `retryable`, `user_fixable`) via `getattr()` and passes `details`
49
+ through verbatim, so it is agnostic to both new defaults and inner-key casing.
50
+ - **`Registry.list()` / `get_definition()` / `Executor.call()` / `call_with_trace()`
51
+ / `set_approval_handler()`** signatures are unchanged across the delta; descriptor
52
+ fields are read defensively with fallbacks.
53
+ - Out of scope and unused by the CLI: `CircuitBreakerMiddleware`, `A2ASubscriber`,
54
+ DLQ/`original_event`, `apcore.Config.validate()`, `Context.create()`, redaction
55
+ utilities, `EventEmitter`.
56
+
8
57
  ## [0.10.0] - 2026-05-18
9
58
 
10
59
  ### Changed — BREAKING
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: apcore-cli
3
- Version: 0.10.0
3
+ Version: 0.10.2
4
4
  Summary: Terminal adapter for apcore — execute AI-Perceivable modules from the command line
5
5
  Project-URL: Homepage, https://aiperceivable.com
6
6
  Project-URL: Repository, https://github.com/aiperceivable/apcore-cli-python
@@ -21,8 +21,8 @@ Classifier: Programming Language :: Python :: 3.13
21
21
  Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
22
22
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
23
23
  Requires-Python: >=3.11
24
- Requires-Dist: apcore-toolkit>=0.8.0
25
- Requires-Dist: apcore>=0.22.0
24
+ Requires-Dist: apcore-toolkit>=0.9.1
25
+ Requires-Dist: apcore>=0.25.0
26
26
  Requires-Dist: click>=8.1
27
27
  Requires-Dist: cryptography>=41.0
28
28
  Requires-Dist: jsonschema>=4.20
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "apcore-cli"
7
- version = "0.10.0"
7
+ version = "0.10.2"
8
8
  description = "Terminal adapter for apcore — execute AI-Perceivable modules from the command line"
9
9
  readme = "README.md"
10
10
  license = "Apache-2.0"
@@ -26,8 +26,8 @@ classifiers = [
26
26
  "Environment :: Console",
27
27
  ]
28
28
  dependencies = [
29
- "apcore>=0.22.0",
30
- "apcore-toolkit>=0.8.0",
29
+ "apcore>=0.25.0",
30
+ "apcore-toolkit>=0.9.1",
31
31
  "click>=8.1",
32
32
  "jsonschema>=4.20",
33
33
  "rich>=13.0",
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes