@crocoder-dev/sce 0.3.0-pre-alpha-v3 → 0.3.0-pre-alpha-v5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -0
- package/lib/platform.js +2 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -28,6 +28,17 @@ npm install -g @crocoder-dev/sce
|
|
|
28
28
|
|
|
29
29
|
Unsupported platforms fail with explicit guidance instead of attempting an alternate install channel inside the npm package.
|
|
30
30
|
|
|
31
|
+
## How the installer works
|
|
32
|
+
|
|
33
|
+
The npm package is a thin launcher. During `postinstall`, it downloads the signed GitHub Release manifest for the package version, verifies the bundled manifest signature, selects the checksum-pinned native archive for the current supported platform, extracts `bin/sce`, and stores it in package-local runtime storage.
|
|
34
|
+
|
|
35
|
+
Native binary portability is handled before the GitHub Release archive is published. The npm installer does not rewrite macOS dynamic library install names, run `install_name_tool`, patch Linux ELF metadata, or build a separate npm-native binary.
|
|
36
|
+
|
|
37
|
+
## Troubleshooting install vs runtime failures
|
|
38
|
+
|
|
39
|
+
- `postinstall` failures usually indicate npm lifecycle-script execution, network/download, signature, checksum, unsupported-platform, or package-local filesystem permission issues.
|
|
40
|
+
- Runtime loader failures after a successful install, such as macOS `dyld` errors mentioning `/nix/store/.../*.dylib`, indicate a bad native release artifact. Fix those in the GitHub Release artifact pipeline before npm consumes the archive; do not add user-side npm workarounds or a separate npm build path.
|
|
41
|
+
|
|
31
42
|
## Other supported install channels
|
|
32
43
|
|
|
33
44
|
- Nix: `nix run github:crocoder-dev/shared-context-engineering -- --help`
|
package/lib/platform.js
CHANGED
|
@@ -7,11 +7,11 @@ const SUPPORTED_TARGETS = new Map([
|
|
|
7
7
|
],
|
|
8
8
|
[
|
|
9
9
|
"linux:arm64",
|
|
10
|
-
{ targetTriple: "aarch64-unknown-linux-
|
|
10
|
+
{ targetTriple: "aarch64-unknown-linux-musl", os: "linux", arch: "arm64" },
|
|
11
11
|
],
|
|
12
12
|
[
|
|
13
13
|
"linux:x64",
|
|
14
|
-
{ targetTriple: "x86_64-unknown-linux-
|
|
14
|
+
{ targetTriple: "x86_64-unknown-linux-musl", os: "linux", arch: "x64" },
|
|
15
15
|
],
|
|
16
16
|
]);
|
|
17
17
|
|