[F48] mark out-of-scope: internal usage only, no crates.io publish

Maintainer confirmed 2026-05-06 the project is internal-use only —
workspace stays at version "0.0.0", consumers depend via path or
git, not crates.io. F48's actual publish goal is dropped.

design/followups.md F48 entry: replace the "P1 release driver"
framing with "Out of scope" + a pointer to the recipe doc in case
this ever changes.

design/F48-publish-dry-run.md: add a banner at the top explaining
the doc is now retained as a workspace-hygiene record (cargo
package --list per crate produces clean tarballs, no captures or
big files), not as release prep. The "What the actual V1 publish
needs" section reframed as "If a publish ever does become a goal —
recipe" so the steps survive without implying they're scheduled.

No code change. F49 / F53 / F55 / F56 status unchanged — those
weren't release-cut-gated.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Joseph Doherty
2026-05-06 13:13:24 -04:00
parent e77db4306a
commit b62ffc8c5d
2 changed files with 7 additions and 21 deletions
+2 -18
View File
@@ -7,25 +7,9 @@ move to `## Resolved` with a date + commit hash.
## Open
### F48 — Execute `cargo publish` for the V1 release cut
**Dry-run status (2026-05-06):** `cargo publish --dry-run` validation pass per `design/F48-publish-dry-run.md`. Tier 1 leaves (`mxaccess-codec`, `mxaccess-rpc`, `mxaccess-asb-nettcp`) dry-run cleanly. Tiers 2 + 3 surface the documented "no matching package" registry-lookup failure for unpublished workspace internal deps — expected, resolves at actual publish time. All 9 crates' `cargo package --list` outputs are clean (no captures, no big files; only source + tests + tiny round-trip fixtures). The actual publish to crates.io has not happened — that's the maintainer-driven V1 cut step.
**Status:** **Out of scope — internal usage only, no crates.io publish planned.** Confirmed 2026-05-06 by maintainer. The workspace stays at `version = "0.0.0"` indefinitely; consumers depend via path or git, not crates.io. F43's dry-run validation (`design/F48-publish-dry-run.md`) is retained as a workspace-hygiene check (each crate's `cargo package --list` produces a clean tarball, no accidental captures/big files), not as release prep.
**Severity:** P1 — V1 release driver. F43 only validated dry-run for the leaf crates; the actual publish to crates.io has not happened.
**Source:** `design/60-roadmap.md:100` (M6 DoD bullet 6 — "Release: cargo publish all crates"); `CHANGELOG.md` "Publish order" section.
**Depends on:** F43 (dry-run validation), F49 (live verification of M6 features before publishing them).
**Scope.** Publish all 9 workspace crates to crates.io in dependency order:
1. `mxaccess-codec`, 2. `mxaccess-rpc`, 3. `mxaccess-asb-nettcp` (leaves — no internal deps)
4. `mxaccess-galaxy`, 5. `mxaccess-callback`, 6. `mxaccess-asb` (single-internal-dep tier)
7. `mxaccess-nmx`, 8. `mxaccess`, 9. `mxaccess-compat` (multi-internal-dep tier)
Between each publish: wait for the crate to be indexed before the next one's `cargo publish` runs (the registry-lookup race that broke the dependent dry-runs in F43).
**Definition of done:**
1. All 9 crates exist on crates.io at the same workspace version (likely 0.1.0 — bump from the 0.0.0 placeholder before the cut).
2. `cargo install mxaccess` resolves a clean dependency tree from a fresh registry lookup (no `--locked` workaround).
3. Tag the V1 release commit (`git tag v0.1.0`) and push the tag so the CHANGELOG anchors to a stable ref.
**Resolves when:** crates.io shows all 9 crates published + the V1 tag is pushed.
If this changes (e.g. internal consumer wants registry-style versioning via a private cargo registry), the V1 publish recipe in `design/F48-publish-dry-run.md` describes the steps. For now: no work needed.
### F50 — Run the F46 Suspend/Activate Frida capture live
**Severity:** P3 — residual from F46 (script ready, capture not yet run).