Skip to content

sync: upstream pstack 4ec7ffa, plus fixes from forks and upstream PRs - #25

Merged
AlexNegrescu26 merged 14 commits into
mainfrom
fix/sync-4ec7ffa-fork-pr-adoption
Oct 22, 2026
Merged

AlexNegrescu26 merged 14 commits into
mainfrom
fix/sync-4ec7ffa-fork-pr-adoption

Conversation

@AlexNegrescu26

Copy link
Copy Markdown
Collaborator

Why

upstream-sync has failed daily since 2026-10-16, the port still carried several defects that fork authors and upstream PR authors had already found, and two port claims were wrong on omp 18.12.6. This PR supersedes #23 and #24 (raphaelnz) and takes #20's rules (sametaln), rebuilt rather than copied.

What changed

  • Sync: raphaelnz's 0.15.30 sync and removal of plugins/pstack/plugin.json, then a rebuild at upstream 4ec7ffa (59 skills, 23 playbooks, 24 principles). Upstream setup step 8 (formal-verification offer) ported into the owned setup-pstack.
  • worktree-audit (deLiseLINO and ubranch forks, upstream #770): worktree-audit-omp.patch rewritten.
    • Fixes a clean worktree with an open PR being bucketed safe (the patch had turned */open|*/draft into *OPEN* while jq lowercases the state).
    • Row printf printed 9 values under an 11-column header.
    • Session bucket encoding now follows omp (temp root before home, explicit session dir has no cwd bucket, profile/XDG roots), and scans only this repo's buckets.
    • Probes GNU vs BSD stat/date, drops the rg dependency, writes no scratch file in the repo.
    • Holds worktrees with untracked or ignored files, adds hold-unpushed, and a failed session lookup lands in verify-recent-chat.
    • New offline omp-port/test-worktree-audit.sh, run by the gate.
  • Rules and gate: 47 rules cherry-picked from deLiseLINO. generalPurpose, backticked Task, Cursor transcript layout, /add-plugin and Option+Enter prose are gone from shipped skills, and the gate fails if any returns. /deslop no longer recommends omp cleanse --all (which edits files repo-wide); the gate rejects it (Keep precommit diagnostics non-mutating and diff-scoped #20). The skills no longer claim a hub tool (absent on omp 18.12.6); the gate fails any such claim. The gate's mutation harness now requires each mutation's own check to report FAIL. guide claims covers the skills, playbooks and check-plan.mjs named in guide Pt. 1 and 2.
  • Extension and CI: /poteto-mode pin state reloads on session_start, session_switch, session_branch, session_tree (it went stale across /new, /fork, /resume). New omp-port/smoke-plugin.mjs starts real omp with no inference and asserts all skills register; new smoke CI job runs it on omp v18.12.6 pinned by SHA-256.
  • Upstream PR fixes as patches (zzz-watch-pr-fixes, zzzz-check-plan-fix, zzzz-orch-lock-takeover): #746 (#664, #666, #684), #769, the check-plan half of #745, and #733 with a hardened takeover marker.

Scope / not done

  • Skipped cryptofish7's nine modelRoles agents (needs a rebuild, and its patch is prose), dsebban's fable-deslop (needs RepoPrompt CE), and anything from dsebban/skills.
  • #769 and upstream #592 both add a line after allowDraft in policy.ts; if #592 merges first the #769 patch stops applying on the next sync. The patch header says so.
  • #733's takeover: a process paused over 10 s in the middle of its own takeover can still collide.
  • worktree-audit BSD behaviour was tested with stub stat/date on Linux only.
  • A session whose cwd is outside every worktree of the repo is not seen by the audit (bounded scan).

Blast radius

Every marketplace install gets the rebuilt skills, three new skills (statechart, two formal-verification), and the extension change on upgrade. plugin.json is no longer shipped, so omp's omp-plugins provider loads all skills.

Verification

  • bash omp-port/check-port.sh: check-port: PASS (reproducible, worktree audit, guide claims, rule staleness all PASS).
  • bash omp-port/test-gate-mutations.sh: PASS, 15 mutations each rejected by its own check.
  • bun omp-port/smoke-plugin.mjs on omp 18.12.6: PASS, 59/59 skills, /poteto-mode on/off recorded, pin reloaded on new_session. Fails on the old index.js and on upstream's real plugin.json.
  • Extension tests 15 pass; poteto-mode script tests 92 pass; tsc --strict clean.
  • Defects reproduced before fixing: old worktree test fails on every row and shows each defect separately; #664 hung, #666 slept past the deadline, #684 threw, #769 retried through backoff, #730 gave 2-3 lock holders in 8 of 15 rounds, now 0 of 25.
  • Per-call model on a task item: the live tool rejects it for every agent except seance ("model is only accepted for the seance agent"), so the gate's no-per-call-model rule stands.

raphaelnz and others added 14 commits October 23, 2026 00:47
Remove the obsolete Make Bot UI patch hunk and Poteto Mode name rule because upstream now uses directory slugs.

Refresh rules.sed for current runner defaults, reviewer fallbacks, and shipping verdicts. Translate the three new skill commands, including description triggers, and replace the help paragraph for another harness with omp installation guidance.

Remove six stale-exempt.tsv entries for refreshed rules. Exempt the two Swarm sentences that upstream deleted, retaining their translations if those sentences return.

Update both README skill counts to 59 total and 56 generated skills for this build.
With plugin.json at the plugin root, omp's agent-plugins provider claims
the package. That provider checks skill frontmatter against a closed field
set and skips every skill that has disable-model-invocation, icon, color,
or globs. On omp 18.12.2 it skips 54 of the 56 skills, so
skill://poteto-mode and /skill:how are unknown.

The build no longer extracts pstack/plugin.json, and the plugin manifest
check now fails when the file is present.
@AlexNegrescu26
AlexNegrescu26 merged commit 69466b7 into main Oct 22, 2026
2 checks passed
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