katalyst-forge 5.2.0__tar.gz → 5.2.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.
Files changed (149) hide show
  1. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/CHANGELOG.md +10 -0
  2. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/PKG-INFO +2 -1
  3. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/pyproject.toml +4 -1
  4. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/.gitignore +0 -0
  5. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/LICENSE +0 -0
  6. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/schemas/CHANGELOG.md +0 -0
  7. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/schemas/README.md +0 -0
  8. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/schemas/agents/agent.schema.json +0 -0
  9. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/schemas/agents/config.schema.json +0 -0
  10. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/schemas/agents/manifest.json +0 -0
  11. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/schemas/agents/skill.schema.json +0 -0
  12. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/schemas/environment.schema.json +0 -0
  13. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/schemas/hooks/hook-config.schema.json +0 -0
  14. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/schemas/katalyst-lock.schema.json +0 -0
  15. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/schemas/nodes/common.schema.json +0 -0
  16. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/schemas/nodes/design.schema.json +0 -0
  17. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/schemas/nodes/organizational.schema.json +0 -0
  18. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/schemas/nodes/portfolio.schema.json +0 -0
  19. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/schemas/nodes/technical.schema.json +0 -0
  20. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/schemas/taxonomy-node.schema.json +0 -0
  21. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/__init__.py +0 -0
  22. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/bundle.py +0 -0
  23. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/metrics/__init__.py +0 -0
  24. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/metrics/batch.py +0 -0
  25. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/metrics/billing.py +0 -0
  26. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/metrics/contracts.py +0 -0
  27. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/metrics/core.py +0 -0
  28. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/metrics/dashboard.py +0 -0
  29. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/metrics/errors.py +0 -0
  30. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/metrics/generate_dashboard.py +0 -0
  31. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/metrics/html_report.py +0 -0
  32. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/metrics/money.py +0 -0
  33. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/metrics/protocols.py +0 -0
  34. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/metrics/providers/__init__.py +0 -0
  35. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/metrics/providers/forge_model_router.py +0 -0
  36. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/metrics/providers/llm_gateway.py +0 -0
  37. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/metrics/providers/opencode.py +0 -0
  38. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/metrics/redaction.py +0 -0
  39. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/metrics/registry.py +0 -0
  40. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/metrics/routing_policy.py +0 -0
  41. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/py.typed +0 -0
  42. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/relationships.py +0 -0
  43. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/creation/_base.yaml.j2 +0 -0
  44. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/creation/layer.yaml.j2 +0 -0
  45. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/creation/project.yaml.j2 +0 -0
  46. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/creation/stack.yaml.j2 +0 -0
  47. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/creation/system.yaml.j2 +0 -0
  48. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/creation/team.yaml.j2 +0 -0
  49. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/creation/team_member.yaml.j2 +0 -0
  50. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/app-docker/.dockerignore +0 -0
  51. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/app-docker/.env.example +0 -0
  52. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/app-docker/README.md +0 -0
  53. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/app-docker/base/Dockerfile +0 -0
  54. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/app-docker/docker-compose.yaml +0 -0
  55. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/app-docker/env-template/Dockerfile +0 -0
  56. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/app-docker/env-template/docker-compose.override.yaml +0 -0
  57. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/app-docker/env-template/environment.yaml +0 -0
  58. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/app-docker/layer.yaml +0 -0
  59. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/iac-terragrunt/README.md +0 -0
  60. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/iac-terragrunt/composite/terraform/main.tf +0 -0
  61. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/iac-terragrunt/composite/terraform/outputs.tf +0 -0
  62. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/iac-terragrunt/composite/terraform/variables.tf +0 -0
  63. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/iac-terragrunt/env-template/environment.yaml +0 -0
  64. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/iac-terragrunt/env-template/terragrunt.hcl +0 -0
  65. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/iac-terragrunt/global/iac/context.hcl +0 -0
  66. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/iac-terragrunt/global/iac/dev.yaml +0 -0
  67. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/iac-terragrunt/global/iac/prod.yaml +0 -0
  68. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/iac-terragrunt/global/iac/staging.yaml +0 -0
  69. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/iac-terragrunt/layer.yaml +0 -0
  70. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/iac-terragrunt/version.yaml +0 -0
  71. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/k8s-argocd/README.md +0 -0
  72. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/k8s-argocd/base/app/argocd-application.yaml +0 -0
  73. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/k8s-argocd/base/kustomization.yaml +0 -0
  74. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/k8s-argocd/base/namespace.yaml +0 -0
  75. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/k8s-argocd/environment-template/argocd-application.yaml +0 -0
  76. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/k8s-argocd/environment-template/kustomization.yaml +0 -0
  77. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/k8s-argocd/environment-template/patch-argocd-application.yaml +0 -0
  78. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/k8s-argocd/layer.yaml +0 -0
  79. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/k8s-kustomize/README.md +0 -0
  80. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/k8s-kustomize/base/deployment.yaml +0 -0
  81. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/k8s-kustomize/base/kustomization.yaml +0 -0
  82. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/k8s-kustomize/base/namespace.yaml +0 -0
  83. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/k8s-kustomize/base/service.yaml +0 -0
  84. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/k8s-kustomize/environment-template/kustomization.yaml +0 -0
  85. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/k8s-kustomize/environment-template/patch-deployment.yaml +0 -0
  86. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/k8s-kustomize/global/k8s/base/kustomization.yaml +0 -0
  87. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/k8s-kustomize/global/k8s/base/namespace.yaml +0 -0
  88. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/k8s-kustomize/global/k8s/kustomization.yaml +0 -0
  89. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/templates/scaffolds/k8s-kustomize/layer.yaml +0 -0
  90. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/wings/__init__.py +0 -0
  91. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/wings/_practice_refs.py +0 -0
  92. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/wings/agentic.py +0 -0
  93. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/wings/delivery.py +0 -0
  94. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/wings/design.py +0 -0
  95. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/wings/metrics.py +0 -0
  96. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/wings/org.py +0 -0
  97. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/wings/pipeline.py +0 -0
  98. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/wings/practices.py +0 -0
  99. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/src/katalyst_forge/wings/system.py +0 -0
  100. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/templates/CHANGELOG.md +0 -0
  101. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/conftest.py +0 -0
  102. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/fake_providers_opencode.py +0 -0
  103. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/fake_providers_router.py +0 -0
  104. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/fixtures/incident-ric1580/expected-modified.txt +0 -0
  105. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/fixtures/incident-ric1580/expected-new.txt +0 -0
  106. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/fixtures/incident-ric1580/modified-inplace.patch +0 -0
  107. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/fixtures/incident-ric1580/new/.global/taxonomy/delivery/work_items/ric-1580-forge-model-routing.yaml +0 -0
  108. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/fixtures/incident-ric1580/new/.global/taxonomy/design/capabilities/CAP-011-per-dispatch-model-tier-routing.md +0 -0
  109. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/fixtures/incident-ric1580/new/.global/taxonomy/design/capabilities/CAP-012-dispatch-parity-and-containment.md +0 -0
  110. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/fixtures/incident-ric1580/new/.global/taxonomy/design/capabilities/CAP-013-per-stage-model-token-telemetry.md +0 -0
  111. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/fixtures/incident-ric1580/new/.global/taxonomy/design/nfrs/dispatched-stage-executes-on-requested-tier.yaml +0 -0
  112. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/fixtures/incident-ric1580/new/.global/taxonomy/design/nfrs/routed-dispatch-preserves-task-parity.yaml +0 -0
  113. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/fixtures/incident-ric1580/new/.global/taxonomy/design/nfrs/tier-resolution-fails-before-any-child-session.yaml +0 -0
  114. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/fixtures/incident-ric1580/new/.global/taxonomy/design/nfrs/zero-committed-vendor-model-identity.yaml +0 -0
  115. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/fixtures/incident-ric1580/new/.global/taxonomy/design/user-needs/UN-024-operator-selects-model-tier-per-forge-run.md +0 -0
  116. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/fixtures/incident-ric1580/new/.global/taxonomy/design/user-needs/UN-025-model-tiers-from-env-vars-no-vendor-pins.md +0 -0
  117. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/fixtures/incident-ric1580/new/.global/taxonomy/design/user-needs/UN-026-routing-tier-recorded-on-work-item.md +0 -0
  118. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/fixtures/incident-ric1580/new/.global/taxonomy/design/user-needs/UN-027-per-stage-model-and-token-telemetry.md +0 -0
  119. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/fixtures/incident-ric1580/new/.global/taxonomy/design/user-needs/UN-028-dispatch-tool-enforces-agent-allowlist.md +0 -0
  120. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/fixtures/incident-ric1580/new/.global/taxonomy/design/user-needs/UN-029-silent-or-aborted-dispatch-yields-blocked.md +0 -0
  121. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/fixtures/incident-ric1580/new/.global/taxonomy/design/user-needs/UN-030-dispatched-write-stage-stays-in-worktree.md +0 -0
  122. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/fixtures/incident-ric1580/new/.global/taxonomy/design/user-needs/UN-031-single-stage-spike-preserves-eleven-stage-rollout.md +0 -0
  123. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/forge-reconcile/reconcile.test.mjs +0 -0
  124. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_agent_run.py +0 -0
  125. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_cost_observability_wing.py +0 -0
  126. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_delivery_doc_consistency.py +0 -0
  127. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_delivery_traceability.py +0 -0
  128. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_entry_point_discovery.py +0 -0
  129. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_forge.py +0 -0
  130. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_metrics_batch_hygiene.py +0 -0
  131. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_metrics_billing_isolation.py +0 -0
  132. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_metrics_content_contract.py +0 -0
  133. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_metrics_contracts.py +0 -0
  134. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_metrics_dashboard.py +0 -0
  135. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_metrics_dashboard_end_to_end.py +0 -0
  136. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_metrics_html_report.py +0 -0
  137. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_metrics_lazy_providers.py +0 -0
  138. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_metrics_money_and_redaction.py +0 -0
  139. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_metrics_providers.py +0 -0
  140. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_metrics_resolve_compute.py +0 -0
  141. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_metrics_routing_policy.py +0 -0
  142. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_metrics_wing.py +0 -0
  143. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_practice_assignment.py +0 -0
  144. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_relationships.py +0 -0
  145. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_storage_contract.py +0 -0
  146. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_validate_templates_gates.py +0 -0
  147. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_wing_schemas.py +0 -0
  148. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_wings.py +0 -0
  149. {katalyst_forge-5.2.0 → katalyst_forge-5.2.1}/tests/test_writer_bundle_schema.py +0 -0
@@ -16,6 +16,16 @@ PyPI package version. A breaking node-type/model change bumps `schema_version`.
16
16
 
17
17
  ---
18
18
 
19
+ ## [5.2.1] -- 2026-08-08
20
+
21
+ ### Fixed
22
+
23
+ - **PyYAML is now a declared runtime dependency** (RIC-1628). 5.2.0 shipped `katalyst_forge.metrics` but could not import `metrics.generate_dashboard` on a clean install, because that module reads its metric definitions, signal sources and threshold profiles from YAML while `pyyaml` was only ever present transitively in the development environment. An AST scan of `src/` confirms it was the only undeclared third-party runtime import.
24
+
25
+ ### Changed
26
+
27
+ - CI gains a **wheel-import** job that installs the built wheel into a venv with no dev group and imports every public entry point, including the dashboard CLI. Pytest runs inside the dev environment, where a transitively present package masks a missing runtime dependency, and the existing clean-machine smoke job installs agents and skills without ever installing the Python package, so nothing verified what a consumer actually gets. Verified the new job fails on the 5.2.0 dependency set and passes on this one.
28
+
19
29
  ## [5.2.0] -- 2026-08-08
20
30
 
21
31
  ### Added
@@ -1,9 +1,10 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: katalyst-forge
3
- Version: 5.2.0
3
+ Version: 5.2.1
4
4
  Summary: Katalyst Forge: the delivery-lifecycle bundle (node kinds, wings, agents, templates, schemas)
5
5
  Author: eSimplicity
6
6
  License: Proprietary
7
7
  License-File: LICENSE
8
8
  Requires-Python: >=3.12
9
9
  Requires-Dist: katalyst-engine<5,>=4.1
10
+ Requires-Dist: pyyaml<7,>=6
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "katalyst-forge"
3
- version = "5.2.0"
3
+ version = "5.2.1"
4
4
  description = "Katalyst Forge: the delivery-lifecycle bundle (node kinds, wings, agents, templates, schemas)"
5
5
  license = { text = "Proprietary" }
6
6
  requires-python = ">=3.12"
@@ -9,6 +9,9 @@ authors = [
9
9
  ]
10
10
  dependencies = [
11
11
  "katalyst-engine>=4.1,<5",
12
+ # generate_dashboard reads its metric definitions, signal sources and
13
+ # threshold profiles from YAML, so this is a runtime need, not a dev tool.
14
+ "pyyaml>=6,<7",
12
15
  ]
13
16
 
14
17
  [project.entry-points."katalyst_engine.bundles"]
File without changes