Repository navigation
Conversation
…nd fixture matrix to CLI 1.15 - compat window >=1.15.0 <1.16.0 (single series) with the updateDryRun capability; pinned references/openspec gitlink rotates to v1.15.0 (8e0288df), absorbing the unshipped in-window patches 1.14.2/1.14.3 (no JSON shape change; obligations carried) - typed UpdatePlan contract (three keys always arrays, closed add|update|delete and two-code note enums, no rename action, failures-as-data beside exit 0, failure envelope status[]/update_error beside exit 1) plus the gated updatePlan executor method; install.scope decodes the new 'standalone' member - agent registry series rotates to '1.15' constants-only (upstream config.ts is byte-unchanged); staleness baseline moves to 1.15.0 - fixture matrix rotates: openspec-cli-115 (1.15.0) positive line, openspec-cli-114 to 1.14.3 boundary with 1.15-only member absence proofs, v13 boundary suite and v14 helper retire, positive files rename to official-cli-v15-*, and the new real-binary update-plan positive lands; upstream-contract anchors re-derived and the UpdatePlan source lock added - pin guards rotate (prepare script, upstream-contract regression, server cold-start, W2 playwright probe) and the stale v9-era check-openspec-reference gate is repaired to the v1.15 assertion
…tate admitted fixtures - agentIntegrations.updatePlanPreview reads the typed plan through runPlanningRootRead and the gated executor: executed evidence keeps exit code, diagnostics, stderr, and contract error separate; a non-admitted session learns unavailability before any argv; the real update/repair mutation streams are unchanged and never gated by the preview; router lane proves argv/force, exit-0-with-failures, the update_error envelope, and the pre-argv refusal - the Config Agents Update/Repair dialog renders the plan as verbatim evidence: action chips, wrapped mono paths, notes by code, per-tool would-fail rows as amber data, the failed-command envelope as the only destructive alert, muted unavailability that never disables the real run; the preview fetch carries a generation guard - admitted-version fixtures rotate to 1.15 across findings/diff/archived/health-gate/ agent-integrations/tool-subscription/projection/router lanes; mismatch copy, retired 1.14 gate case, and install-command assertions follow the rotated constants
…d governance - root README + README-zh rotate tables, narrative, and compatibility facts with verbatim legacy snapshots (README-1.14.0.md / README-zh-1.14.0.md); the CLI package README rotates under the release README law - AGENTS.md gains the v15 architecture decision, pin bullet, clean-build law, and the release-README-law current-line parenthetical - changeset openspec-115-line-adaptation.md bumps core/server/web/cli major - living spec openspec-cli-integration rotates the admission law with the new 'Accept the current 1.14 line' era scenario - evidence report references/openspec-1.15.0-report.md and the target change loop artifacts record the investigation, plan, checkpoints, and review round
|
Note: the |
… to 1.15 The fallback-probe mirror constant (and its pinned assertion in the process-topology lane) still named the retired 1.14 series, failing both the Fast Gate and the Windows Portability Gate on the dispatched PR Quality run; both rotate with the core compat constant they mirror.
…15-line # Conflicts: # AGENTS.md # packages/core/package.json # packages/core/src/__tests__/official-cli-v15-fixtures.ts # packages/core/src/official-cli-v13-boundary-fixtures.test.ts # packages/core/src/official-cli-v15-validation-findings-fixtures.test.ts # packages/core/src/official-cli-v15-workflow-fixtures.test.ts # packages/core/src/opsx-kernel-schemas-root.fixtures.test.ts # packages/core/src/upstream-contract-regression.test.ts # packages/server/src/root-context-cold-start.integration.test.ts # packages/web/scripts/w2-project-binding-playwright.ts # pnpm-lock.yaml # references/openspec # scripts/prepare-openspec-reference.mjs
…+ 14.0.2 release)
|
Superseded: while this line was in flight, the parallel |
Summary
Upstream
@fission-ai/openspecreleased 1.14.2 (10-15), 1.14.3 (10-17), and 1.15.0 (10-24) after our v14 pin (1.14.1). Per the one-line-per-series cadence this opens the OpenSpecUI 15 single-series window>=1.15.0 <1.16.0as a one-hop rotation: the v15 pin contains every 1.14.2/1.14.3 commit (neither patch changed a JSON shape) and the boundary fixture carries their obligations at 1.14.3. Evidence:references/openspec-1.15.0-report.md; change loop:openspec/changes/target-openspec-cli-115-line/.What changed
v1.15.0(8e0288df); all four pin guards rotate; the stale v9-eracheck-openspec-reference.mjsfake green gate is repaired to the v1.15 assertion in the same PR.updateDryRuncapability; typedUpdatePlanschema family (three keys always arrays, closedadd|update|deleteaction and two-code note enums, no rename action — moves plan as delete+add pairs, per-toolfailuresare data beside exit 0, failed-command envelopestatus[]/update_errorat exit 1) with a gatedupdatePlanexecutor method;install.scopegains'standalone'(typed decode only; npm consumption unchanged).'1.15'(upstreamconfig.tsbyte-unchanged — zero tool delta; every 1.14 physical fact carries forward); generator staleness baseline →1.15.0.agentIntegrations.updatePlanPreview(typed read throughrunPlanningRootRead, refused pre-argv on non-admitted sessions) + Config Agents Update/Repair dialog preview (action chips, wrapped paths, notes by code, amber would-fail rows, failed-command alert; unavailability never gates the real mutation; fetch carries a generation guard).openspec-cli-115(1.15.0) positive matrix,openspec-cli-114→ 1.14.3 boundary (identity, unsupported classification,--dry-runrejection, 1.15-only member absence — never asserting v14-era absence), v13 boundary suite + v14 helper retire, positive files renamedofficial-cli-v15-*, new real-binary non-empty plan positive (corrupt/delete → update/add rows → disk unwritten → settle → empty re-plan); upstream source anchors re-derived with a new UpdatePlan source lock.packages/cli/README.md(release README law) with verbatim legacy snapshots; AGENTS.md v15 architecture decision; changeset (major ×4); living spec admission law + "Accept the current 1.14 line" era scenario.Verification (all run in this worktree)
pnpm format:checkpnpm lint:civitest.browser.config.ts)node scripts/prepare-openspec-reference.mjs8e0288dfnode scripts/check-openspec-reference.mjsOK: v1.15.0Independent adversarial subagent review round 1 scored 8/10; all findings (P1 living-spec range contradiction, P2 stale governance parenthetical, P2 missing real-binary plan positive, P3 batch) were fixed before this PR — see the change's
loop/implementation.md.Notes for review
pnpm test:browser:ciincludes the dialog file in CI lanes; locally verified viavitest.browser.config.ts.test:cimonolith; cli package changes are constant-driven only (typecheck green).