Skip to content

lore's platform declarations are never read: the lifecycle schema is not enforced, platforms: is ignored, search --platform does nothing, and the guide documents flags that do not exist #969

Open

Description

@David-Noble-at-work

lore declares platform selection in four places that nothing reads:

  • The lifecycle schema is never enforced. cmd/internal/lorepackage/lifecycle.json limits platforms: to Darwin|Linux|Windows, but LifecycleSchema is embedded and never referenced (cmd/internal/lorepackage/schema.go:8-13), and LoadLifecycle is a plain file read (lifecycle.go:191-196). The packages-manifest schema, by contrast, is enforced.
  • platforms: is never read. Lifecycle.SupportsPlatform has no callers (lifecycle.go:319-330), and Feature.Platforms and Setting.Platforms (:77, :86) are never read.
  • lore search --platform is registered and ignored. It's registered at cmd/lore/lore/commands.go:486, and runSearch reads only lore-only, native-only and limit (:494-499).
  • The guide documents flags that don't exist. docs/guides/lore/create-manifests.md:221 documents --target-os and --target-distro, and :77-79 shows lowercase darwin and linux, which the schema's enum refuses. :217-224 says a Linux.Debian graph can be built on a Mac, but no CLI path chooses a target platform: BuildFromManifest and BuildFromPackages have no callers (cmd/lore/lore/builder.go:171-186).

A fourth spelling, lore bundle --platform linux/fedora (commands.go:362), sits on a command that is unimplemented.

Found 2026-09-28 at 9cd1e95d, verifying #944.

Resolution

Each surface is either wired to #944's one selector API or removed, and the guide describes what exists. Which, per surface, is the owner's ruling.

Plan and design documents

Kind Document
Plan Not yet opened

Epic: #446 · Feature: #72

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Epic:LorePackaginglore packaging and the registrySeverity:MediumBroken with a workaround, or a narrow pathbugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions