| Ticket Hash: | 241be0bed65e9715adccd02c806b3e3d627116f5 | ||
| Title: | The container node's image installs Alpine's Crystal 1.18.2, so trunk, pinned at 1.19.1, no longer builds there | ||
| Status: | Closed | Type: | Code_Defect |
| Severity: | Normal | Priority: | High |
| Subsystem: | node | Resolution: | Fixed |
| Last Modified: |
2026-11-09 21:37:51 33.4 hours ago |
Created: |
2026-11-02 20:52:50 8.4 days ago |
| Version Found In: | |||
| Description: | ||||
|
Found 2026-11-02 at 3:48 pm Eastern by the first CI run on aarch64-1 (run bcf5bfc37f, on ollama, of trunk c92c191591): exit 1, "Error: undefined method 'instant' for Time.class", tools/ocx2.cr does not build. ocx-node/Dockerfile installs crystal from Alpine 3.23's packages, which is 1.18.2; trunk pins 1.19.1 (9c32130f12) and has used Time.instant since 2fef62aca6. The container runs today only because its image built the older release b3386f3589; the next release accepted would fail to build in the image, and every CI run there fails on the compiler alone.
Fix: the image installs the pinned compiler, the one shard.yml names, not the distribution's: Crystal's own release for linux-aarch64 at that version, or a build of it, checked by hash like the client root's inputs (ocx-rootfs/build-rootfs.cr). Passes when: a CI run on aarch64-1 of trunk prints "Crystal 1.19.1" in its dependency ledger and builds tools/ocx2.cr. Also found the same afternoon: the image's named volume for /root, created on Oct 31 by an earlier image, kept that image's empty, root-owned /root and hid the current image's Claude install and sign-in files; recreating the volume fixes it. Making the container's home /home/ocx with hosts.json mapping it into sandboxes as /root, as x86-1 does, would avoid that; it needs the maintainer's word on scripts/hosts.json. | ||||
| User Comments: | ||||
|
added on 2026-11-09 21:37:51:
Closed in OCX's ticket sort, batch 1 (ollama post 8f6c9afbb7): done in 9528b053d2: ocx-node/Dockerfile installs the official Crystal 1.19.1 tarball, checked by sha256 (lines 19-23). Not checked: CI on aarch64-1 since. | ||||