Skip to content

guide: the design checkpoint applies only when a third round reports findings - #498

Merged
moq-bot[bot] merged 1 commit into
mainfrom
guide/checkpoint-findings
Nov 5, 2026
Merged

moq-bot[bot] merged 1 commit into
mainfrom
guide/checkpoint-findings

Conversation

@kixelated

Copy link
Copy Markdown
Collaborator

Follow-up to moq-dev/quest#496. "Every third round, stop before fixing more findings" was ambiguous when the third round is clean: on moq-dev/quest#480 and moq-dev/quest#491, agents read it differently and handed back a checkpoint with nothing left to fix. The maintainer picked, in /quest-complete on 2026-11-04, that the checkpoint applies only when findings remain.

Changes

  • assets/CONTEXT.md (Reviews): "When a round whose number is a multiple of three reports findings, stop before fixing them and reconsider the approach; a clean round needs no checkpoint."
  • test/runner.test.ts: the merge-prompt test expects the new wording.

Decisions

  • Should the checkpoint apply after a clean third round?
    • ✅ Only when findings remain
    • Rejected: always at round 3

Validation

  • just check passes.
  • test/runner.test.ts: 71 passed.

Review

Skipped: a one-sentence rule rewording whose meaning the maintainer chose, plus the matching test string.

🤖 Generated with Claude Code

(Written by Claude Opus 5.5)

…findings

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Nov 4, 2026

Copy link
Copy Markdown

Warning

Review limit reached

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Next included review available in 22 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

Learn how review limits work.

Review configuration:

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: e71343e9-57d0-41ba-adc0-b6d0ce0e4c32
Commits

Reviewing files that changed from the base of the PR and between 5397c57 and f1ab5f0.

Files selected for processing: 2
  • assets/CONTEXT.md
  • test/runner.test.ts
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

@pullfrog pullfrog Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ℹ️ No critical issues — one stale copy of the old wording is left behind.

Reviewed changes

  • Checkpoint rule reworded. assets/CONTEXT.md's Reviews section now applies the design checkpoint only when the multiple-of-three round reports findings, with a clean round needing no checkpoint; the merge-prompt expectation in test/runner.test.ts asserts the new phrase.
  • Verified locally. test/runner.test.ts passes 71/71, and prettier --check plus tsc --noEmit are clean on the changed files.

ℹ️ The findings-delivery note still teaches the old shorthand

The runner's note delivered with review findings in src/runner/job.ts:506 says "including its design checkpoint every third round" — precisely the phrasing this PR removes from assets/CONTEXT.md because agents read it ambiguously. The note only fires on rounds that report findings, so behavior stays consistent with the new rule, but the one agent-facing copy that operationalizes the rule no longer matches the guide it points to.

Technical details
# Findings note in `src/runner/job.ts` retains pre-PR checkpoint wording

## Affected sites

- src/runner/job.ts:506 — the `note` string shown when a review round reports findings ends with "Follow the guide's review rules, including its design checkpoint every third round.", which restates the exact phrasing `assets/CONTEXT.md:161` just replaced.

## Required outcome

- The note should reference the design checkpoint in terms matching the reworded rule (a checkpoint when a multiple-of-three round reports findings), so agents reading the note and the guide get one meaning.

## Suggested approach (optional)

- Rephrase the tail of the note string, e.g. "…including its design checkpoint when a round whose number is a multiple of three reports findings." No test asserts this string (the merge-prompt test at `test/runner.test.ts:1067` covers the prompt, not the note), so only the wording needs care, not test churn.

Pullfrog  | Fix it ➔ | View workflow run | Using glm-5.3-flash | 𝕏

@kixelated
kixelated added this pull request to the merge queue Nov 5, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Nov 5, 2026
@moq-bot

moq-bot Bot commented Nov 5, 2026

Copy link
Copy Markdown

quest land watch: the merge queue removed this pull request at f1ab5f0 because its merge_group build failed (failed_checks).

The land fixer works on it in the background, and the watcher re-enqueues it at the back of the queue once it is fixed or judged flaky, or hands it back here with what it needs.

Queue / Queue build / Build (job) failure at step Test:

…holds candidates after %s %j until a refresh rereads…
    �[90m   |�[39m             �[31m^�[39m
    �[90m1547|�[39m   await enrolled();
    �[90m1548|�[39m   await github({ activity: history() }).service.projectState(repo, "en…

�[31m�[2m⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/2]⎯�[22m�[39m

�[41m�[1m FAIL �[22m�[49m test/projects.test.ts�[2m > �[22menrolled project observations�[2m > �[22mwithholds candidates after push {"ref":"refs/heads/quest/first","created":true} until a refresh rereads occupancy
�[31m�[1mAssertionError�[22m: expected [] to be null�[39m

�[32m- Expected:�[39m
null

�[31m+ Received:�[39m
[]

�[36m �[2m❯�[22m test/projects.test.ts:�[2m1551:37�[22m�[39m
    �[90m1549|�[39m   expect((await delivery(name, { ...event, ...payload })).status).toBe…
    �[90m1550|�[39m   const cached = await github().service.projectState(repo, "enrollment…
    �[90m1551|�[39m   expect(cached!.project.available).toBeNull();
    �[90m   |�[39m                                     �[31m^�[39m
    �[90m1552|�[39m   expect(readBoard(cached!.project).quests.get("quest/first.md")!.stat…
    �[90m1553|�[39m   const second = github({

�[31m�[2m⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[2/2]⎯�[22m�[39m


�[2m Test Files �[22m �[1m�[31m1 failed�[39m�[22m�[2m | �[22m�[1m�[32m20 passed�[39m�[22m�[90m (21)�[39m
�[2m      Tests �[22m �[1m�[31m2 failed�[39m�[22m�[2m | �[22m�[1m�[32m536 passed�[39m�[22m�[90m (538)�[39m
�[2m   Start at �[22m 16:07:22
�[2m   Duration �[22m 56.31s�[2m (tests 81%, transform 17%, setup 2%)�[22m


##[error]Error: Test timed out in 5000ms.
If this is a long-running test, pass a timeout value as the last argument or configure it globally with "testTimeout".
 ❯ test/projects.test.ts:1546:13



##[error]AssertionError: expected [] to be null

- Expected:
null

+ Received:
[]

 ❯ test/projects.test.ts:1551:37


error: script "test" exited with code 1
error: recipe `_worker-test` failed on line 86 with exit code 1
error: recipe `worker-test` failed on line 83 with exit code 1
error: recipe `_test` failed on line 41 with exit code 1
error: recipe `test` failed on line 30 with exit code 1
##[error]Process completed with exit code 1.
Post job cleanup.
[command]/nix/store/lg46w7hrjx7kylsh6645c9l975i8h43b-git-2.55.0/bin/git version
git version 2.55.0
Temporarily overriding HOME='/var/cache/github-runner-work/_temp/f6ed9aa0-8a55-4182-afff-5ed09d6a3b39' before making global git config changes
Adding repository directory to the temporary git global config as a safe directory
[command]/nix/store/lg46w7hrjx7kylsh6645c9l975i8h43b-git-2.55.0/bin/git config --global --add safe.directory /var/cache/github-runner-work/quest/quest
Removing SSH command configuration
[command]/nix/store/lg46w7hrjx7kylsh6645c9l975i8h43b-git-2.55.0/bin/git config --local --name-only --get-regexp core\.sshCommand
[command]/nix/store/lg46w7hrjx7kylsh6645c9l975i8h43b-git-2.55.0/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :"
Removing HTTP extra header
[command]/nix/store/lg46w7hrjx7kylsh6645c9l975i8h43b-git-2.55.0/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader
[command]/nix/store/lg46w7hrjx7kylsh6645c9l975i8h43b-git-2.55.0/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :"
Removing includeIf entries pointing to credentials config files
[command]/nix/store/lg46w7hrjx7kylsh6645c9l975i8h43b-git-2.55.0/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
[command]/nix/store/lg46w7hrjx7kylsh6645c9l975i8h43b-git-2.55.0/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
Post job cleanup.
[command]/nix/store/lg46w7hrjx7kylsh6645c9l975i8h43b-git-2.55.0/bin/git version
git version 2.55.0
Temporarily overriding HOME='/var/cache/github-runner-work/_temp/a2357afa-7c1e-4d81-88c7-63d18653faa4' before making global git config changes
Adding repository directory to the temporary git global config as a safe directory
[command]/nix/store/lg46w7hrjx7kylsh6645c9l975i8h43b-git-2.55.0/bin/git config --global --add safe.directory /var/cache/github-runner-work/quest/quest
Removing SSH command configuration
[command]/nix/store/lg46w7hrjx7kylsh6645c9l975i8h43b-git-2.55.0/bin/git config --local --name-only --get-regexp core\.sshCommand
[command]/nix/store/lg46w7hrjx7kylsh6645c9l975i8h43b-git-2.55.0/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :"
Removing HTTP extra header
[command]/nix/store/lg46w7hrjx7kylsh6645c9l975i8h43b-git-2.55.0/bin/git config --local --name-only --get-regexp http\.https\:\/\/github\.com\/\.extraheader
[command]/nix/store/lg46w7hrjx7kylsh6645c9l975i8h43b-git-2.55.0/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/github\.com\/\.extraheader' && git config --local --unset-all 'http.https://github.com/.extraheader' || :"
Removing includeIf entries pointing to credentials config files
[command]/nix/store/lg46w7hrjx7kylsh6645c9l975i8h43b-git-2.55.0/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
[command]/nix/store/lg46w7hrjx7kylsh6645c9l975i8h43b-git-2.55.0/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
A job completed hook has been configured by the self-hosted runner administrator
##[group]Run '/nix/store/gx2v6q84b0w43bafm0whkdx93qyxbpps-ci-cache-gc.sh/bin/ci-cache-gc.sh'
shell: /nix/store/1mv3qz005gkbalxfghk4y3s8ayv4d2dl-bash-interactive-5.3p15/bin/bash --noprofile --norc -e -o pipefail {0}
##[endgroup]
evicted 0 objects and 0 action results (0 B logical); 50.0 GiB logical remain
Cleaning up orphan processes

Queue / Queue (job) failure at step Require the build to pass:

Current runner version: '2.338.2'
##[group]Runner Image Provisioner
Hosted Compute Agent
Version: 20261021.618
Commit: 21505ad2541d5be6135ed84fc33697146cf75b8e
Build Date: 2026-10-21T00:45:21Z
Worker ID: {ee290f7c-267d-4316-805b-40eff9f1f1db}
Region: eastus
Cloud: Azure
##[endgroup]
##[group]Operating System
Ubuntu
24.04.5
LTS
##[endgroup]
##[group]Runner Image
Image: ubuntu-24.04
Version: 20261025.353.1
Included Software: https://github.com/actions/runner-images/blob/ubuntu24/20261025.353/images/ubuntu/Ubuntu2404-Readme.md
Image Release: https://github.com/actions/runner-images/releases/tag/ubuntu24%2F20261025.353
##[endgroup]
##[group]GITHUB_TOKEN Permissions
Contents: read
Metadata: read
PullRequests: read
##[endgroup]
Secret source: Actions
Cache mode: write
Prepare workflow directory
Prepare all required actions
Complete job name: Queue
##[group]Run [[ "$RESULT" == success ]] || { echo "::error::the queue build ended $RESULT" >&2; exit 1; }
�[36;1m[[ "$RESULT" == success ]] || { echo "::error::the queue build ended $RESULT" >&2; exit 1; }�[0m
shell: /usr/bin/bash -e {0}
env:
  RESULT: failure
##[endgroup]
##[error]the queue build ended failure
##[error]Process completed with exit code 1.
Cleaning up orphan processes

(written by quest land watch)

@moq-bot
moq-bot Bot added this pull request to the merge queue Nov 5, 2026
@moq-bot

moq-bot Bot commented Nov 5, 2026

Copy link
Copy Markdown

codex / Codex land fixer note:

The queue failed in cloudflare/test/projects.test.ts, enrolled project observations > withholds candidates after %s %j until a refresh rereads occupancy. The pull_request reopened case timed out after 5000ms; the push case with ref refs/heads/quest/first and created true received [] instead of null. Both passed in the unchanged PR's full Worker suite. The PR changes only design-checkpoint wording and the corresponding prompt assertion, so there is no evidence to blame it for these Worker failures. Validation passed: bun run build; bun run check; bun run test (1076 passed, 5 skipped); bun run --cwd cloudflare test (537 passed, including the previously failing cases, plus Worker build and seeded check). No source changes or commits were made.

(written by codex / Codex)

@moq-bot

moq-bot Bot commented Nov 5, 2026

Copy link
Copy Markdown

quest land watch: re-enqueued this pull request at f1ab5f0, at the back of the merge queue, unchanged, since the land fixer judged the failure flaky: cloudflare/test/projects.test.ts: withholds candidates after %s %j until a refresh rereads occupancy (pull_request reopened; push created).

(written by quest land watch)

Merged via the queue into main with commit 01a158f Nov 5, 2026
7 checks passed
@moq-bot
moq-bot Bot deleted the guide/checkpoint-findings branch November 5, 2026 00:39
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.

1 participant