mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-09-11 02:55:51 +00:00
22b9abf231
Three defects that the v6.4.3-rc.1 cut exposed, each with its contract note and proof: 1. scripts/release-preflight-worker.sh published the smoke stack on host port 7655 and probed it directly. pulse-dev also hosts the maintainer's dogfood Pulse instance on 127.0.0.1:7655 and a second instance on 17655, so the release smoke failed to start after every other stage had passed on the qualified head. The worker now honours PULSE_RELEASE_PREFLIGHT_E2E_PORT, otherwise takes the first candidate host port pair it verifies free and fails fast when none is, probes health and update status on that port, and hands Playwright the same base URL. 2. .github/workflows/publish-helm-chart.yml resolved the chart version before checking out the repository, butde41ea1883made that step call scripts/write_github_output.py, so every chart publish since failed with "can't open file". Run 33580123246 hit it after all other staging passed; the checkout now precedes the resolver. 3. docs/release-control/control_plane.json maps the 6.4.3 version prefix to release/v6.4. Run 33579042375, dispatched from main, failed inside the compiler dispatch because main advanced one minute after the pipeline pinned its source SHA; with pull requests landing every few minutes a candidate cannot hold its SHA between prepare and compile. release/v6.4 was created from main at the exact-SHA-qualified commit56e51e622eand carries these same fixes; v6.4.3-rc.1 published from it. The deployment-installability contract records the worker port and toolchain rules and the Helm checkout order; release_preflight_test.py and build_release_assets_test.go pin them.
88 lines
3.8 KiB
JSON
88 lines
3.8 KiB
JSON
{
|
|
"version": "1",
|
|
"system": "pulse-release-control",
|
|
"execution_model": "direct-repo-sessions",
|
|
"agent_values_doc": "docs/release-control/internal/AGENT_VALUES.md",
|
|
"control_plane_doc": "docs/release-control/internal/CONTROL_PLANE.md",
|
|
"control_plane_schema": "docs/release-control/control_plane.schema.json",
|
|
"active_profile_id": "v6",
|
|
"active_target_id": "v6-product-lane-expansion",
|
|
"legacy_release_lines": [
|
|
{
|
|
"version_prefix": "5.1.",
|
|
"prerelease_branch": "main",
|
|
"stable_branch": "main"
|
|
},
|
|
{
|
|
"version_prefix": "6.3.2",
|
|
"prerelease_branch": "release/v6.3.2",
|
|
"stable_branch": "release/v6.3.2"
|
|
},
|
|
{
|
|
"version_prefix": "6.4.3",
|
|
"prerelease_branch": "release/v6.4",
|
|
"stable_branch": "release/v6.4"
|
|
},
|
|
{
|
|
"version_prefix": "6.5.",
|
|
"prerelease_branch": "release/v6.5",
|
|
"stable_branch": "release/v6.5"
|
|
}
|
|
],
|
|
"profiles": [
|
|
{
|
|
"id": "v6",
|
|
"lifecycle": "active",
|
|
"root": "docs/release-control/v6",
|
|
"prerelease_branch": "main",
|
|
"stable_branch": "main",
|
|
"source_of_truth": "docs/release-control/v6/internal/SOURCE_OF_TRUTH.md",
|
|
"status": "docs/release-control/v6/internal/status.json",
|
|
"status_schema": "docs/release-control/v6/status.schema.json",
|
|
"development_protocol": "docs/release-control/v6/internal/CANONICAL_DEVELOPMENT_PROTOCOL.md",
|
|
"high_risk_matrix": "docs/release-control/v6/internal/HIGH_RISK_RELEASE_VERIFICATION_MATRIX.md",
|
|
"subsystems_dir": "docs/release-control/v6/internal/subsystems",
|
|
"registry": "docs/release-control/v6/internal/subsystems/registry.json",
|
|
"registry_schema": "docs/release-control/v6/internal/subsystems/registry.schema.json",
|
|
"subsystem_contract_template": "docs/release-control/v6/internal/SUBSYSTEM_CONTRACT_TEMPLATE.md"
|
|
}
|
|
],
|
|
"targets": [
|
|
{
|
|
"id": "v6-rc-cut",
|
|
"profile_id": "v6",
|
|
"kind": "release",
|
|
"status": "completed",
|
|
"summary": "Hold Pulse v6 on the governed prerelease-cut target until RC publication is explicitly judged ready, while continuing to clear prerelease blockers, prove migration safety, and exercise the pre-RC high-risk gates.",
|
|
"completion_rule": "rc_ready"
|
|
},
|
|
{
|
|
"id": "v6-rc-stabilization",
|
|
"profile_id": "v6",
|
|
"kind": "stabilization",
|
|
"status": "completed",
|
|
"summary": "Once a real governed RC exists, keep Pulse v6 simple, accurate, and cleanly readable around that proven monitoring-first floor while broader control-plane expansion stays out of the default target until it is proven.",
|
|
"completion_rule": "manual",
|
|
"proof_scope": "none"
|
|
},
|
|
{
|
|
"id": "v6-ga-promotion",
|
|
"profile_id": "v6",
|
|
"kind": "release",
|
|
"status": "completed",
|
|
"summary": "Pulse v6 GA and the initial 6.0.x patch line shipped from the governed v6 release branch; after the v6 public cutover, main is the canonical latest-and-greatest branch for active development and stable release preparation.",
|
|
"completion_rule": "manual",
|
|
"proof_scope": "none"
|
|
},
|
|
{
|
|
"id": "v6-product-lane-expansion",
|
|
"profile_id": "v6",
|
|
"kind": "feature",
|
|
"status": "active",
|
|
"summary": "Post-GA active development runs on main and promotes proactive Pulse Intelligence, policy-aware data governance, resource-change intelligence, action-governance, fleet-governance, agent-operable infrastructure onboarding, continuous discovery reconciliation, and agent-ready operations contract proof after the monitoring-first v6 floor; Patrol is the detection and investigation engine, Assistant is the contextual explanation, approval, and governed action surface, and agent-ready proof is API/CLI-first with MCP only as an adapter over canonical contracts.",
|
|
"completion_rule": "manual",
|
|
"proof_scope": "none"
|
|
}
|
|
]
|
|
}
|