feat(trails): promote release smoke checks#715
Conversation
How to use the Graphite Merge QueueAdd either label to this PR to merge it via the merge queue:
You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has enabled the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. This stack of pull requests is managed by Graphite. Learn more about stacking. |
There was a problem hiding this comment.
Your free trial has ended. If you'd like to continue receiving code reviews, you can add a payment method here.
Merge activity
|
## Context Part of the Release Rules M3 follow-through for TRL-939. This branch makes release smoke checks package-owned and surfaced through Trails instead of living as repo-only scripts. ## What Changed - Added `release.smoke` as a public trail surfaced through CLI and MCP. - Added `trails release smoke --check wayfinder-dogfood` and `--check packed-artifacts`. - Moved packed-artifact and Wayfinder dogfood smoke logic into `@ontrails/trails/release`. - Removed stale root and app script wrappers for those smoke checks. - Updated docs, agent guidance, and package scripts to use the new release smoke surface. - Added a branch-local changeset for `@ontrails/trails`. ## Verification - Focused release smoke and MCP tests passed. - `bun apps/trails/bin/trails.ts release smoke --check wayfinder-dogfood` - `bun run wayfinder:dogfood` - `bun run dogfood:packed` - `bun run check` - `bun run test` - `bun run build` - `bun run publish:check` - `gt submit --stack --draft --restack --no-edit --no-interactive --dry-run` - Real Graphite submit pre-push passed: dead-code, format, lint, ast-grep, test, typecheck, Warden. The old `gate` wording was intentionally cut over to `check` during local review.
3eb63f4 to
fd676c4
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 93f9596586
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| const releaseSmokeCheckSchema = z.enum(releaseSmokeCheckValues); | ||
|
|
||
| const releaseSmokeInputSchema = z.object({ | ||
| check: z.string().default('all').describe('Release smoke check to run'), |
There was a problem hiding this comment.
Constrain release.smoke check input
For the newly public release.smoke CLI/MCP surface, this schema advertises check as an arbitrary string even though the blaze immediately validates it against the enum declared above. That makes generated clients and CLI help unable to discover the only valid values (all, packed-artifacts, wayfinder-dogfood), and invalid values are only rejected after execution starts rather than by the contract. Use the enum schema here (with the same default) so the public surface contract matches the runtime behavior.
Useful? React with 👍 / 👎.
93f9596 to
0ccb3e5
Compare

Context
Part of the Release Rules M3 follow-through for TRL-939.
This branch makes release smoke checks package-owned and surfaced through Trails instead of living as repo-only scripts.
What Changed
release.smokeas a public trail surfaced through CLI and MCP.trails release smoke --check wayfinder-dogfoodand--check packed-artifacts.@ontrails/trails/release.@ontrails/trails.Verification
bun apps/trails/bin/trails.ts release smoke --check wayfinder-dogfoodbun run wayfinder:dogfoodbun run dogfood:packedbun run checkbun run testbun run buildbun run publish:checkgt submit --stack --draft --restack --no-edit --no-interactive --dry-runThe old
gatewording was intentionally cut over tocheckduring local review.