v3.0.1
Fixed
- CI never ran on PRs stacked against a non-main base.
.github/workflows/meta.yml'spull_requesttrigger was scoped tobranches: [main, master], which filters on the PR's base, not its source — so a PR opened against another feature branch got zero CI until manually retargeted. The filter is dropped; it now fires regardless of base branch. - pair-loop: a same-model reviewer approval could pass silently (#93). Independence was configured (a fallback model pin, vendor rotation) but never verified — a same-vendor fallback left unpinned, or a plain
coder == reviewermisconfiguration, could approve a change on the exact model that wrote it.reviewnow resolves the coder's and the reviewer's session transcripts to the model each actually ran and refuses anAPPROVEDverdict when they match, adding aprocessfinding and surfacing it in the PR summary. Still best-effort — it needs both session_ids to resolve, which isn't guaranteed (no session lookup for Cursor yet).
Changed
- Cursor's always-on context footprint cut 61% (~52K → ~20K chars). Re-tiered 9 modules —
release,pair-loop,pr,fix-bugs,lint,orchestrate,spec,grill-me,update-claude-md— fromcoretoon-demand.tieronly drives Cursor'salwaysApplymapping; this has no effect on Claude Code, Codex, or slash-command availability, and no content changed. Keptcore:commit,push,gate(the enforcement trio), andbranch. - Refreshed stale Claude model version strings (Sonnet 4.6 → Sonnet 5, Opus 4.8 → Opus 5) across
adapters/lib/modules.py'sMODEL_ALIASES, thecommit/releaseskill Co-Authored-By trailers, and docs.
Install / upgrade:
# New install
bash -c "$(curl -fsSL https://raw.githubusercontent.com/rajitsaha/100xprism/main/install.sh)"
# Existing users
~/100xprism/update.sh