chore(packs): merge main into feat/ce-packs-v0 - #1656
Draft
kieranklaassen wants to merge 65 commits into
Draft
Conversation
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
…ate progress and gate DONE (#1558) Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
…ck (#1568) Co-authored-by: Trevin Chow <trevin@trevinchow.com>
Co-authored-by: chouti <chouti@upai.com>
Co-authored-by: Trevin Chow <trevin@trevinchow.com>
Co-authored-by: Trevin Chow <trevin@trevinchow.com>
Co-authored-by: Trevin Chow <trevin@trevinchow.com>
Co-authored-by: Hally Maschine <hally@rocketable.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
…quiz (#1629) Co-authored-by: Cursor Agent <cursoragent@cursor.com>
…1623) Co-authored-by: Cursor Agent <cursoragent@cursor.com> Co-authored-by: Trevin Chow <trevin@trevinchow.com>
…#1638) Co-authored-by: Trevin Chow <trevin@trevinchow.com>
… tighter activation (#1643)
…o-ce-packs-v0-b02e # Conflicts: # README.md # docs/guides/ce-plan.md # docs/guides/packs.md # skills/guides/ce-brainstorm.md # skills/guides/ce-compound.md Co-authored-by: Kieran Klaassen <kieranklaassen@users.noreply.github.com>
kieranklaassen
marked this pull request as ready for review
September 8, 2026 19:26
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
kieranklaassen
marked this pull request as draft
September 8, 2026 20:09
…t only a learnings corpus Compound Pack enforcement at review rides on the learnings-researcher persona, but its spawn gate required an existing <root>/solutions/ corpus with a plausible match. A repo that adopts packs before it has any learnings therefore got no review enforcement at all, contradicting docs/guides/packs.md. Found by cloud-agent dogfood on Claude Sonnet 5, GPT-5.6 Sol, and Grok 4.6 independently. - review-scope.py reports `declared_packs` / `pack_roots` by running the sibling resolver (silent only when no config names a pack; null when it cannot tell). - persona-catalog.md and select-and-route.md state the gate as its condition: institutional knowledge to check the change against, from a matching corpus or, in local scope, declared packs (no pre-search; the persona matches rules). - The small-diff lite roster carries the pack-selected persona the way it already carries project-standards, so a three-line violation is enforced too. Co-authored-by: Kieran Klaassen <kieranklaassen@users.noreply.github.com>
The guide called it `Skipped pack files`; the resolver and /ce-setup print `skipped pack file <id>/<name>`, and only the research pass uses the heading. Also state that declaring packs selects the review learnings pass on its own. Co-authored-by: Kieran Klaassen <kieranklaassen@users.noreply.github.com>
…gate, not a spawn rule A re-verification run read scope.md's 'inputs, not automatic spawn decisions' sentence as conflicting with the persona catalog, where declared packs select the learnings persona. State that the helper supplies the fact and the catalog gate decides what it selects. Co-authored-by: Kieran Klaassen <kieranklaassen@users.noreply.github.com>
…d helper signals Two re-verification runs (GPT-5.6 Sol, Grok 4.6) read the Stage 3 sentence as contradicting the learnings gate, where declared packs select the persona. State which helper fields are heuristics and that declared_packs is a fact the gate decides on. Co-authored-by: Kieran Klaassen <kieranklaassen@users.noreply.github.com>
… finding set The learnings persona's output is research-shaped and Stage 6 only rendered it as Known Pattern notes, so a pack rule the diff contradicts had no stated path into findings; in mode:agent that means lfg would never apply it. Two cloud-agent re-verification runs (GPT-5.6 Sol, Grok 4.6) had to guess the route. - The review persona states per matched rule whether the diff honors or contradicts it, quoting the rule and the changed line. - Stage 5 serializes each contradiction as a compact reviewer return before the first helper run, so it gets a stable #, dedup, and the actionable route. - Section 7 keeps honored rules and past solutions as Known Pattern notes. Co-authored-by: Kieran Klaassen <kieranklaassen@users.noreply.github.com>
… its project-standards case #1159 pinned 'no conditional other than project-standards'. The gate now states the condition that clause was one case of, and still names project-standards. Co-authored-by: Kieran Klaassen <kieranklaassen@users.noreply.github.com>
…g compact-return shape Re-verification on Grok 4.6 built the synthetic return from the fields the Stage 5 paragraph listed and the helper rejected it as malformed. Name the shape dispatch-reviewers.md owns instead of enumerating fields, put evidence in the source-detail map, and say step 1 reconciles a structured duplicate. Co-authored-by: Kieran Klaassen <kieranklaassen@users.noreply.github.com>
…tays under the per-test timeout Each scope-helper run now also spawns the resolver; six runs in one test crossed 20s under full-suite load on a 4-core runner. Also say where the rule and line must be quoted for the anchor-100 pack finding. Co-authored-by: Kieran Klaassen <kieranklaassen@users.noreply.github.com>
…n gate and synthesis route Captured from the cloud-agent dogfood of Compound Packs: adding pack roots to the review learnings persona without revisiting its gate or its route into the finding set left review enforcement silently off, and the earlier eval passed only because agents dispatched the persona regardless of the gate. Co-authored-by: Kieran Klaassen <kieranklaassen@users.noreply.github.com>
…er and flaky Cursor cloud-agent VMs ship it in the global git config; the suite's hundreds of throwaway repos each start a daemon, and git-heavy tests time out at 20s in a rotating set. GIT_CONFIG_GLOBAL with a minimal config: 3941 pass in 84s. Co-authored-by: Kieran Klaassen <kieranklaassen@users.noreply.github.com>
…date, not an exempt finding Round-5 dogfood (Claude Sonnet 5) read the Stage 5 sentence as mandatory serialization while the quality gates require a false-positive check; the researcher had claimed a validation rule against a line that only logs. State that a contradiction passes the same gates as any structured finding. Co-authored-by: Kieran Klaassen <kieranklaassen@users.noreply.github.com>
…on condition, and learnings shape Round-5 dogfood on Opus 5 and Fable 5.1 found the pack-candidate paragraph omitted "and fix path" from step 1's merge test (a standards finding on the same line would be merged away), "partially contradicted" had no outcome, Stage 3b's "both kinds" was silent on packs, and the mode:agent `learnings` element shape was undefined. State each as its condition at the owning layer; the guide now covers pack + CODING_STANDARDS.md coexistence and disjoint rule authoring. Co-authored-by: Kieran Klaassen <kieranklaassen@users.noreply.github.com>
…dition Co-authored-by: Kieran Klaassen <kieranklaassen@users.noreply.github.com>
…ractive runs Round-5 dogfood (Opus 5) read the guide's unconditional offer against ce-compound's assembly reference, which skips with the documented signal in non-interactive mode. Co-authored-by: Kieran Klaassen <kieranklaassen@users.noreply.github.com>
…e to the pre-existing partition Round-5 dogfood (Opus 5) hit a matched rule that was neither contradicted by a changed line nor honored: unchanged code violated it. State the condition as where the violating line sits (changed -> finding, unchanged -> pre-existing, none -> note), and give mode:agent a stable coverage.compound_packs key for the resolver result that dispatch-reviewers.md already says to surface in Coverage. Co-authored-by: Kieran Klaassen <kieranklaassen@users.noreply.github.com>
…ch the line; pin the coverage.compound_packs shape Round-5 dogfood on Fable 5.1 and Opus 5 (T13/T14): the researcher twice reported a lookup-validation rule against a value that was only logged; coverage.compound_packs was emitted with two shapes; section 7 said "honors" where "no violating line" was meant; the guide said "a finding for each contradiction" where Stage 5 merges shared-fix contradictions. State each condition. Co-authored-by: Kieran Klaassen <kieranklaassen@users.noreply.github.com>
…hanged or not A pre-existing pack candidate has no changed line to quote; the anchor rule keyed on 'the changed line' and forced 75 (round-5 dogfood, Opus 5). Co-authored-by: Kieran Klaassen <kieranklaassen@users.noreply.github.com>
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
Merges
origin/main(47 commits,f662cad4..fe74844c) intofeat/ce-packs-v0, keeping main's text verbatim at every conflict and layering the packs branch's additions on top. The merged branch was then dogfooded through 34 Cursor cloud agents across 7 model families (Claude Opus 5 / Fable 5.1 / Sonnet 5, GPT-5.6 Sol / Terra, Grok 4.6, Gemini 3.8 Flash, Composer 2.5), each loading this branch's skills natively. Round 1 surfaced two product defects in review enforcement, fixed here with regression tests; rounds 2–5 (25 runs) re-verified them on every model family and surfaced only prose ambiguities, each stated as a condition at its owning layer.Main renamed
skills/guides/->docs/guides/(#1551) and culleddocs/solutions/learnings (#1625); both carry through.Conflict resolutions
README.mddocs/guides/packs.md.docs/guides/ce-plan.mddocs/guides/ce-brainstorm.md,docs/guides/ce-compound.mdskills/guides/copies removed.docs/guides/packs.mdskills/ce-compound/SKILL.md(auto-merged)references/assembly.md5b already owns. Main's text untouched. Result 7994 bytes — no headroom left; the nextce-compoundbody edit should relocate a block to a reference.Defect 1 —
ce-code-reviewnever enforced packs on a repo without learnings (40564c27,f32cac79,d72061bc)Pack enforcement rides on the
learnings-researcherpersona, whose spawn gate required an existing<root>/solutions/corpus with a plausible match. A repo adopting packs before it has learnings got no review enforcement, contradictingdocs/guides/packs.md. Three strict by-the-book runs (Sonnet 5, GPT-5.6 Sol, Grok 4.6) hit it independently; the earlier dogfood passed only because agents dispatched the persona regardless of the gate.scripts/review-scope.pyreportsdeclared_packs/pack_rootsvia the sibling resolver.persona-catalog.mdandselect-and-route.mdstate the gate as its condition: institutional knowledge to check the change against — a matching corpus, or (local scope) declared packs, no pre-search.project-standards, so a 1-line violation is enforced too.Defect 2 — a contradicted rule had no route into the numbered finding set (
7c037973,55fd6163,905a1dc6,46294285,12e9d940,2bc809dc,a8b90ca4)The persona's output is research-shaped and Stage 6 only rendered it as "Known Pattern" notes; in
mode:agenta violation left in thelearningsarray is invisible tolfg's apply step. Now the persona states, per matched rule, where any violating line sits (changed → finding candidate, unchanged → pre-existing, none → note; a line violates a rule only when the rule's own condition reaches it), Stage 5 serializes each contradiction as a complete compact reviewer return subject to the ordinary gates including the false-positive check, section 7 keeps honored rules as notes,mode:agentgets a definedlearningselement shape and acoverage.compound_packskey, and the merge test names "same defect and fix path" so aproject-standardsfinding on the same line stays a separate#.Tests:
tests/ce-code-review-mechanics.test.ts(helper signal across no-config / no-key / declared / broken / fail-closed; red before, green after),tests/skills/ce-packs-contract.test.ts(gate owners, lite roster, contradiction route, per-line condition, pre-existing route, coverage key),tests/review-skill-contract.test.ts(pin moved from the #1159 case to the restated condition).Docs:
docs/guides/packs.mdnow names the skipped-file warning as printed, scopes the refine-the-rule offer to interactive runs, and coversCODING_STANDARDS.mdcoexistence and disjoint rule authoring.Cloud-agent dogfood (34 runs)
ce-setup→ce-plan→ce-code-review→ce-compoundce-brainstorm,ce-doc-reviewconfig.local.yamllayering + review reading from cache/lfgwith a pack (pre-fix, fixed tree ×2)CODING_STANDARDS.md+ pack togethermode:agent: contradiction →actionable_findings, dedup withsecurity, false-positive gate, unchanged-line →pre_existing_findingsEvery stream showed 0 reads from the marketplace plugin cache.
Learnings captured (
cedd603b,5789e25d)docs/solutions/skill-design/new-knowledge-source-re-derives-persona-gate-and-route.mddocs/solutions/developer-experience/global-fsmonitor-makes-the-suite-slow-and-flaky.md— the VM's globalcore.fsmonitor=truemade the suite 220s with rotating 20s timeouts; with a minimal git config the same tree is 3941 pass / 0 fail in 84s.Validation
bun run test— 3941 pass / 1 skip / 0 fail on2bc809dcand905a1dc6(with a minimalGIT_CONFIG_GLOBAL); ona8b90ca4one untouchedce-workintegration test flaked under parallel load and passes 3/3 in isolation.bun run release:validate— in sync (34 skills).bun run plugin:validate— both manifests pass--strictwith CI-pinnedclaude2.1.220.Security Disclosure
skills/ce-code-review/scripts/review-scope.pynow spawns the siblingpacks-resolve.pywithsys.executablefrom the repo root, bounded by a 180s timeout; the resolver already bounds its git calls and treats pack text as data. No new network access beyond what dispatch already performed. No secrets handling changed.Agent Disclosure
Cursor · Claude(family only; Cursor does not expose the running model ID)