Skip to content

machine: Disk.Cache goes; nothing sets it - #94

Merged
aledbf merged 1 commit into
mainfrom
machine/no-disk-cache
Oct 2, 2026
Merged

aledbf merged 1 commit into
mainfrom
machine/no-disk-cache

Conversation

@aledbf

@aledbf aledbf commented Oct 1, 2026 •

Copy link
Copy Markdown
Contributor

machine.Disk.Cache and spin-machine boot --disk-cache had no setter: spin never sets it, no Taskfile, workflow or probe passes the flag, and #48 already dropped the bench axis for that reason. The field's own comment argued QEMU's default is the right one.

  • Cache, cacheModes, the three validate cases about them, the flag, and their test rows go
  • why writeback is right (one host copy of the base for every VM; cache=none fails on tmpfs) moves into driveArg's comment
  • validate's "a chain carries a format per image" now has a test row of its own; before, only the path+chain row reached it

spin does not reference the field (grep over spin main), so its next module bump compiles as is. Local mutate, empty SPIN_MACHINE_OUTPUT: 23 refused, 0 survived.

🤖 Generated with Claude Code


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.

No consumer sets a disk's cache mode (spin never has; #48 dropped the bench axis for that
reason), and its own comment argued the default is right. Cache, cacheModes, their three
validate cases and --disk-cache go; why the default is right moves to driveArg. A chain
given a disk-level format is now asked of validate on its own.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
@aledbf
aledbf force-pushed the machine/no-disk-cache branch from 19c4a64 to 8627155 Compare October 2, 2026 00:07
@aledbf
aledbf merged commit 50e644f into main Oct 2, 2026
1 check passed
@aledbf
aledbf deleted the machine/no-disk-cache branch October 2, 2026 00:08
aledbf added a commit that referenced this pull request Oct 2, 2026
aledbf added a commit that referenced this pull request Oct 2, 2026
* machine: the fingerprint is one hash, and Incoming one field

identity() was split out so FingerprintCache could memoise the file sums alone; the cache is
gone, and identity was a second length-prefixed writer whose output was hashed again. The
shape, the topology and the host CPU are written into the fingerprint's hash directly. Every
fingerprint changes with it: no checkpoint taken before this resumes after it.

IncomingDefer and Incoming were two fields for -incoming's one argument, with a validate case
to keep them apart. Incoming takes "defer", QEMU's own word, as the CLI already did.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>

* machine: qemuOpt's comment names no cache mode, which #94 removed

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>

---------

Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]>
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