Repository navigation
2.0.0-rc.12: Lauren's 6b78e9f, setup offers a formal verification skill, with TLA+ as its default for event order - #32
Merged
Merged
Conversation
All three components move from 0148b78 to f9be7aa. Upstream changed only pstack (#715). setup-pstack gains step 8, which offers once to generate a formal verification skill with /create-formal-verification-skill, worded like step 7's verification offer. poteto-help gains a state check for a missing formal verification skill, says setup step 2 makes both offers, and splits its "pstack is built for Cursor" paragraph in two: a Claude Code install through Lauren's marketplace and adapter, then what other tools can read. recipes.md gains a formal verification recipe and a /ketchup recipe. The poteto-help rule in tools/substitutions.json now matches the two new paragraphs. Its replacement keeps the T3 sentence about delegate_task as the second paragraph and makes the first say t3-pstack installs in Claude Code and Codex with npx -y github:chhoumann/t3-pstack install. The port's copy took the new replacement text before the sync, so the three-way merge saw the same change on both sides. --bootstrap was not used, since it keeps a declared fork as the port's copy and setup-pstack would have missed step 8. bun tools/sync.mjs merged setup-pstack, a declared fork, cleanly and updated poteto-help and recipes.md. The other 14 forks were left alone, and cursor-team-kit and thermos synced with no file changes.
VERSION, the manifests, and package.json move to 2.0.0-rc.12. CHANGES.md gets the entry with its behavior-delta table. NOTICE.md, NOTICE-skills.md, and the README point at upstream f9be7aa, and the README's pinned installer command names the new tag. The skill count stays 63.
All three components move from f9be7aa to 6b78e9f. Upstream changed only pstack. create-formal-verification-skill rewrites one paragraph in "Let the question choose the tool": TLA+ is now the default for whether events can happen in a bad order, in any language, and the sentence "For concurrent and distributed designs, TLA+ is often the most useful place to start." is gone. When no verifier runs on the language, the agent says so and tests the real code with generated inputs, not a hand model of the function (pstack #721). #717 and #720 touch only third_party/ plugins, and upstream's copy under harness/pstack/claude-code/ follows #721. All of these sit outside every synced component. bun tools/sync.mjs updated create-formal-verification-skill cleanly. The port's copy matched upstream byte for byte, and no substitution or fork touches the skill. The 15 declared forks were left alone, and cursor-team-kit and thermos synced with no file changes.
rc.12 now syncs to upstream 6b78e9f instead of f9be7aa. NOTICE.md, NOTICE-skills.md, poteto-mode's copy of the notice, and the README name the new pin. The CHANGES.md entry's heading and text name 6b78e9f, add #721's create-formal-verification-skill change, and gain a behavior-delta row for it. VERSION and the manifests already read 2.0.0-rc.12, and the skill count stays 63.
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.
t3-pstack moves to Lauren Tan's pstack at cursor/plugins
6b78e9ffor all three components. Of the three, only pstack changed upstream, in two commits, and Lauren's version stays 0.15.27.From pstack #715:
setup-pstackgains step 8, an offer to generate a formal verification skill, which mirrors step 7's verification offer.poteto-helpgains a state check for a missing formal verification skill, and its setup step 2 now names both offers. Lauren also rewrote its "pstack is built for Cursor" paragraph into two: a Claude Code install through her marketplace and adapter, then what other tools can read.poteto-help/references/recipes.mdgains a formal verification recipe and a/ketchuprecipe.From pstack #721:
create-formal-verification-skillrewrites one paragraph, "Let the question choose the tool". TLA+ becomes the default for whether events can happen in a bad order, in any language, and the sentence "For concurrent and distributed designs, TLA+ is often the most useful place to start." is gone. When no verifier runs on the language, the agent says so and tests the real code with generated inputs, not a hand model of the function. The text names no harness, and no substitution or fork touches the skill.#715's guide pages under
docs/guide/, thethird_party/plugins that #717 and #720 change, and upstream's copies underharness/pstack/claude-code/sit outside every synced component.This PR changes a substitution and a forked file, so it waits for your call.
The substitution
Lauren's rewrite left the poteto-help rule in
tools/substitutions.jsonmatching nothing, and her two new paragraphs tripped the denylist (Cursor,/loop, Custom Modes at lines 46 and 48). The rule's pattern now covers both paragraphs. The replacement keeps our T3 sentence as the second paragraph and makes the first say where t3-pstack runs and how it installs, worded from the README. It points at neither Lauren'scursor/pluginsmarketplace nor her Claude Code adapter, since t3-pstack ships no adapter and rewrites the Cursor names in place.Old pattern:
Old replacement:
New pattern (Lauren's two paragraphs at
f9be7aa, unchanged at6b78e9f):New replacement:
The command is the untagged rolling installer, as in the README's first block, so the rule needs no edit per release. The rationale now reads "states where the port runs and how it installs (Precedence)".
The merged setup-pstack step
setup-pstackis a declared fork (port-feature, it writes the T3 model sheet).bun tools/sync.mjsmerged #715 into it cleanly, and step 8 follows our fork's steps 1 to 7:It names
/create-formal-verification-skillthe same way our step 7 names/create-verification-skill, and both generators carrydisable-model-invocation: true, so the two offers work the same way on T3. Lauren's own Claude Code copy words step 8 identically. The #721 sync left setup-pstack alone, so step 8 reads the same at6b78e9f.Commits
f9be7aa(#715), in one commit. The rule change and the sync can't land apart: the new pattern matches nothing at the old pin, and the old pattern matches nothing at the new one. With only the rule changed, the sync reads poteto-help as an undeclared fork, because the base,0148b78derived through the new rule, keeps Lauren's old Cursor paragraph. The port's copy took the new replacement text first, a plain swap of the old replacement for the new one, so the three-way merge saw the same change on both sides.--bootstrapwas not used. It keeps every declared fork as the port's copy, so setup-pstack would have missed step 8. The sync then updated poteto-help and recipes.md and merged setup-pstack. cursor-team-kit and thermos synced with no file changes.VERSIONand the manifests move to 2.0.0-rc.12. CHANGES gets the entry with its behavior-delta table. NOTICE, NOTICE-skills, and the README point atf9be7aa, and the README's pinned installer command names the new tag. The skill count stays 63.6b78e9f(#721).bun tools/sync.mjsupdatedcreate-formal-verification-skillcleanly. The port's copy matched upstream byte for byte, and no substitution or fork touches it. The 15 declared forks were left alone, and cursor-team-kit and thermos synced with no file changes.6b78e9f. The CHANGES entry's heading and text name6b78e9f, add #721, and gain a behavior-delta row for it.VERSIONand the manifests already read 2.0.0-rc.12.Checks
bun tools/sync.mjs <component> 6b78e9f --dry-runfor pstack, cursor-team-kit, and thermos at the new pin: exit 0, with no undeclared fork, no denylist hit, no unmatched substitution, and no conflict. pstack reads 119 unchanged files and the same 15 declared forks with 547 changed lines as rc.11.tools/forks.jsondeclares exactly those 15. setup-pstack keeps its 77 changed lines, and no other forked file differs fromorigin/main. cursor-team-kit reads 6 unchanged files and thermos 5.bun tools/generate.mjs --check: 17 generated files current, and the hooks freeze check passes.GIT_CONFIG_GLOBAL=/dev/null bun test tests/ --timeout 30000: 550 pass, 46 skip, 0 fail.bun run typecheck,bun test orch watch-pr check-plan.test.ts(119 pass), and the Prettier check all pass.t3-sheet.mjsagainst this machine's sheet and catalog: every role line parses and dispatches.markdownlint-cli2on the changed Markdown files: 0 errors.Not in this PR
Two lines in poteto-help come from older substitutions and read slightly off next to the new paragraph. They are left for a separate change:
$poteto-mode, while the README and CHANGES use$t3-pstack:<name>.Note
Low Risk
Mostly skill copy, upstream sync, and substitution rules; no runtime auth, data, or orchestration logic changes beyond optional setup prompts.
Overview
Release 2.0.0-rc.12 bumps the plugin and pins upstream
cursor/pluginstof9be7aa(pstack #715).Setup and help now surface formal verification alongside app verification:
/setup-pstackadds optional step 8 to offer/create-formal-verification-skillafter the existing verification offer. poteto-help checks for a missing formal verification skill (races, invariants, etc.), documents both setup offers in step 2, splits install guidance into annpx -y github:chhoumann/t3-pstack installparagraph plus the T3delegate_tasknote, and adds recipes for formal verification and/ketchup.Port tooling updates
tools/substitutions.jsonso Lauren’s two-paragraph “built for Cursor / Claude Code install” block maps to t3-pstack’s install command and T3 thread requirements instead of Cursor marketplace text. NOTICES, README, andtools/upstream.jsonreflect the new SHA; remaining changes are version strings and changelog.Reviewed by Cursor Bugbot for commit 2fa3648. Bugbot is set up for automated code reviews on this repo. Configure here.