Skip to content

Fix install docs, widen CI matrix, neutral transfer metadata (#33)#41

Merged
TheRealDinghyDog merged 2 commits into
opencode-conversionfrom
fix/issue-33-docs-and-ci
Jul 11, 2026
Merged

Fix install docs, widen CI matrix, neutral transfer metadata (#33)#41
TheRealDinghyDog merged 2 commits into
opencode-conversionfrom
fix/issue-33-docs-and-ci

Conversation

@TheRealDinghyDog

Copy link
Copy Markdown
Owner

Fixes #33 (review finding H-05 + lower-priority observations).

Changes

  • Install docs (H-05): /plugin marketplace add opencode/plugin marketplace add TheRealDinghyDog/opencode-plugin-cc (Claude Code rejects the bare-name source format before any network request).
  • CI matrix: Node 18.18 / 20 / 22 on ubuntu-latest + Node 22 on windows-latest, fail-fast: false. Note: this PR's CI run is the first time the suite executes on Windows and Node 18.18 — if a leg is red, that's the matrix doing its job; treat failures as follow-up findings rather than reverting the matrix.
  • Transfer metadata: imported sessions no longer claim openai/gpt-5.4-mini; they carry neutral claude-code / imported-transcript provenance. Live-verified against real OpenCode 1.17.15: the importer accepts the document, opencode export returns the neutral model block intact, and the session lists normally. (Explicitly resuming with a model override always works; if TUI resume defaults to the recorded model id, OpenCode falls back to its default for unknown ids — worth a glance during the next manual smoke test.)
  • persistThreadtaskSessionTitle: renamed to what it actually controls (the task-style session title), with a comment documenting that review sessions intentionally remain in OpenCode's session store so opencode --session <id> works. No behavior change. The one remaining persistThread mention in docs/opencode-adaptation-plan.md describes the old Codex architecture and is correctly untouched.

Provenance & tests

Drafted by OpenCode through the plugin's own --write rescue path (parallel-delegation live test). Review found no defects to correct in this one — the only addition was the live importer verification. npm test: 95 passed, 0 failed, 0 skipped.

🤖 Generated with Claude Code

TheRealDinghyDog and others added 2 commits July 10, 2026 21:54
The README's marketplace command used an invalid source format, so a
fresh user failed at the first documented step; CI ran only Node 22 on
ubuntu-latest despite declaring Node >=18.18 support and containing
Windows-specific process logic; the transfer converter stamped
openai/gpt-5.4-mini into every imported session regardless of the user's
provider; and the misleading persistThread option suggested review
sessions get deleted when it only ever controlled the session title.

README now documents `/plugin marketplace add
TheRealDinghyDog/opencode-plugin-cc`; CI runs Node 18.18/20/22 on
ubuntu-latest plus Node 22 on windows-latest with fail-fast off;
imported sessions carry neutral claude-code/imported-transcript
metadata (verified against a real OpenCode 1.17.15 import + export);
and persistThread is renamed to taskSessionTitle with a comment stating
that review sessions intentionally remain reopenable in OpenCode's
store.

Drafted by OpenCode via the plugin's own rescue path (issue #33 task);
review found no defects to correct. Live-verified the neutral metadata
against the real importer.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The windows-latest leg added in this PR ran the suite on Windows for the
first time and found six failures, all environmental:

- canonicalWorkspaceDirectory and the tests' expected paths disagreed on
  Windows 8.3 short names (RUNNER~1 vs runneradmin): use
  fs.realpathSync.native, which expands short names and matches a child
  process's cwd, consistent with resolveStateDir.
- findLatestTaskThread compared stored canonical directories against the
  raw cwd, which on Windows is git's forward-slash toplevel — resume
  lookups could never match; compare canonical-to-canonical.
- Two tests hand-rolled a shebang opencode stub that Windows cannot
  execute via PATH; they now install the same .cmd shim the main fixture
  uses.
- node --import was passed a bare absolute path, which Windows parses as
  an unsupported "d:" URL scheme; pass a file:// URL.
- The transfer test faked only HOME; os.homedir() reads USERPROFILE on
  Windows.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@TheRealDinghyDog

Copy link
Copy Markdown
Owner Author

Pushed fixes for the six windows-latest failures — all environmental issues the new matrix surfaced in previously-merged code, not defects in this PR's changes: 8.3 short-path mismatches (now using fs.realpathSync.native, consistent with resolveStateDir), a raw-cwd vs canonical-directory comparison in findLatestTaskThread that broke resume lookups on Windows, missing .cmd shims in two hand-rolled opencode stubs, --import needing a file:// URL on Windows, and USERPROFILE alongside HOME in the transfer test. One production-code effect beyond tests: directory scoping and resume matching now canonicalize consistently on Windows. Linux suite re-verified green locally (95/95); awaiting the matrix run.

@TheRealDinghyDog
TheRealDinghyDog merged commit d28899e into opencode-conversion Jul 11, 2026
4 checks passed
@TheRealDinghyDog
TheRealDinghyDog deleted the fix/issue-33-docs-and-ci branch July 11, 2026 00:55
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