From bf544980b1cb8a6525a3985b5b127bbdb8f784d6 Mon Sep 17 00:00:00 2001 From: JasonBuildAI Date: Sun, 18 Oct 2026 16:10:16 +0800 Subject: [PATCH] fix(ci): restore full-public catalog contracts The daily full-public fleet is still not ready after #6740. IP-030 omits the registered codex_chat machine-configuration namespace, and the configure-goal smoke pins the goal catalog feature set without the decision_context entry added by 7b247b4e9. Both checks fail on main a54c030ee and keep release verification at ready=false. Update the IP-030 inventory and the smoke expected set, and pin the new descriptor's local_artifact_preview availability. Fixes #6794 AI disclosure: this change was drafted with AI assistance at my request, under my direction and review. Signed-off-by: JasonBuildAI --- docs/concepts/interaction-pattern-catalog.md | 8 +++++++- examples/project/configure-goal-smoke.py | 4 ++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/docs/concepts/interaction-pattern-catalog.md b/docs/concepts/interaction-pattern-catalog.md index 9f3aeca5cd..5a4f96f768 100644 --- a/docs/concepts/interaction-pattern-catalog.md +++ b/docs/concepts/interaction-pattern-catalog.md @@ -1211,7 +1211,7 @@ main blocker or keeps following a stale local-only benchmark staging todo. **Trigger** - a typed machine-configuration namespace is about to change; the built-in - namespaces are `change_quality_qualification`, `goal_storage`, + namespaces are `change_quality_qualification`, `codex_chat`, `goal_storage`, `manager_runtime`, `periodic_report`, `pull_request_review`, `steward_executor`, and `todo_replan_cadence`. The public catalog returned by `loopx machine-config describe` is authoritative, so this inventory has to stay @@ -1221,6 +1221,12 @@ main blocker or keeps following a stale local-only benchmark staging todo. It does not promote existing Goals or migrate their data, and existing Goals keep the selection they were created with; see `docs/reference/local-authority-provider-selection.md`; +- `codex_chat` carries the native Codex profile alias, model, reasoning effort, + and service tier for new ordinary Goal conversations. Existing conversations + keep their identity and history. It does not configure the steward, an + attached Agent, or a LoopX Agent Loop, and it grants no permissions and + stores no credentials; see + `docs/integrations/session-runtime-control-plane-adapter.md#projection-boundary`; - `pull_request_review` carries `review_order` (`forward` by default, or `reverse`) and Goal-owned `agent_orders` for registered Agent overrides. Commands resolve explicit direction, Agent, Goal, then machine; reverse inverts diff --git a/examples/project/configure-goal-smoke.py b/examples/project/configure-goal-smoke.py index 07659c7dd2..0a19b751f7 100644 --- a/examples/project/configure-goal-smoke.py +++ b/examples/project/configure-goal-smoke.py @@ -303,10 +303,14 @@ def main() -> int: "pull_request_review", "periodic_report", "content_ops", + "decision_context", } references = features["content_ops"] assert references["availability"] == "local_artifact_preview", references assert "default" not in references and "current" not in references, references + decision_context = features["decision_context"] + assert decision_context["availability"] == "local_artifact_preview", decision_context + assert "default" not in decision_context and "current" not in decision_context, decision_context improvement = features["goal_capability_organization"] assert improvement["default"] == { "mode": "off", "discovery_budget_minutes": 5, "max_trials": 1,