Skip to content

docs(opencode): prepare the post-beta runtime support transition - #696

Draft
pascalandr wants to merge 1 commit into
devfrom
prep/opencode-v2-post-beta
Draft

pascalandr wants to merge 1 commit into
devfrom
prep/opencode-v2-post-beta

Conversation

@pascalandr

Copy link
Copy Markdown
Contributor

Purpose

Start the parallel preparation for retiring earlier OpenCode V2 runtime contracts after beta, based on merged #695 (aa51cbb9). Keep the eventual support change small and reviewable while ordinary development continues on dev.

This first increment is documentation only. It selects no new minimum runtime, changes no dependencies, and removes no current compatibility behavior. The implementation work packages remain open.

Included in this draft

  • dev-docs/OPENCODE_V2_POST_BETA.md: maintained preparation register, file-level retirement inventory, permanent integration guarantees, synthetic-history migration acceptance and release gates.
  • Distinguish the pinned client/plugin 2.0.4 dependencies from the tested OpenCode daemon 2.0.5 and other runtime targets. The future minimum depends on the actual upstream post-beta contract, not an inferred version number or dist-tag.
  • Keep OpenCodeSharedService.acquire() as the shared integration seam for browser proxy and direct server callers.
  • Treat legacy wire retirement separately from historical session/location identity, storage validation and pruning claim safety.
  • Link the register from the documentation index and existing compatibility audit.

Incremental work

  • P0: establish the baseline, retirement map and acceptance criteria.
  • P1: separate support policy from recognized wire contracts at the shared connection; preserve current support during preparation and specify localized unsupported-runtime behavior.
  • P2: certify synthetic legacy histories on the chosen replacement runtime, including same-directory identities, pagination, worktree moves, forks, compaction and pruning.
  • P3: remove obsolete translations and selectors only after the contract/data evidence supports removal; preserve connection and authority regressions.
  • P4: announce the new minimum, validate minimum/latest across supported hosts, update release documentation and complete independent review/CI.

Keep this PR in draft while the release decision is open. Land completed backward-compatible preparation as small increments and keep the register aligned with dev, rather than accumulating an alternate implementation for the rest of beta.

Validation of this increment

  • Documentation links and referenced repository paths checked.
  • git diff --check passed.
  • No runtime tests rerun for this documentation-only increment. Native post-beta/migration validation remains explicitly pending in the register.

Start a maintained preparation register from the merged cross-runtime
implementation in #695. Separate the client/plugin dependency versions,
authenticated daemon support policy and CodeNomad release decision so a
future minimum is chosen from the actual post-beta publication contract.

Map legacy retirement candidates to their current files while preserving
the shared connection seam, lifecycle/authorization guarantees, native
pagination and pruning storage/claim safety. Define isolated historical
data acceptance before removing legacy location identity, with explicit
coverage for same-directory sessions, moved histories, forks and compaction.

Track policy preparation, migration certification, implementation cleanup
and release gates as small reviewable increments. Link the new register
from the index and compatibility audit. Current dependencies, supported
runtimes and production behavior are unchanged; implementation work remains
open. Validate document links, repository paths and whitespace only.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant