WIP: test(forge): the pr create check expects the edit that allows maintainer edits #926

Closed
zeldaootr wants to merge 1 commit from zeldaootr/Longshot:forge-pr-check-maintainer-edit into main
Contributor

Type: test · Risk: low · Tested on: Linux, game-free checks · Needs: none

Why

test_forge_pr fails on main since pr create turns on "Allow edits from maintainers"
(#905): every create now edits the PR once more, and one case
still counted the old writes. A red check on main hides new failures in every PR that touches the forge script.

How to reproduce

Seen on: Linux, any PC (no game, no GPU)
Settings and switches: defaults
Steps: python -I -B tests/test_forge_pr.py on main c45be62f
Expected: all cases pass
Actual: test_create_draft_is_the_default_and_wip_is_not_doubled fails: ['POST', 'PATCH', 'POST', 'PATCH'] != ['POST', 'POST', 'PATCH']

What changed

The case now expects what pr create does: an edit after each create, both turning on allow_maintainer_edit, and
the description in the edit only where the template was filled in.

  • tests: test_create_draft_is_the_default_and_wip_is_not_doubled in tests/test_forge_pr.py checks each write's
    method and fields, and that every edit allows maintainer edits.

Measurements

Verdict: nothing to measure: a game-free check, the game doesn't run it.

Flags and settings

None

Testing

Tested: Linux: tests/test_forge_pr.py fails on main c45be62f (the case above) and passes here, 32 of 32;
test_forge_session_lock passes. With #831 merged on top, all
37 of test_forge_pr pass.

Not tested: the rest of tests/run_all.py (this changes one case of one check, nothing else reads it).

Must be tested:

  • None

Risks

What could break: Nothing: a test's expectation.

Turning it off: revert the commit

Compatibility: Nothing changes

Checklist

Everyone

  • One topic.
  • The title is a Conventional Commit (type(scope): description) of the status line's type.
  • Why gives the reason plainly and links the issues that fit (the tracker searched).
  • Measurements has a verdict, or one line saying why there is nothing to measure.
  • Testing names what was tested, what wasn't, and what must still be tested, where and how.
  • Rebased on current main. On main c45be62f.
  • python -I -B tests/run_all.py passes (any failure that also fails on main is named). Not run in full yet: only the forge checks.
  • No game files, dumps, build output or generated files.
  • third_party/ untouched (a new folder with a PROVENANCE.md instead).
  • The license is OK: GPL-3.0-or-later, nothing incompatible and nothing decompiled.

When it applies

  • AI assistance recorded with Assisted-by: / Co-Authored-By: trailers.
  • A check under tests/ that reads changed source updated in this PR, not weakened.
**Type:** test · **Risk:** low · **Tested on:** Linux, game-free checks · **Needs:** none ## Why `test_forge_pr` fails on `main` since `pr create` turns on "Allow edits from maintainers" (https://git.magicbean.dev/MagicBeanDev/Longshot/pulls/905): every create now edits the PR once more, and one case still counted the old writes. A red check on `main` hides new failures in every PR that touches the forge script. ## How to reproduce **Seen on:** Linux, any PC (no game, no GPU) **Settings and switches:** defaults **Steps:** `python -I -B tests/test_forge_pr.py` on `main` c45be62f **Expected:** all cases pass **Actual:** `test_create_draft_is_the_default_and_wip_is_not_doubled` fails: `['POST', 'PATCH', 'POST', 'PATCH'] != ['POST', 'POST', 'PATCH']` ## What changed The case now expects what `pr create` does: an edit after each create, both turning on `allow_maintainer_edit`, and the description in the edit only where the template was filled in. - tests: `test_create_draft_is_the_default_and_wip_is_not_doubled` in `tests/test_forge_pr.py` checks each write's method and fields, and that every edit allows maintainer edits. ## Measurements **Verdict:** nothing to measure: a game-free check, the game doesn't run it. ### Flags and settings None ## Testing **Tested:** Linux: `tests/test_forge_pr.py` fails on `main` c45be62f (the case above) and passes here, 32 of 32; `test_forge_session_lock` passes. With https://git.magicbean.dev/MagicBeanDev/Longshot/pulls/831 merged on top, all 37 of `test_forge_pr` pass. **Not tested:** the rest of `tests/run_all.py` (this changes one case of one check, nothing else reads it). **Must be tested:** - None ## Risks **What could break:** Nothing: a test's expectation. **Turning it off:** revert the commit **Compatibility:** Nothing changes ## Checklist ### Everyone - [x] One topic. - [x] The title is a Conventional Commit (`type(scope): description`) of the status line's type. - [x] Why gives the reason plainly and links the issues that fit (the tracker searched). - [x] Measurements has a verdict, or one line saying why there is nothing to measure. - [x] Testing names what was tested, what wasn't, and what must still be tested, where and how. - [x] Rebased on current `main`. On `main` c45be62f. - [ ] `python -I -B tests/run_all.py` passes (any failure that also fails on `main` is named). Not run in full yet: only the forge checks. - [x] No game files, dumps, build output or generated files. - [x] `third_party/` untouched (a new folder with a `PROVENANCE.md` instead). - [x] The license is OK: GPL-3.0-or-later, nothing incompatible and nothing decompiled. ### When it applies - [x] AI assistance recorded with `Assisted-by:` / `Co-Authored-By:` trailers. - [x] A check under `tests/` that reads changed source updated in this PR, not weakened.
test(forge): the pr create check expects the edit that allows maintainer edits
Some checks failed
Website / Website on Cloudflare (pull_request_target) Has been skipped
PR description / Description follows the template (pull_request_target) Successful in 3s
Guide screenshots / Guide images and local UI source review (pull_request) Has been cancelled
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
8004191095
Since `pr create` turns on `allow_maintainer_edit` (#905) it edits every PR it opens once, so the check that counted
the writes of two creates (POST, POST, PATCH) failed on `main`. It now expects an edit after each create, both
allowing maintainer edits, and the body only in the one whose template was filled.

Assisted-by: Claude
Author
Contributor

Closing: tests/test_forge_pr.py moved to MagicBeanDev/Tooling with #915, and Tooling's copy already expects the edit that allows maintainer edits (MagicBeanDev/Tooling#2). Nothing left to fix here.

Closing: `tests/test_forge_pr.py` moved to MagicBeanDev/Tooling with https://git.magicbean.dev/MagicBeanDev/Longshot/pulls/915, and Tooling's copy already expects the edit that allows maintainer edits (https://git.magicbean.dev/MagicBeanDev/Tooling/pulls/2). Nothing left to fix here.
zeldaootr closed this pull request 2026-11-15 20:57:03 +00:00
Some checks failed
Website / Website on Cloudflare (pull_request_target) Has been skipped
PR description / Description follows the template (pull_request_target) Successful in 3s
Guide screenshots / Guide images and local UI source review (pull_request) Has been cancelled
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled

Pull request closed

Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
MagicBeanDev/Longshot!926
No description provided.