feat(acceptance): validate the public entry points against live infrastructure - #34
Merged
Merged
Conversation
AlexMikhalev
force-pushed
the
feat/public-release-acceptance
branch
2 times, most recently
from
September 27, 2026 11:36
741d0fd to
caa7791
Compare
…structure
Adds the repeatable acceptance run and records what the family publish proved.
scripts/acceptance-public-release.py is read-only and reports pass, fail or
not-executed per entry point, so an environment limitation is never counted as
success. It runs the documented installer against a scratch directory and
checks the installed binary reports the channel version, verifies every
advertised archive against the manifest size and SHA-256, resolves the
Homebrew formula, and reports the crates.io versions a cargo install would
serve.
The plans under docs/plans/ gain the measured result of the family publish.
A dry run of the full client crate family on main (run 36314289075) reaches
terraphim_config 1.20.4 and fails to compile:
unresolved import terraphim_automata::parse_markdown_directives_dir
the item is gated behind the `fs-traversal` feature
crates.io's terraphim_automata is 1.21.1, which gates that symbol, while
crates.io's terraphim_config is 1.20.4, which does not enable the feature, and
the client crates require config 1.20.2. No client crate is publishable until
that is repaired, and the repair lives in terraphim-core and
terraphim-config-persistence, not here.
Run 36314289075 also confirmed that publish-crates.yml refuses terraphim_agent
before mutating any manifest (#95), and that terraphim_update 1.20.2 and
terraphim_command_runtime 0.1.0 already exist on crates.io.
Verified: acceptance script compiles; record manifest check passes (3 binaries
at 1.21.16, 20 archives byte-verified); the failing dry run is cited by id.
AlexMikhalev
force-pushed
the
feat/public-release-acceptance
branch
from
September 27, 2026 13:12
caa7791 to
ea6d880
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Purpose
Adds a repeatable acceptance run for the public release entry points, and
records what an attempt to publish the dependency family actually proved.
scripts/acceptance-public-release.pyRead-only, and reports
pass,failornot-executedper entry point, so anenvironment limitation is never counted as success. Checks:
binary must report the channel version and the run must report checksum
verification
cargo installwould serveExit codes:
0all executed checks passed,1a check failed,2theinstaller check failed,
3nothing was reachable.Current live result:
The installer check reports
not-executedrather than a false pass untilterraphim/terraphim-ai#964 is merged, because the published script is still the
pre-fix one. The Homebrew check reports the same on a host without
brew.What the family publish proved
Publishing the dependency family was attempted against live infrastructure. A
dry run of the full client family on
main(run 36314289075)
reaches
terraphim_config 1.20.4and fails to compile:The chain, verified end to end:
cargo installon a client crate resolves against crates.ioterraphim_configandterraphim_persistenceat 1.20.4,while the client crates require 1.20.2 (pinned exactly, because 1.20.4 is
yanked on the Gitea registry)
terraphim_automatais 1.21.1, which gatesparse_markdown_directives_dirbehindfs-traversal, a featureterraphim_config1.20.4 does not enableterraphim_config1.20.4 fails, so no client crate ispublishable
This is the failure the
[patch.crates-io]block already documents, reachedthrough the publish pipeline itself. The repair lives in
terraphim-coreandterraphim-config-persistence, not here.The same run confirmed two smaller facts:
publish-crates.ymlrefusesterraphim_agentbefore mutating any manifest (#95), as designed; andterraphim_update1.20.2 andterraphim_command_runtime0.1.0 already exist oncrates.io, so they are no-ops in a future
crate_list.Contents
scripts/acceptance-public-release.py(new)docs/plans/— the research and design documents for the public-releaseitems, including the addendum recording the above
Testing
python3 scripts/acceptance-public-release.pyruns against live infrastructure;the run above is its actual output. The script is also exercised with
--skip-installerand--skip-crates.