Skip to content

test(freeze): add live smoke test for freeze create/update/delete#1436

Merged
mergify[bot] merged 1 commit into
mainfrom
devs/jd/worktree-rust-port/add-live-smoke-test-freeze-create-update-delete--9a7b270e
May 21, 2026
Merged

test(freeze): add live smoke test for freeze create/update/delete#1436
mergify[bot] merged 1 commit into
mainfrom
devs/jd/worktree-rust-port/add-live-smoke-test-freeze-create-update-delete--9a7b270e

Conversation

@jd
Copy link
Copy Markdown
Member

@jd jd commented May 19, 2026

Pin POST + PATCH + POST .../{id}/delete against the real
Mergify API as a single round-trip. The freeze is scheduled far
in the future (2099) so the server treats it as scheduled (no
active-freeze delete reason needed) and the test repo's queue
isn't disturbed. The delete runs from finally so cleanup is
guaranteed even when an assertion in the middle fails.

Uses live_admin_token because scheduled-freeze endpoints sit
under the queue-management family; the CI-scoped token is
rejected with 403. Each run picks a unique func-tests-live- smoke-<ts> reason so concurrent or repeated runs don't fight
over the same row.

The freeze ID is parsed out of the create command's human
output (the same _print_freeze block the Rust port mirrors),
so the regex pins the per-freeze output format across both ends
of the port.

Co-Authored-By: Claude Opus 4.7 noreply@anthropic.com

@mergify mergify Bot had a problem deploying to Mergify Merge Protections May 19, 2026 08:20 Failure
@jd
Copy link
Copy Markdown
Member Author

jd commented May 19, 2026

This pull request is part of a Mergify stack:

# Pull Request Link
1 test(freeze): add live smoke test for freeze create/update/delete #1436 👈
2 feat(rust): port freeze create/update/delete to native Rust #1437
3 refactor(rust): dedupe emit-helper boilerplate across command crates #1438
4 refactor(rust): share test scaffolding via mergify-test-support crate #1439
5 refactor(core): introduce CommandContext for the queue+freeze prelude #1441
6 refactor(ci): consolidate the CI-env scrubber into a shared testing module #1442
7 refactor: drop stale Phase X.Y doc markers and one inline color branch #1443
8 refactor(tui): share StyledGlyph across queue show/status renderers #1444
9 refactor(queue): drop indexmap, group_by_scope returns a Vec<(K, V)> #1445
10 refactor(ci): swap uuid for getrandom in the GHA heredoc delimiter #1446
11 refactor(config): standardize the workspace on serde_yaml_ng for YAML parsing #1447

@mergify
Copy link
Copy Markdown
Contributor

mergify Bot commented May 19, 2026

Merge Protections

Your pull request matches the following merge protections and will not be merged until they are valid.

🟢 🤖 Continuous Integration

Wonderful, this rule succeeded.
  • all of:
    • check-success=ci-gate

🟢 👀 Review Requirements

Wonderful, this rule succeeded.
  • any of:
    • #approved-reviews-by>=2
    • author = dependabot[bot]
    • author = mergify-ci-bot
    • author = renovate[bot]

🟢 Enforce conventional commit

Wonderful, this rule succeeded.

Make sure that we follow https://www.conventionalcommits.org/en/v1.0.0/

  • title ~= ^(fix|feat|docs|style|refactor|perf|test|build|ci|chore|revert|ui)(?:\(.+\))?:

🟢 🔎 Reviews

Wonderful, this rule succeeded.
  • #changes-requested-reviews-by = 0
  • #review-requested = 0
  • #review-threads-unresolved = 0

🟢 📕 PR description

Wonderful, this rule succeeded.
  • body ~= (?ms:.{48,})

@mergify mergify Bot requested a review from a team May 19, 2026 08:37
@jd jd marked this pull request as ready for review May 19, 2026 08:53
@jd jd force-pushed the devs/jd/worktree-rust-port/add-live-smoke-test-freeze-create-update-delete--9a7b270e branch from f77ec67 to 414a70b Compare May 19, 2026 08:56
@jd jd temporarily deployed to func-tests-live May 19, 2026 08:56 — with GitHub Actions Inactive
@jd
Copy link
Copy Markdown
Member Author

jd commented May 19, 2026

Revision history

# Type Changes Reason Date
1 initial f77ec67 2026-05-19 08:56 UTC
2 content f77ec67 → 414a70b (raw) 2026-05-19 08:56 UTC
3 rebase 414a70b → 8106d1c (rebase only) 2026-05-19 13:04 UTC
4 rebase 8106d1c → fa07747 (rebase only) 2026-05-19 14:15 UTC
5 rebase fa07747 → 955e497 (rebase only) 2026-05-20 08:42 UTC
6 rebase 955e497 → 1ac4b0d (rebase only) 2026-05-20 09:05 UTC
7 rebase 1ac4b0d → a8fc711 (rebase only) 2026-05-21 07:25 UTC
8 rebase a8fc711 → d82958d (rebase only) 2026-05-21 07:56 UTC
9 content d82958d → 8f0b96b (raw) 2026-05-21 12:39 UTC

@jd jd temporarily deployed to func-tests-live May 19, 2026 08:56 — with GitHub Actions Inactive
@mergify mergify Bot had a problem deploying to Mergify Merge Protections May 19, 2026 08:56 Failure
@jd jd force-pushed the devs/jd/worktree-rust-port/add-live-smoke-test-freeze-create-update-delete--9a7b270e branch from 414a70b to 8106d1c Compare May 19, 2026 13:04
@jd jd temporarily deployed to func-tests-live May 19, 2026 13:04 — with GitHub Actions Inactive
@jd jd temporarily deployed to func-tests-live May 19, 2026 13:04 — with GitHub Actions Inactive
@mergify mergify Bot had a problem deploying to Mergify Merge Protections May 19, 2026 13:04 Failure
@jd jd force-pushed the devs/jd/worktree-rust-port/port-freeze-list-native-rust--40ca436a branch from 078f0e6 to fca204c Compare May 19, 2026 14:14
@jd jd force-pushed the devs/jd/worktree-rust-port/add-live-smoke-test-freeze-create-update-delete--9a7b270e branch from 8106d1c to fa07747 Compare May 19, 2026 14:14
@jd jd temporarily deployed to func-tests-live May 19, 2026 14:15 — with GitHub Actions Inactive
@jd jd temporarily deployed to func-tests-live May 21, 2026 07:25 — with GitHub Actions Inactive
@jd jd temporarily deployed to func-tests-live May 21, 2026 07:25 — with GitHub Actions Inactive
@mergify mergify Bot had a problem deploying to Mergify Merge Protections May 21, 2026 07:25 Failure
@mergify mergify Bot removed the conflict label May 21, 2026
kozlek
kozlek previously approved these changes May 21, 2026
@mergify mergify Bot requested a review from a team May 21, 2026 07:44
Copilot AI review requested due to automatic review settings May 21, 2026 07:55
@jd jd force-pushed the devs/jd/worktree-rust-port/add-live-smoke-test-freeze-create-update-delete--9a7b270e branch from a8fc711 to d82958d Compare May 21, 2026 07:55
@jd jd changed the base branch from main to devs/jd/worktree-rust-port/make-mergify-help-list-python-shimmed-cmds-too--6afee9ba May 21, 2026 07:56
@jd jd temporarily deployed to func-tests-live May 21, 2026 07:56 — with GitHub Actions Inactive
@mergify mergify Bot dismissed kozlek’s stale review May 21, 2026 07:56

Pull request has been modified.

@mergify mergify Bot had a problem deploying to Mergify Merge Protections May 21, 2026 07:56 Failure
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds a new live functional smoke test that exercises the scheduled-freeze lifecycle end-to-end against the real Mergify API, ensuring the CLI’s create/update/delete behavior and human output format remain compatible across the Python → Rust port.

Changes:

  • Add a live smoke test that performs freeze createfreeze updatefreeze delete in a single round-trip with cleanup in finally.
  • Parse the created freeze UUID from the CLI’s human-readable output to target subsequent update/delete operations.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread func-tests/test_live_smoke.py Outdated
Comment thread func-tests/test_live_smoke.py Outdated
Base automatically changed from devs/jd/worktree-rust-port/make-mergify-help-list-python-shimmed-cmds-too--6afee9ba to main May 21, 2026 10:32
Pin `POST` + `PATCH` + `POST .../{id}/delete` against the real
Mergify API as a single round-trip. The freeze is scheduled far
in the future (2099) so the server treats it as `scheduled` (no
active-freeze delete reason needed) and the test repo's queue
isn't disturbed. The delete runs from `finally` so cleanup is
guaranteed even when an assertion in the middle fails.

Uses `live_admin_token` because scheduled-freeze endpoints sit
under the queue-management family; the CI-scoped token is
rejected with 403. Each run picks a unique `func-tests-live-
smoke-<ts>` reason so concurrent or repeated runs don't fight
over the same row.

The freeze ID is parsed out of the create command's human
output (the same `_print_freeze` block the Rust port mirrors),
so the regex pins the per-freeze output format across both ends
of the port.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Change-Id: I9a7b270e04b86ca1bf71985b92350bee29d26f80
@jd jd force-pushed the devs/jd/worktree-rust-port/add-live-smoke-test-freeze-create-update-delete--9a7b270e branch from d82958d to 8f0b96b Compare May 21, 2026 12:39
@jd jd temporarily deployed to func-tests-live May 21, 2026 12:39 — with GitHub Actions Inactive
@jd jd temporarily deployed to func-tests-live May 21, 2026 12:39 — with GitHub Actions Inactive
@mergify mergify Bot deployed to Mergify Merge Protections May 21, 2026 12:40 Active
@mergify mergify Bot requested a review from a team May 21, 2026 13:46
@mergify
Copy link
Copy Markdown
Contributor

mergify Bot commented May 21, 2026

Merge Queue Status

  • Entered queue2026-05-21 14:49 UTC · Rule: default
  • Checks skipped · PR is already up-to-date
  • Merged2026-05-21 14:50 UTC · at 8f0b96b5969367834430a4d4a5e0e71a6923cf83 · squash

This pull request spent 33 seconds in the queue, including 3 seconds running CI.

Required conditions to merge

@mergify mergify Bot added the queued label May 21, 2026
@mergify mergify Bot merged commit 1caca40 into main May 21, 2026
36 checks passed
@mergify mergify Bot deleted the devs/jd/worktree-rust-port/add-live-smoke-test-freeze-create-update-delete--9a7b270e branch May 21, 2026 14:50
@mergify mergify Bot removed the queued label May 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

4 participants