Repository navigation
Maintained contribution follow-up: Windows cleanup, OpenCode v2 and Codex children (#14-#16) #20
Description
Hi @xhluca,
I am following up on the three contributions submitted in #14, #15 and #16. Their branches are aligned with upstream main, and I have incorporated the relevant review feedback and rerun focused tests. I remain willing to support all three, respond to review and address regressions.
I understand and respect the policy requiring 100 qualifying GitHub contributions, excluding the most recent month. Although the original PRs were closed by the eligibility check, I hope the work can still be considered on its technical merits rather than becoming lost among the closed submissions. This issue brings the updated code and validation together and leaves the integration decision to you.
Windows native-transfer cleanup (#14)
The updated Windows branch, at commit d45b0d2, builds on Enrico's original patch from #8 and preserves his authorship. It closes export and manifest descriptors before cleanup, handles Windows binary descriptors, and avoids replacing an open guarded manifest. These changes prevent cleanup errors from masking the original import or finalization failure.
The branch also addresses your review of #8. The documentation now makes clear that Windows privacy depends on destination ACLs and that directory crash durability remains platform-dependent. Tests directly cover the Windows directory-flush branch and descriptor cleanup after both fchmod and fdopen setup failures.
OpenCode v2 public transfers (#15 and #17)
The updated OpenCode branch, at commit bc96198, supports v2 public session import/export while retaining legacy compatibility. It checks identity collisions, requires explicit import confirmation and verifies the exact imported session through public export, without writing private database tables. Supported text, linked tools, inline images and readable compaction summaries are retained; unsupported or private state is explicitly accounted for.
#17 incorporates the original implementation from #15. Thank you to @TheViniAlmeida for crediting that work and contributing the catalog and Kilo adaptations. I have brought those improvements and the fixes for all three findings in your #17 review back into my branch, with attribution preserved. Tool-result ordering and text segmentation now survive on capable targets, unavoidable legacy flattening is counted, omitted structured-error details are individually reported, and native fields are validated before projection can discard or default them.
I leave the integration structure to your preference: use #17 as a combined or squashed OpenCode change, or retain #15 as the foundation and apply only #17's additional work as a separate change on top. Because the updated branches overlap, the latter option needs a rebased, deduplicated delta rather than merging both unchanged. I am happy to help prepare that split. Neither PR is currently merged into upstream main.
Codex paginated child histories (#16)
The Codex child-history branch, at commit 68eb557, imports self-contained child histories using their primary metadata and declared ordinal boundaries, excluding inherited parent context. It preserves child tool calls, results and readable correspondence addressed to the child, and suppresses duplicates only when ID, role and exact text match.
Discovery and parsing agree on supported histories, while invalid boundaries, ambiguous targeted content and external lineage fail closed. Encrypted and inherited state is accounted for separately. The imported children are independent chats; this does not restore live parent/child orchestration or decrypt private state. No further review findings were present on #16, so this branch required no new code changes.
Validation
The latest focused checks ran on Linux with Python 3.12.3, synthetic fixtures and isolated profiles. OpenCode native checks used stock 2.0.23 and a deterministic localhost provider, without real histories or supplier inference.
| Checks | Result |
|---|---|
| Windows cleanup, atomic writing and conversion integration | 116 passed, 0 skipped |
| OpenCode v2, native transfers, catalog, CLI and conversion integration | 335 passed, 1 skipped |
| Codex child histories, boundaries, catalog and conversion integration | 177 passed, 1 skipped |
Each skip is the intentionally disabled real-store metadata smoke test. Lint, formatting, whitespace checks and all 12 contributor-policy tests pass on each branch. The four minimized regressions from your #17 review fail against the original #15 revision and pass with the fixes. These are overlapping focused gates, not a new full-suite pass or Windows-host native validation.
Closed PRs #14 and #15 still show their older head snapshots, so the branch and commit links above point to the updated code. I would appreciate your view on which contributions are useful to retain and how you would prefer to integrate them. I am willing to keep supporting all three and adapt them to the project's maintenance needs.
Thank you for considering the work.
Activity