Repository navigation
Port upstream pstack 0.15.36 - #50
Conversation
Sync cursor/plugins pstack from e73df47 (0.15.32, #807) through c742dd6 (0.15.36, #1043): the statechart compiler, qualified action names, the SIGKILL reap test, and the 0.15.35 skill updates, then the agentic orchestrate playbook. Co-authored-by: Kaitian Xie <caelaxie@users.noreply.github.com>
caelaxie
left a comment
There was a problem hiding this comment.
verdict: changes requested (comment review, same account as author).
checked at 241be31 against upstream c742dd6: all 406 added skills/statechart/ files byte-identical, the 7 files the body calls identical are identical, all 33 removals are gone upstream too. no new .cursor/cursor-team-kit mentions, the old ones are dropped, deslop/control-cli/control-ui untouched. versions 0.15.36 in both manifests, readme pin right. ci Validate plugin green. harness proof (validate + install on the branch + list at the exact head + installed statechart cli on counter) is accepted under the auth-blocked precedent.
two divergences block the merge, both in new text:
skills/poteto-mode/playbooks/orchestrate.mdline 5 rewrites more than agy needs and leaves one cursor-only concept in place.skills/interrogate/SKILL.mdline 17 adds sentences agy doesn't strictly need.
fix those and push. no new harness run needed for text-only changes, just a fresh agy plugin install + agy plugin list at the new head.
| **You run the program, never the code. Decide which agent does each piece of work, then check what each one produces.** For a standing project handed to one coordinator chat: multi-day, many stacked PRs, dozens to hundreds of subagents, few human turns. One task driven to a predicate is Autonomous run. One ambitious run that needs a bespoke workflow is figure-it-out. Work that one agent could finish inside the session's budget is not a program. | ||
|
|
||
| Ceremony must scale with the program. On cheap near-identical units, collapse it as each section directs. | ||
| Run it with your own tools. Spawn workers with `invoke_subagent`. Keep the program's state in the Project tracker (`notes.md`) and the Project store. Watch each PR with `schedule` or `/goal` when you need a wake-up. Call no scripts, run no polling loops, and never relay messages or status between agents. |
There was a problem hiding this comment.
two things on this line.
(a) upstream: Watch each PR with PR and CI event subscriptions when your harness has them. that's already conditional on the harness, so it works verbatim on agy. the swap to schedule or /goal adds a timer wake, which sits badly with run no polling loops in the next sentence. smallest fix: restore the upstream sentence.
(b) the Project tracker (\notes.md`) and the Project storeis cursor projects, which agy doesn't have.docs/guide/07-overnight.mdin this same pr already maps a cursor project to a dedicated coordinator thread. smallest fix keeps the shape, e.g.Keep the program's state in a tracker file (`notes.md`) in the coordinator's workspace.`
| ## Fan out | ||
|
|
||
| Package the diff or file contents with any surrounding context files the reviewers need to understand the code. | ||
| Run Phase A steps 3 and 4 and Phase B of the **arena** skill, with four changes. Read the `interrogate reviewers` line in `~/.gemini/config/rules/pstack-models.md` in place of `arena runners`. That file is an always-applied rule, already in context when present, so do not `read_file` or `view_file` it. Copy the scope's uncommitted changes into each worktree. Spawn each adversary with `TypeName: "self"` in `invoke_subagent`. `TypeName: "research"` is read-only and cannot run the repro. In place of the arena task and rationale, give each adversary the scope, the intent, and this brief: |
There was a problem hiding this comment.
upstream: Read the \interrogate reviewers` line in place of `arena runners`. ... Spawn each adversary as `generalPurpose`.`
only the spawn needs an agy mapping. the rules path and the always-applied rule ... do not read_file sentence are already in arena phase a step 3, which this step runs, and the research is read-only sentence is rationale, not instruction. smallest fix: keep the upstream text and change only the spawn to Spawn each adversary with \TypeName: "self"` in `invoke_subagent`.`
put the harness watch sentence back, map the project tracker to a coordinator workspace file, and keep the interrogate spawn as the only agy change. Co-authored-by: Kaitian Xie <caelaxie@users.noreply.github.com>
|
head cmp vs head blobs, both identical:
installed grep:
|
caelaxie
left a comment
There was a problem hiding this comment.
pass at 90a93e4: 241be31..head touches only orchestrate.md:5 and interrogate/SKILL.md:17, each upstream c742dd6 verbatim except invoke_subagent / TypeName: "self" and the tracker file in the coordinator's workspace (same mapping as 07-overnight on main).
ci Validate plugin green on the head sha, proof comment shows agy install + list at 0.15.36 with installed HEAD = 90a93e4 and deslop, control-cli, control-ui present.
summary
Ports upstream cursor/plugins pstack after
e73df471cd4bd918367e99f3dd9c51bd53ddf5f0(0.15.32, #807) throughc742dd61706fbacc1b95f1a20b7b988cf096ce6c(0.15.36, #1043).git log e73df471cd4bd918367e99f3dd9c51bd53ddf5f0..c742dd61706fbacc1b95f1a20b7b988cf096ce6c -- pstack/is the seven commits below, in the order they landed. The compare range also contains 36 commits that do not touchpstack/.ported
#97734b1b7c96f09f81a21a6c78f65b7833f7dcb5b24port the statechart compiler#9787c7bde7033df2a83a23294571ef12c51cf560217bump to 0.15.33#982740d2c0786246cafac41906198f656b135194d3bkeep qualified action names in property traces#983164ced10fa576ddf91e1f03b4fa9d1183c8272febump to 0.15.34#981519d36aa98955bf680db01bcde5fdfba686dc901wait for the reap in the statechart SIGKILL view test#986ab1f702ce8e8b6557edb56b09f52cde8bfb83f17port recent skill updates (0.15.35): poteto-mode, autopilot playbooks, interrogate, arena cross-judge, ketchup-video, principle-explain-the-number, orchestrate, README and guide#1043c742dd61706fbacc1b95f1a20b7b988cf096ce6cOrchestrate becomes agentic and the orch scripts are deleted (0.15.36)skills/statechart/matchesc742dd61706fbacc1b95f1a20b7b988cf096ce6cbyte for byte. So doskills/ketchup-video/SKILL.md,skills/create-formal-verification-skill/SKILL.md,skills/principle-explain-the-number/SKILL.md,skills/poteto-mode/scripts/package.json,skills/poteto-mode/playbooks/autopilot-stack.md, anddocs/guide/04-design.md.antigravity-only adaptations
0.15.36inplugin.jsonand.antigravity-plugin/plugin.json. Upstream bumpspstack/plugin.jsonandpstack/.cursor-plugin/plugin.json. This port has no.cursor-pluginmanifest. The agy manifest keeps its existing shape (logo,suggestedPrompts). Rootplugin.jsonkeeps the pstack-ports homepage and repository.0.15.36atc742dd61706fbacc1b95f1a20b7b988cf096ce6c.Modeltiers,invoke_subagent,~/.gemini/config/rules/pstack-models.md,TypeName: "research").setup-pstacksays the same thing about the cross-judge pool.generalPurposeisTypeName: "self"ininvoke_subagent, becauseTypeName: "research"is read-only and cannot run a repro. The reviewers line is read from~/.gemini/config/rules/pstack-models.md. The four reference files are deleted with upstream.skills/poteto-mode/scripts/orch/is deleted.Taskisinvoke_subagent.environment: "cloud"isWorkspace: "branch", and work that needs this machine usesWorkspace: "share". Wake-ups usescheduleor/goal. A follow-up that needs a worker's built state usessend_message. Model diversity is a different tier. Local transcripts stay under<appDataDir>/brain/./deslopas a pstack skill,schedule, installed plugin paths).bun installandbun run testinskills/statechart/scripts. The compiler tests are TypeScript, sonode --test skills/*/scripts/test/*.test.mjsno longer matches a file.skipped
harness/pstack/claude-code/copies of the same files. This repo does not ship that harness tree.e73df471cd4bd918367e99f3dd9c51bd53ddf5f0..c742dd61706fbacc1b95f1a20b7b988cf096ce6cthat do not touchpstack/(other plugins in the monorepo)..github/workflows/validate-plugins.ymlchecks generated harness trees. This repo's CI does not have that step, and there is no agy equivalent of the generated copy.limits
TLA2TOOLSis unset. This machine has no mise. The live Counter run below setsTLA2TOOLSto TLA+ v1.7.4.harness proof
Head
90a93e4f023dbac80f67ca7b56aaea7c9be84e8a.agy1.4.8, installed from the antigravity CLI installer (manifest.versionis1.4.8). Commands ran against this branch with a cleanHOME.The repo checker printed
Validated 61 skills, 2 agents, and 23 playbooks.agy plugin list --jsonincludespoteto-mode,arena,interrogate,ketchup-video, andstatechart. Orchestrate is a playbook, not a skill. The installed copies of those five skills,skills/poteto-mode/playbooks/orchestrate.md,skills/statechart/scripts/statechart, andplugin.jsonmatch this commit.The installed statechart CLI on the Counter corpus (TLA+ v1.7.4,
tla2tools.jar, Java 21,TLA2TOOLSset) exits 0.chart.mmdmatches the committed corpus chart:With
TLA2TOOLSunset and no mise onPATH, the same command exits 2 and printsCannot find TLC: mise install failed: spawn mise ENOENT.The print turn stops at Google OAuth. This environment is not signed in, so poteto-mode, arena, interrogate, orchestrate, and ketchup-video do not get a live model turn. Their installed files match this commit, and the scripted checks below ran.
The 67 statechart skips are the TLC cases.
TLA2TOOLSwas unset for that run. Poteto-mode is 62 tests because the orch suite is gone with the scripts.CI on this PR passed: run 40617127144, head
241be3116ec0f12df73fe1ba3bab07ff0feffda4. Validate plugin succeeded, including the statechartbun run teststep.Current main (
552187e7c3dd799419c6e14a065351ce81dd60ec, 0.15.32) also validates, installs, and lists on agy 1.4.8 (61 skills, 2 agents). No separate release-check PR.