Skip to content

feat(oci): publish under the nested path ghcr.io/<owner>/falcon/<name> - #338

Merged
avrabe merged 2 commits into
mainfrom
feat/oci-nested-paths
Aug 7, 2026
Merged

feat(oci): publish under the nested path ghcr.io/<owner>/falcon/<name>#338
avrabe merged 2 commits into
mainfrom
feat/oci-nested-paths

Conversation

@avrabe

@avrabe avrabe commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Groups everything falcon under one path instead of a flat hyphenated list — the shape wasi uses.

ghcr.io/pulseengine/falcon-rate   →  ghcr.io/pulseengine/falcon/rate
ghcr.io/pulseengine/falcon-iekf   →  ghcr.io/pulseengine/falcon/iekf
…and the WIT package at              ghcr.io/pulseengine/falcon/cascade

The registry entry keeps a flat display name and points repository at the nested path — exactly wasi's shape (name = "io", repository = "wasi/io").

Bundled with the rename, deliberately

This stacks on #337 (falcon:*pulseengine:falcon-*). Taking both in one release means consumers absorb one break, not two. Paths published up to v1.131.1 keep serving their existing versions — nothing is retroactive.

The consequence that must not be missed

The registered wasm.directory entries point at the flat repositories (repository = "falcon-rate"). Once releases publish to nested paths, those entries are stale — the listings keep resolving to repositories that no longer receive versions.

And a registry-entry issue only adds an entry; changing an existing one needs a PR against registry/pulseengine.toml. Recorded in docs/OCI-DISTRIBUTION.md with the target shape, to be done after the first nested-path release, so the entries are never pointing at nothing.

[[component]]
name = "falcon-rate"
repository = "falcon/rate"

[[interface]]
name = "falcon-cascade"
repository = "falcon/cascade"

The matching OCI-P04 criteria update lands on #337 once it merges (the artifact lives there).

Refs: #336, #337, SWREQ-FALCON-OCI-P04.

🤖 Generated with Claude Code

Mirrors how wasi publishes — ghcr.io/webassembly/wasi/io under namespace
`wasi`, with the registry entry keeping a flat display name and pointing
`repository` at the nested path (`name = "io"`, `repository = "wasi/io"`).
Everything falcon now groups under one path instead of a flat hyphenated list:

    ghcr.io/pulseengine/falcon-rate   ->  ghcr.io/pulseengine/falcon/rate
    ghcr.io/pulseengine/falcon-iekf   ->  ghcr.io/pulseengine/falcon/iekf
    ... and the WIT package at ghcr.io/pulseengine/falcon/cascade

Bundled DELIBERATELY with the falcon:* -> pulseengine:falcon-* WIT rename
(#337) so consumers absorb ONE break rather than two. Paths published up to
falcon-v1.131.1 keep serving their existing versions; nothing is retroactive.

CONSEQUENCE THAT MUST NOT BE MISSED — the registered wasm.directory entries
point at the FLAT repositories (`repository = "falcon-rate"`). Once releases
publish to the nested paths those entries are stale: the listings keep
resolving to repositories that no longer receive versions. And a
`registry-entry` issue only ADDS an entry — changing an existing one needs a PR
against registry/pulseengine.toml. Recorded in docs/OCI-DISTRIBUTION.md with the
target shape, to be done AFTER the first nested-path release so the entries are
never pointing at nothing.

Stacks on #337 (the namespace rename); the matching OCI-P04 verification
criteria update lands there once it merges.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HvusAXYbHLyv3uTzfBcMbG
@avrabe
avrabe enabled auto-merge (squash) August 6, 2026 17:54
The push that would have triggered CI landed during the outage (Actions was in
major_outage 15:22Z-00:0xZ; zero runs were created repo-wide for hours), so no
run exists for this branch. Empty commit to generate a fresh synchronize event.
Squash-merge drops it from main.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HvusAXYbHLyv3uTzfBcMbG
@avrabe
avrabe merged commit 5789500 into main Aug 7, 2026
11 checks passed
@avrabe
avrabe deleted the feat/oci-nested-paths branch August 7, 2026 01:10
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