Skip to content

fix: auto-update prebuilt binaries for all platforms#3

Merged
SiliconState merged 2 commits into
mainfrom
fix/auto-update-prebuilds
Mar 23, 2026
Merged

fix: auto-update prebuilt binaries for all platforms#3
SiliconState merged 2 commits into
mainfrom
fix/auto-update-prebuilds

Conversation

@SiliconState

@SiliconState SiliconState commented Mar 23, 2026

Copy link
Copy Markdown
Owner

Summary

  • trigger prebuilt builds on pushes/PRs that modify native code or the build workflow
  • commit refreshed prebuilt binaries back to the repo from CI on pushes to main
  • update prebuilds documentation to reflect committed platform coverage

Type of change

  • Bug fix
  • Feature
  • Docs
  • Refactor

Validation

  • npm run setup
  • npm run doctor
  • npm run test:smoke
  • Workflow logic reviewed for Linux/macOS/Windows prebuild generation

Checklist

  • Scoped change (no unrelated edits)
  • Docs updated for behavior changes
  • Keeps C + SQLite core lightweight

Before

Linux and Windows prebuilds were CI/release targets but were not committed to the repository, so users without a local C compiler had to build from source.

After

When native code changes on main, CI rebuilds platform prebuilts and commits them back to prebuilds/, making those binaries available to installs without requiring a compiler.

@SiliconState

Copy link
Copy Markdown
Owner Author

Validation note:\n\n- Verified locally on Linux x64 with no compiler in PATH\n- Copying prebuilt binary for linux-x64 -> /home/abaka/.pi/memory/pi-memory
Installed: /home/abaka/.pi/memory/pi-memory
Done. copied pi-memory v2.2.0 — durable agent memory store
db: ~/.pi/memory/memory.db
project: auto-detected from PI_MEMORY_PROJECT | git remote | cwd | 'global'

Commands:
init [] [--file ] bootstrap MEMORY.md for any project
projects list all projects with record counts

log decision <title>       --choice <str>
                           [--context <str>] [--rationale <str>]
                           [--alternatives <str>] [--consequences <str>]
                           [--tags <str>] [--project <proj>]
                           [--session-id <id>]

log finding  <content>     [--source <str>] [--category <str>]
                           [--confidence verified|assumption|unverified]
                           [--tags <str>] [--project <proj>]
                           [--session-id <id>]

log lesson   <what_failed> [--why <str>] [--fix <str>]
                           [--tags <str>] [--project <proj>]
                           [--session-id <id>]

log entity   <name>        [--type <str>] [--description <str>]
                           [--notes <str>] [--project <proj>]
                           [--session-id <id>]

query   [--project <proj>] [--type decision|finding|lesson|entity] [--limit <n>]
search  <keyword>          [--project <proj>] [--limit <n>]
recent  [--n <n>]
state   <project>          [--phase <str>] [--summary <str>] [--next <str>]
export  [--project <proj>] [--format md|json]
sync    <file>             [--project <proj>] [--limit <n>]

ingest-session <path.jsonl>   [--project <proj>] [--dry-run]
sessions                      [--project <proj>] [--limit <n>]

Defaults: --project --limit 20 --n 10 --confidence assumption
--session-id links a memory entry to a specific Pi session UUID
--next takes pipe-separated values: "task1|task2|task3"
sync replaces and
markers in
ingest-session parses a Pi .jsonl session file, stores session metadata
and compaction summaries as findings. Idempotent (re-ingest updates).
set PI_MEMORY_PROJECT= to pin project in any shell or script instead of compiling\n- Verified the installed binary runs: \n- Simulated package install via

@siliconstate/pi-memory@2.2.0 postinstall
node ./scripts/postinstall.mjs

[pi-memory] native binary installed in the user .pi/memory directory.

up to date, audited 1 package in 181ms

found 0 vulnerabilities in a fresh temp copy; succeeded and installed the binary without requiring a compiler\n\nThis means a fresh install can succeed from committed prebuilts on Linux, while CI now verifies/prepares prebuilts for macOS, Linux, and Windows.

@SiliconState

Copy link
Copy Markdown
Owner Author

Validation note:

  • Verified locally on Linux x64 with no compiler in PATH
  • node ./scripts/setup.mjs copied prebuilds/linux-x64/pi-memory instead of compiling
  • Verified the installed binary runs: pi-memory v2.2.0
  • Simulated package install via npm install in a fresh temp copy; postinstall succeeded and installed the binary without requiring a compiler

This means a fresh install can succeed from committed prebuilts on Linux, while CI now verifies/prepares prebuilts for macOS, Linux, and Windows.

@SiliconState SiliconState merged commit 8ef8857 into main Mar 23, 2026
18 checks passed
@SiliconState SiliconState deleted the fix/auto-update-prebuilds branch March 23, 2026 23:24
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