You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
fix(pstack): renumber swarm's Phase A and fix its dangling table reference - #807
Replaces #751 by @mstephenholl. The two commits are the same, rebased onto current main, and Michael Holland is still their author. GitHub refused the push to the fork branch: the rebase brings in main's newer .github/workflows/validate-plugins.yml, and the app cannot update workflow files on a fork.
Problem
#634 cut Phase A item 3 and the Phase C result-table sentence from pstack/skills/swarm/SKILL.md, and left two dangling references:
Phase A reads 1, 2, 4, 5. Rendered Markdown shows the model step as 3, but Phase B says "the step 4 model".
Phase D says "the table", and nothing else in the file mentions a table.
Fix
Renumber Phase A to 1 to 4 and point Phase B at "the step 3 model".
…rence
#634 cut Phase A item 3 and left the list numbered 1, 2, 4, 5 so that
Phase B's "the step 4 model" kept pointing at the model step. Rendered
Markdown renumbers the list, so readers see the model step as 3 while
Phase B says 4. Number the list 1 to 4 and point Phase B at step 3.
#634 also cut the Phase C sentence that introduced the result table,
which left Phase D's "the table" with nothing to refer to. Phase D now
asks for "a result table".
The validate workflow runs generate-pstack-harness-trees.mjs with
--check, which fails while harness/pstack/claude-code/skills/swarm
still holds the old numbering. Regenerate it from the source skill.
Closes#34.
Upstream: cursor/plugins@9580c23696ac, which brings 13 pstack commits.
The daily sync stopped on one conflict and opened #34, so this is the
manual merge from `pstack/port/merge-upstream.py`, plus the ports that
#34 lists.
## What changes
- **Merge (`914da34`)**: `merge-upstream.py` resolved everything except
`poteto-mode/scripts/worktree-audit.sh`.
- Upstream cursor#805 fixed GNU vs. BSD `stat`/`date` with new `stat_fmt` and
`fmt_day` helpers. The port had fixed the same problem its own way (an
`mtime` array and a `date -r || date -d` fallback).
- The resolution keeps the port's transcript list, which also scans
Claude Code and Codex session logs, and takes upstream's helpers in
place of the port's own. The port's diff to this file is now only the
transcript list.
- **`feat(pstack): port ketchup-video` (`732c804`)**: upstream cursor#797's
new skill follows `ketchup` and ends with "the embedded video", which a
terminal can't show.
- It gets the `pstack-harness` pointer, its Codex policy file (it's
user-only), a `SKILLS` entry, and a README row.
- `pstack-harness` gets a Tools row: give an embedded image or video by
its absolute path.
- `check.py` requires that mapping for any skill that embeds a video.
- **`fix(pstack): keep reflect's edits out of the pstack clone and
plugin cache` (`76b5790`)**: upstream cursor#800 made `reflect` refuse to edit
a skill under `plugins/cache/`, because an update moves to a new folder
and drops the edit. The port has the same trap in two places:
- Claude Code installs upstream's plugin under
`~/.claude/plugins/cache/`, one folder per version.
- pstack's own skills link into the clone behind `~/.agents/pstack/`,
which `pstack update` moves to each new release.
`pstack-harness` now names both. It says to copy the skill to the
project or personal skill folder and edit the copy, unless the clone is
the repo being worked in. `check.py` requires that mapping.
- **Not ported**: #34 also flags two `swarm` lines. They're the lines
upstream cursor#807 renumbered (the fix from cursor#751), and every Cursor term in
them is already mapped.
## Risk
- The `worktree-audit.sh` change is the only hand-written code. On macOS
it now goes through upstream's BSD branch (`stat -f '%m %N'`, `date -r`)
in place of the port's. The `pstack macOS` workflow covers that after
merge.
- `statechart` changed a lot upstream (+7k/−2k lines). The port doesn't
modify it, and this repository's CI doesn't run its tests. On first run
it can now install TLC and Java with `mise`, about 305 MB. `TLA2TOOLS`
still takes precedence.
## Proof
- `check.py`: 0 problems, 0 warnings across 56 pstack skills, on each
commit.
- Removing either new harness mapping, or `ketchup-video`'s pointer,
makes `check.py` name the problem.
- Port unit tests: 257 pass. `install_test.sh` passes with 59 skills.
`test_worktree_audit.py` passes with both GNU and system tools.
- `poteto-mode` bun tests (`orch`, `watch-pr`, `check-plan`): 82 pass.
- `statechart` on Node 18.19.1: its test file can't load, because it
imports `zlib.crc32`, which only Node 20.15+ has. The skill's scripts
don't use it. A real `from-chart` run on upstream's `test/sync.mmd`
wrote the spec, ran TLC, and drew one bug path.
- `statechart`'s full suite: not run. Upstream cursor#977, which the next sync
brings in (cursor/plugins@519d36a), rewrites these scripts in TypeScript
and replaces this suite. The next sync's pull request runs the new
suite.
- Smoke test: after release. `smoke.py` runs the installed clone behind
`~/.agents/pstack`, not this branch, so it can't test this branch before
merge. After `pstack update`, run `smoke.py --only reflect,swarm`, the
scenarios for the changed skills.
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
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.
Replaces #751 by @mstephenholl. The two commits are the same, rebased onto current main, and Michael Holland is still their author. GitHub refused the push to the fork branch: the rebase brings in main's newer
.github/workflows/validate-plugins.yml, and the app cannot update workflow files on a fork.Problem
#634 cut Phase A item 3 and the Phase C result-table sentence from
pstack/skills/swarm/SKILL.md, and left two dangling references:Fix
harness/pstack/claude-code/skills/swarm/SKILL.md.Verification
node scripts/validate-plugins.mjs,node scripts/generate-pstack-harness-trees.mjs --check,node scripts/check-pstack-docs.mjs: pass.git diff --check: clean. Prose only, so no script tests apply.