Repository navigation
Describe the write-path, State Machine, and Scaffold output - #174
Merged
Merged
Conversation
raghubetina
force-pushed
the
batch-0817-skill-text
branch
from
October 13, 2026 04:58
ae8992a to
9edb0c0
Compare
The service's next Compiler keeps far more of an authored Plan, and the Skill's references still described the omissions it replaced, so an agent would warn users about losses that no longer happen and miss what it now has to write. The Plan reference, modeling guide, interview, and examples now say: - decimal, money, conditional presence and absence, and wider and conditional uniqueness Validations lower, and a rule that cannot is an empty validate method behind a failing enforces example; - seeds keep every record no rule is proven to reject and warn on a record that breaks its own rule; reference data seeds everywhere; - several State Machines on an Entity are namespaced AASM machines, and an optional machine gets stubbed events and an empty callback; - a failing Scaffold piece drops only itself, Account inputs no Policy decides use exact email lookup, descriptors may be optional with a Model #id label, and reserved Policy rules and scope keys are renamed with a warning; - cascade and nullify get the conventional inverse, inverses over immutable References are plain Rails, and Counter and defaulted Reference storage stays; - rich_text is stored as text, Trees import, cardinality is skipped as one key, and canonical-form lints warn. The sample-data eval now expects its no-self-follow sample follows to be seeded. The version moves to 0.8.17, with its CHANGELOG entry; the release records the package digest.
raghubetina
force-pushed
the
batch-0817-skill-text
branch
from
October 13, 2026 05:13
9edb0c0 to
b821581
Compare
raghubetina
marked this pull request as ready for review
October 13, 2026 05:24
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.
Why
The service's next Compiler keeps far more of an authored Plan, and the Skill's references still described the omissions it replaced. An agent would tell users about losses that no longer happen, and would miss what it now has to write. This updates the packaged Skill text for plugin 0.8.17.
All described service PRs are merged (service main f426a55c). The text for #1165 and #1166 follows their Domain agent's corrections: the immutable-key writer caveat covers only an optional immutable Reference without a cascade carrier, plus indirect collections over an optional immutable source; a Policy that reads an unmaintained Counter becomes a denying stub; a filtered count, or one whose example needs an unemitted Reference or breaks a conditional Validation, gets a Test coverage to complete entry; and every target of a one-to-one immutable polymorphic nullification still refuses its own deletion. #1169 (canonical-form lints warn) and #1170 (reserved scope rename) shipped as their bodies described; their final bodies and the merged
scopes.mdchanged only release identities, so the text needed no change.The changes:
validate :<key>with an empty method, listed under Behavior to write, plus a failingenforces <path>example wherever the Compiler can build a rejected record.foundation_plan.development_data.validation_violated) on a record that breaks its own rule. The read-back names warned records, not dropped ones.reference_datais seeded in every environment.leave_status!).aasmblock. They keep a nullable column, stubbed events, and an empty applicability callback behind a failing example.Model #idlabel.present_rule?).rich_textlowers likelong_text, Trees import, andcardinalityis skipped as one key.public_scaffoldwarning line is gone.ActiveRecord::InvalidForeignKey.Two discrepancies, recorded rather than fixed:
derivationpruned, so the text doesn't claim derivation imports.associations.mdstill says a standalone create that needs a required multi-target Reference is omitted.scaffold_lowering.rb#disclose_incomplete_createsgenerates it withscaffold.route.partially_generated, which the Skill now follows.The sample-data eval now expects its no-self-follow sample follows to be seeded.
Two eval fixtures still encode older analyses: the optional-descriptor error in
correct-source-issue-alongside-capability-gap, andrich_textas a service gap inunsupported-field-capabilities. They are synthetic inputs and stay consistent with their own prompts, so I left them; a follow-up can refresh them.Release. The version moves to 0.8.17 (
sync-plugin-version.mjs+npm version).plugin_source.tarball_sha256is unchanged;script/release shiprecords it. Locally:sh script/check --cli-root, run with pinned CLI 92f27714 and an emptyGIT_TEMPLATE_DIR, passes.check-cli-contractandcheck-plugin-release-order --prospectivepass.Behavioral evals were not run.
Docs: updated
skills/create-full-stack-app/references/foundation-plan-023.md,modeling-guide.md,interview.md,examples.md,CHANGELOG.md, and the sample-data eval case.Review: Codex, approve (3 rounds, 3 findings fixed)