Skip to content

Track Koffi 3 split-package migration after #763 #823

Description

@rullerzhou-afk

Context

#763 deliberately stays on the reviewed Koffi 2.x line and solves release size/cross-architecture payloads with a guarded afterPack prune plus full native inventory auditing. Koffi 3 migration is a separate ABI/provisioning change and must not be folded into that packaging fix.

Research and implementation scope

  • Select an exact Koffi 3 version after the current ABI-fix cadence settles.
  • Adapt pointer handling to BigInt and verify koffi.address() behavior.
  • Prove all five @koromix/koffi-* target rows survive clean cross-platform lockfile installs, including version, resolved, integrity, os, and cpu metadata.
  • Evaluate Koffi 3's process.resourcesPath search roots and a target-native extraResources provisioning model without splitting updater metadata ownership accidentally.
  • Use full Electron, not only ELECTRON_RUN_AS_NODE, when the packaged process.resourcesPath load path or ASAR integrity path is involved.
  • Run positive ABI probes for Windows x64/ARM64 COM vtable decode/call, Buffer/offset decode, structs, and koffi.address().
  • Run positive macOS x64/ARM64 probes for multiple declarations of objc_msgSend, SkyLight calls, Space-stationary behavior, and de-delegation/restoration.
  • Define updater metadata generation/merge ownership before changing any release job from its current multi-architecture invocation.

Entry criteria

Non-goals

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions