Skip to content

quest: delete the gate host quest, its kixelated/nixos stack merged - #443

Merged
moq-bot[bot] merged 4 commits into
mainfrom
quest/m0/host-land/host
Nov 4, 2026
Merged

moq-bot[bot] merged 4 commits into
mainfrom
quest/m0/host-land/host

Conversation

@kixelated

@kixelated kixelated commented Nov 3, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Finishes Run the gate on the maintainer's host and deletes it with quest rm, which also drops its links from the host-land epic's Required and from Harden the merge-queue runners's Related.

The quest's last item was waiting on the kixelated/nixos stack's merge, and that has cleared. Between 2026-11-04 03:53 and 06:53 UTC, kixelated/nixos#13, #16, #18, #19, #20, #21, #22 and #23 all merged, and git merge-base --is-ancestor <head> origin/main holds for every PR's head.

Earlier rounds of this PR did the rest of the work:

  • Symlink attack VM tests: kixelated/nixos#22 covers three cases: a link to an outside directory, which the real launcher socket refuses, an escaping chain, and a write through a symlinked directory. The quest said the extraction "already rejects" all three. That was wrong: tarfile's data filter rewrites the last two links so they stay inside. Those tests therefore check that nothing escapes rather than that the link is refused, and they fail once the filter is removed.
  • Switch race: fixed in kixelated/nixos#19 (21a1bde). The refresh services now close their listeners in activation's stop phase and reopen them in its start phase.
  • moq-bot's organization_self_hosted_runners write permission: kept. fix(skills): planning PRs leave issues open and summarize the decision #19's scripts/ci-runner-token.sh uses it to mint registration tokens for the quest, rind and rust2 queue runners.

The Goal's checks are met:

  • A live batch landed on 2026-10-30 (moq-dev/quest#299, #300, #301).
  • The merged VM test checks that the bot key is absent from the check container (tests/quest-land.nix:278-279) and unreadable as another user (tests/quest-land.nix:337).
  • The test also checks that only root can read the gate's proxy key (tests/quest-land.nix:201-205).

Choices made without asking

  • Changed the planned "maintainer may drop" item to "kept", since dropping it would break registration for the org runners.
  • Deleted the quest without the maintainer's sign-off. Its Waiting item said "the quest file is then deleted" once the stack merged.
  • Left Harden the merge-queue runners's "Deploy kixelated/nixos#20" item alone. That quest owns it, and merging is not deploying.

Validation

  • quest check --base origin/main passes on the head (76 documents ok).
  • just check: passes on 122d458.

Review

Skipped: the diff is only the deletion of a finished quest file and of two list links to it. There is no code. The code changes were reviewed in their own kixelated/nixos PRs; for example, kixelated/nixos#22 had a Codex review (gpt-6.1-sol, medium) on 4b21e72 with no findings.

Follow-ups

None.

🤖 Generated with Claude Code

(Written by Claude Opus 5.5)

kixelated and others added 2 commits November 2, 2026 20:54
Quest-Claim: e7cc1675d366f450
… the stack's merge

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kixelated kixelated changed the title Run the gate on the maintainer's host quest: gate host: symlink attack tests (kixelated/nixos#22), leaving the stack's merge Nov 3, 2026
kixelated and others added 2 commits November 3, 2026 22:58
# Conflicts:
#	quest/m0/host-land/host.md
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kixelated kixelated changed the title quest: gate host: symlink attack tests (kixelated/nixos#22), leaving the stack's merge quest: delete the gate host quest, its kixelated/nixos stack merged Nov 4, 2026
@kixelated
kixelated marked this pull request as ready for review November 4, 2026 07:18
@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 53 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: 5762ec5d-1d5b-4180-818d-5b8b001c8cc9
Commits

Reviewing files that changed from the base of the PR and between 58696bc and 122d458.

Files selected for processing: 3
  • quest/m0/host-land/README.md
  • quest/m0/host-land/host.md
  • quest/m0/queue-watcher/runners.md
  • 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 new issues found.

Reviewed changes

Reviewed the head commit 122d458 against main (58696bc): the deletion of the finished gate host quest and of every link to it.

  • Delete quest/m0/host-land/host.md — the quest's last Waiting item was the kixelated/nixos stack merging, and the body documents each remaining item resolved by those PRs, so the finished-quest deletion is justified.
  • Drop the link from the epic's Required — quest/m0/host-land/README.md keeps its two remaining children (fixer-tls.md, merge-commits.md) and its prose references only the gate itself, which still runs.
  • Drop the link from the runners quest — the ## Related heading goes with its last item in runners.md, per the guide, and the file ends cleanly after the fork-PR item.

Verified on the head: quest check --base origin/main passes (76 documents ok), and no reference to host.md, host-land/host, or "Gate host" remains anywhere in the tree. One note for completeness: kixelated/nixos is private and unreachable from this environment, so the body's merge claims for that stack could not be re-verified here — consistent and detailed, and left as-is.

Pullfrog  | View workflow run | Using glm-5.3-flash | 𝕏

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

moq-bot Bot commented Nov 4, 2026

Copy link
Copy Markdown

quest land watch: the merge queue removed this pull request at 122d458 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:

…22m�[2m)�[22m�[33m 8550�[2mms�[22m�[39m
   �[32m✓�[39m enrolled project observations �[2m(33)�[22m
     �[33m�[2m✓�[22m�[39m keeps candidates and history progress through activity that cannot occupy a quest�[33m 668�[2mms�[22m�[39m
     �[33m�[2m✓�[22m�[39m withholds candidates after pull_request {"action":"reopened","pull_request":{"id":202,"number":4}} until a refresh rereads occupancy�[33m 301�[2mms�[22m�[39m

�[31m⎯⎯⎯⎯⎯⎯⎯�[39m�[1m�[41m Failed Tests 1 �[49m�[22m�[31m⎯⎯⎯⎯⎯⎯⎯�[39m

�[41m�[1m FAIL �[22m�[49m test/github.test.ts�[2m > �[22msigned GitHub webhooks�[2m > �[22macknowledges and drops every delivery from an owner off the allowlist
�[31m�[1mError�[22m: 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".�[39m
�[36m �[2m❯�[22m test/github.test.ts:�[2m163:2�[22m�[39m
    �[90m161|�[39m   expect((await env.DB.prepare("SELECT * FROM github_project_activity"…
    �[90m162|�[39m  });
    �[90m163|�[39m  it("acknowledges and drops every delivery from an owner off the allow…
    �[90m   |�[39m  �[31m^�[39m
    �[90m164|�[39m   // Enrolled before its owner left the allowlist, such as by a transf…
    �[90m165|�[39m   await env.DB.prepare(

�[31m�[2m⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯�[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�[31m1 failed�[39m�[22m�[2m | �[22m�[1m�[32m530 passed�[39m�[22m�[90m (531)�[39m
�[2m   Start at �[22m 08:43:13
�[2m   Duration �[22m 56.62s�[2m (tests 79%, transform 17%, setup 3%)�[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/github.test.ts:163:2


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/87664355-c726-4fff-b0f0-e526b4798051' 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/469edc73-4cb3-4003-b209-4a6c716a3ac3' 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); 49.9 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: {8d8439dd-4fa3-4dab-88a7-77232ce77c25}
Region: southcentralus
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 4, 2026
@moq-bot

moq-bot Bot commented Nov 4, 2026

Copy link
Copy Markdown

codex / Codex land fixer note:

The queue failed because signed GitHub webhooks > acknowledges and drops every delivery from an owner off the allowlist in cloudflare/test/github.test.ts exceeded 5000ms. This documentation-only PR does not change the test or its implementation. The unchanged pinned head passed all 531 Worker tests, the seeded Worker check, the CLI build, quest validation, formatting checks, and all 1042 CLI tests (5 skipped). The timeout did not recur; requeueing unchanged and flagging the flaky test for follow-up.

(written by codex / Codex)

@moq-bot

moq-bot Bot commented Nov 4, 2026

Copy link
Copy Markdown

quest land watch: re-enqueued this pull request at 122d458, at the back of the merge queue, unchanged, since the land fixer judged the failure flaky: cloudflare/test/github.test.ts: signed GitHub webhooks > acknowledges and drops every delivery from an owner off the allowlist.

(written by quest land watch)

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

moq-bot Bot commented Nov 4, 2026

Copy link
Copy Markdown

quest land watch: the merge queue removed this pull request at 122d458 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 (job) failure at step Require the build to pass:

Current runner version: '2.338.2'
##[group]Runner Image Provisioner
Hosted Compute Agent
Version: 20261028.624
Commit: 54898b74c23fde5556c9b3c3a2290865feef0dfe
Build Date: 2026-10-28T21:51:42Z
Worker ID: {666c7a32-a06b-41cc-8b66-f87402d6117b}
Region: eastus2
Cloud: Azure
##[endgroup]
##[group]Operating System
Ubuntu
24.04.5
LTS
##[endgroup]
##[group]Runner Image
Image: ubuntu-24.04
Version: 20261101.360.1
Included Software: https://github.com/actions/runner-images/blob/ubuntu24/20261101.360/images/ubuntu/Ubuntu2404-Readme.md
Image Release: https://github.com/actions/runner-images/releases/tag/ubuntu24%2F20261101.360
##[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 4, 2026
@moq-bot

moq-bot Bot commented Nov 4, 2026

Copy link
Copy Markdown

codex / Codex land fixer note:

The supplied log reports only the aggregate queue failure (lines 39–42: RESULT: failure, the queue build ended failure, and exit code 1); it does not identify a failed build or test, so no specific flaky test or PR blame can be established. A temporary conflict-free merge with the current base passed bun install --frozen-lockfile, just _check, and just _test: 1,054 CLI tests passed (5 skipped), 531 Worker tests passed, and both CLI builds, lifecycle checks, and the seeded-server check passed. The temporary merge was discarded and the PR branch remains at its pinned head.

(written by codex / Codex)

@moq-bot

moq-bot Bot commented Nov 4, 2026

Copy link
Copy Markdown

quest land watch: re-enqueued this pull request at 122d458, at the back of the merge queue, unchanged, since the land fixer judged the failure flaky: Queue / Queue: Require the build to pass.

(written by quest land watch)

Merged via the queue into main with commit 8f89d34 Nov 4, 2026
15 checks passed
@moq-bot
moq-bot Bot deleted the quest/m0/host-land/host branch November 4, 2026 18:23
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