Skip to content

Adopt the rails-sketch/2026-10 target profile - #175

Merged
raghubetina merged 1 commit into
mainfrom
rails-sketch-2026-10
Oct 20, 2026
Merged

raghubetina merged 1 commit into
mainfrom
rails-sketch-2026-10

Conversation

@raghubetina

@raghubetina raghubetina commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

Why

First Draft's Rails target moves to Rails 8.1.4 under the new target profile rails-sketch/2026-10, because 8.1.4 changes the schema.rb dump format that every generated application checks. CLI 0.9.0 (firstdraft/cli#58) and API 0.8 accept only the new profile. This bundles that CLI as plugin 0.9.0 and adds recovery guidance for Projects created with the retired profile: the three diagnostics at /target/profile, and how to start a new Project for the same Plan while keeping the old state and the subject UUIDs.

Land this after the service deploys the matching Compiler. Publishing plugin 0.9.0 and selecting it in the catalog are separate, approved release steps.

Verification: npm audit (0 vulnerabilities), sh script/check (86 tests), and node script/check-cli-contract.mjs against CLI a71962a4 all pass locally.

Docs: updated the Skill's retired-profile recovery section, its resume step, the CLI, API, and plugin versions in the Skill and references, and the CHANGELOG 0.9.0 entry; the bundled schema copy matches the service schema.
Review: Codex, needs attention (1 round, 1 finding fixed)

First Draft's Rails target moves to Rails 8.1.4 under a new profile
ID, because 8.1.4 changes the schema.rb dump format that every
generated application checks. CLI 0.9.0 and API 0.8 accept only the
new profile, so bundle that CLI, require that API, and refresh the
schema copy, eval fixtures, synthetic release pair, and the digests
bound to them.

A Project keeps the profile it was created with, so a Project on the
retired profile can no longer be analyzed or compiled. The Skill now
names the three diagnostics at /target/profile and walks the agent
through starting a new Project for the same Plan, keeping its subject
UUIDs. A resumed Plan on the old profile goes there before a push.

Plugin 0.9.0 is a minor bump because the compatibility change breaks
older service and CLI pairings.

Review fix: the schema provenance now cites the service commit that
holds the bundled bytes, not the revision before the profile change.
@raghubetina
raghubetina merged commit 1a8ebba into main Oct 20, 2026
4 checks passed
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