rootfs apps: Luna pass on the Plan 1 build strings (4 changes, 9 new rows)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
1 file changed,
+18
−0
docs/superpowers/plans/LUNA-COPY-REVIEW-ROOTFS-PLAN1-BUILD.md+18 −0
diff --git a/docs/superpowers/plans/LUNA-COPY-REVIEW-ROOTFS-PLAN1-BUILD.md b/docs/superpowers/plans/LUNA-COPY-REVIEW-ROOTFS-PLAN1-BUILD.md| new file mode 100644 |
| index 000000000..a74cf19e9 |
| --- /dev/null |
| +++ b/docs/superpowers/plans/LUNA-COPY-REVIEW-ROOTFS-PLAN1-BUILD.md |
| @@ -0,0 +1,18 @@ |
| +| ID or location | Current text | New text | Why | |
| +|---|---|---|---| |
| +| RFS-1-C32 | `let this rootfs app hibernate when idle. Rootfs apps are always on unless their first release opts in` | `let this rootfs app hibernate when idle. rootfs apps are always on unless their first release opts in` | CLI help uses lower case after full stops | |
| +| RFS-1-C53 | `the image links <path> to <target>, which is not a file in the image` | unchanged | Retains the hardlink refusal; the symlink-chain case needs its own row | |
| +| new | `the image links <path> to <target>, which is not a file in the image` | `the image path <path> follows more than 40 symlinks, so it was not shipped` | Printed from `internal/rootfsimage/errors.go` when symlink resolution exceeds 40 links | |
| +| RFS-1-C55 | `the archive holds <n> images. save one image and ship that` | `the source holds <n> images. keep one image and ship that` | Also applies to OCI layout directories | |
| +| RFS-1-C78 | `the image's layer <digest> does not match its digest, so it was not shipped` | `the image data <digest> does not match its digest, so it was not shipped` | Applies to layer, manifest, config and index blobs | |
| +| RFS-1-C88 | `CARLOS_CONTAINER_RUNTIME must be docker or podman` | `the CARLOS_CONTAINER_RUNTIME value must be docker or podman` | Keeps the variable name while starting lower case | |
| +| new | `rootfsimage: the image is too large to flatten: it has more than %d entries` | `the image has more than %d entries, so it was not shipped` | `internal/rootfsimage/flatten.go` and `dir.go`; removes an internal prefix | |
| +| new | `rootfsimage: the image is too large to flatten: its layers decode to too many bytes` | `the image's layers are too large, so it was not shipped` | `internal/rootfsimage/flatten.go`; plain user-facing wording | |
| +| new | `rootfsimage: the image is too large to flatten: its files pass %d bytes` | `the image's files are over %d bytes, so it was not shipped` | `internal/rootfsimage/tree.go`; clearer wording | |
| +| new | `rootfsimage: the image is too large to flatten: its indexes list more than %d entries` | `the image lists more than %d index entries, so it was not shipped` | `internal/rootfsimage/oci.go`; identifies the limit | |
| +| new | `rootfsimage: the image is too large to flatten: blob %s is %d bytes, over %d` | `the image data %s is %d bytes, over the %d-byte limit` | `internal/rootfsimage/oci.go`; covers any oversized blob | |
| +| new | `rootfsimage: the image is too large to flatten: %s is %d bytes, over %d` | `the image file %s is %d bytes, over the %d-byte limit` | `internal/rootfsimage/oci.go`; identifies the oversized file | |
| +| new | `rootfsimage: the image is too large to flatten: the archive has more than %d entries` | `the archive has more than %d entries, so it was not shipped` | `internal/rootfsimage/archive.go` | |
| +| new | `rootfsimage: the archive has no %s` | `the archive is missing %s` | `internal/rootfsimage/archive.go`; removes an internal prefix | |
| + |
| +4 existing rows changed, 1 existing row flagged for a separate case, 9 new rows proposed, and 3 new rows left alone: RFS-1-C86, RFS-1-C87 and RFS-1-C89. |
| \ No newline at end of file |