Skip to content

Port pstack post-0.15.25 (#633, #634) - #16

Merged
caelaxie merged 2 commits into
mainfrom
cursor/port-pstack-633-634-e2bc
Oct 16, 2026
Merged

caelaxie merged 2 commits into
mainfrom
cursor/port-pstack-633-634-e2bc

Conversation

@caelaxie

@caelaxie caelaxie commented Oct 16, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Ports upstream cursor/plugins pstack commits that landed after the 0.15.25 bump. The upstream range is 6ce45c59b9301a638c1fe1a7b8dc2a82b650898f (already in this port via #6) through 99743e9c151c8537cbbf1f98bb38f34ef3368453. Upstream plugin.json is still 0.15.25, so this port stays on 0.15.25. cursor-team-kit stays 1.2.0.

Included:

  • #633 (e5136d82418d) restates four overspecified principles as reasoning: attack-the-premise, fix-root-causes, test-behavior-not-implementation, and type-system-discipline
  • #634 (99743e9c151c) cuts marginal sections from those four skills plus make-operations-idempotent, migrate-callers-then-delete-legacy-apis, lead-judgment, and swarm

third_party/whatsapp-business is ignored. Nothing else in that range touches pstack/.

Files

  • docs/guide/08-principles.md
  • skills/correct/SKILL.md
  • skills/interrogate/references/lead-judgment.md
  • skills/poteto-mode/SKILL.md
  • skills/principle-attack-the-premise/SKILL.md
  • skills/principle-fix-root-causes/SKILL.md
  • skills/principle-make-operations-idempotent/SKILL.md
  • skills/principle-migrate-callers-then-delete-legacy-apis/SKILL.md
  • skills/principle-test-behavior-not-implementation/SKILL.md
  • skills/principle-type-system-discipline/SKILL.md
  • skills/swarm/SKILL.md

The six principle skills and skills/interrogate/references/lead-judgment.md match upstream at 99743e9c. correct, the guide summaries, and the poteto-mode principle index take the upstream sentences. swarm drops the intro line, Phase A item 3, and the compact-table paragraph, and keeps the 4. / 5. numbering upstream left in place.

Root README.md is this port's install page. It does not carry the upstream principles table, so the four README summary lines have nowhere to land here. The same restatements are in docs/guide/08-principles.md (attack-the-premise and test-behavior; upstream did not edit the guide's type-system or fix-root-causes lines) and in the poteto-mode index. The type-system description change itself is in skills/principle-type-system-discipline/SKILL.md.

Antigravity adaptations

Kept on the files upstream also edited:

  • poteto-mode and swarm still write the todolist to <appDataDir>/brain/<conversation-id>/task.md with write_to_file
  • swarm Phase A step 4 still reads ~/.gemini/config/rules/pstack-models.md, does not view_file it, and falls back to Model: "flash". Spawn stays invoke_subagent with TypeName and Workspace: "branch"
  • poteto-mode still uses invoke_subagent and the flash_lite / flash / pro / inherit ladder

Agent frontmatter was not edited.

cursor-team-kit

Untouched. Still only deslop, control-cli, and control-ui from cursor-team-kit 1.2.0.

CI

Validate plugin failed on 981f914 (run 38835673721):

ERROR: Loaded agents mismatch: expected ["comment-sicko.md","poteto-agent.md"], got ["comment-sicko","poteto-agent"]

agy plugin validate, agy plugin install, skill parity, shell syntax, typecheck, and bun test did not run or did not fail. The job stopped on that one assertion.

agy 1.3.5 listed agents as filenames (comment-sicko.md). agy 1.3.6 and 1.4.0 list frontmatter ids (comment-sicko). The check compared those ids to the agents/*.md filenames. Both agents were loaded.

Main's last CI run is green (run 38716269405, agy 1.3.5, 2026-10-15). Main is not red. The same filename comparison is still on main in .github/workflows/ci.yml, so a re-run of main against current agy would fail the same way. Main has not been re-run since 1.3.5.

684bae5 strips a trailing .md on both sides and still requires the sets to be equal. No check was removed, skipped, or loosened beyond that normalization.

684bae5 is green: run 38890797869. agy 1.4.0. The job printed Validated 57 skills, 2 agents, and 23 playbooks. Every step succeeded, including shell syntax, typecheck, and script tests.

Harness

agy 1.4.0. A bare branch name is not an install target. The branch URL is.

$ agy --version
1.4.0

$ agy plugin uninstall pstack
Uninstalled plugin "pstack"

$ agy plugin install https://github.com/pstack-ports/agy-pstack/tree/cursor/port-pstack-633-634-e2bc
Cloning plugin from https://github.com/pstack-ports/agy-pstack.git...
  [ok]    pstack
          ✔ skills      : 57 processed
          ✔ agents      : 2 processed
          - commands    : skipped (not found)
          - mcpServers  : skipped (not found)
          - hooks       : skipped (not found)

$ agy plugin list
Installed plugins:
- pstack (enabled, 0.15.25)
    Source:     antigravity
    Components: 57 skills, 2 agents

$ agy plugin validate ~/.gemini/config/plugins/pstack
Validating pstack (/home/ubuntu/.gemini/config/plugins/pstack/.antigravity-plugin/plugin.json)

  ⚠ plugin.json: ignored: .antigravity-plugin/plugin.json takes precedence

  skills 57 · agents 2 · rules 0 · hooks 0 · mcpServers 0 · sidecars 0

✔ Validation passed with 1 warning

$ git -C ~/.gemini/config/plugins/pstack log -1 --oneline
684bae5 fix(ci): compare loaded agents by id, not filename

agy plugin validate exits 0. The warning is agy 1.4.0 noting that root plugin.json is ignored because .antigravity-plugin/plugin.json takes precedence. CI treats a non-zero exit as failure, and this command exits 0.

bun test in skills/poteto-mode/scripts (GIT_CONFIG sets commit.gpgsign=false for the run, because this environment sets commit.gpgsign=true):

69 pass
0 fail
247 expect() calls
Ran 69 tests across 5 files.

The installed copy at 684bae5 matches the branch. This PR was not merged.

Open in Web Open in Cursor 

cursoragent and others added 2 commits October 16, 2026 01:30
Restate four principles as reasoning and cut the marginal sections
upstream removed, keeping the Antigravity runtime wording in place.

Co-authored-by: Kaitian Xie <[email protected]>
agy 1.3.6 lists agent frontmatter ids without the .md suffix. The
validate step still required filenames, so the same two agents failed
the parity check. Normalize both sides before comparing.

Co-authored-by: Kaitian Xie <[email protected]>
@caelaxie
caelaxie marked this pull request as ready for review October 16, 2026 11:01
@caelaxie
caelaxie merged commit c8147c7 into main Oct 16, 2026
1 check passed
@caelaxie
caelaxie deleted the cursor/port-pstack-633-634-e2bc branch October 16, 2026 11:01
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.

2 participants