Roadmap#
Detailed design records live in GitHub issues so discussion and ownership stay with the work. This page is the compact release-status index for the current codebase.
Status legend#
shipped – implemented in the current codebase
in progress – actively being worked on
proposed – designed but not yet started
v0.5 foundations#
Issue |
Status |
Summary |
|---|---|---|
shipped |
CLI and HTTP lockfile-in / lockfile-out conversion without solving |
|
shipped |
Composite action for local CLI or hosted API solve workflows |
|
shipped |
HTTP result cache with durable |
v0.6 review tools#
Issue |
Status |
Summary |
|---|---|---|
shipped |
Deterministic local input checks and lint-style findings |
|
shipped |
Platform-aware comparisons between resolved HTTP inputs |
|
shipped |
Bounded dependency-chain explanations for successful single-platform solves |
v0.7 repair and solver service#
Issue |
Status |
Summary |
|---|---|---|
shipped |
Tested single-spec relaxations for infeasible solves |
|
shipped |
Manual loopback HTTP service with a persistent solver worker |
|
shipped |
Local final-state delegation through the broker service |
|
shipped |
Bounded request catalog for scheduled solver-cache refresh |
|
shipped |
Foreground-aware refresh of missing or stale private final states |
v0.8 browser workbench#
Change |
Status |
Summary |
|---|---|---|
shipped |
First-party browser workbench for preflight, resolve, package inspection, and exporter output |
v0.9 trust and admission#
Provenance, attestation serving, admission control, and CEP alignment.
Issue |
Status |
Summary |
|---|---|---|
proposed |
Shared request, artifact, solver, and channel snapshot metadata |
|
proposed |
CEP-27-aligned Sigstore solve attestations |
|
proposed |
Durable |
|
proposed |
Policy checks over solved artifacts before installation |
|
proposed |
Draft CEP text for a solve attestation predicate |
Dependency graph#
graph TD
T["transcode\n(shipped)"] --> PF["preflight + lint\n(shipped)"]
T --> RPR["repair suggestions\n(shipped)"]
T --> D["diff\n(shipped)"]
T --> E["explain\n(shipped)"]
P["result cache + permalink\n(shipped)"] --> PV["provenance fields"]
P --> B["broker-managed local service\n(shipped)"]
B --> FS["internal Presto solver backend\n(shipped)"]
FS --> WC["recorded solver requests\n(shipped)"]
WC --> CW["scheduled solver-cache refresh\n(shipped)"]
PF --> RPR
E --> RPR
PF --> WB["browser workbench\n(shipped)"]
P --> WB
PV --> A["signed provenance"]
A --> CEP["CEP draft"]
A --> S["attestation serving"]
P --> S
S --> AD["policy + admission"]
GH["CI action\n(shipped)"] --> PF
GH --> D
classDef shipped fill:#e6f4ea,stroke:#1e7e34,color:#0b3d1f;
class T,P,GH,PF,D,E,RPR,B,FS,WC,CW,WB shipped;
HTTP lockfile transcoding reconstructs package records from embedded metadata
without fetching the referenced archives. Other review paths remain
metadata-only for uploaded lockfiles. Repair stays separate from explain
because it may run repeated solver attempts under an explicit budget. The
internal Presto solver backend
uses the broker-managed local process and does not define a remote protocol.
Its final-state entries share the configured cache storage and
in-memory bounds, but remain separate from public /resolve permalinks.
Successful foreground requests can be recorded as candidates for later cache
refresh without changing the final-state cache key. When the catalog is full, a
recorded request enters only after its count, then recency, outranks the
lowest-ranked candidate.
Conventions#
Use one issue per planned change.
Keep the issue body as the complete design record while work is active.
Use this page for shipped status and release grouping.
Treat closed issues as historical design and discussion records.
No marketing in proposals. Each issue must justify itself in its own problem statement.