Skip to content

ci: report required checks on push, pull request, and merge queue - #75

Closed
jonbeckman wants to merge 2 commits into
masterfrom
cursor/required-checks-merge-queue-0dda
Closed

jonbeckman wants to merge 2 commits into
masterfrom
cursor/required-checks-merge-queue-0dda

Conversation

@jonbeckman

@jonbeckman jonbeckman commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Required pull request checks now run on push to master, on pull_request, and on merge_group (checks_requested). Check context strings are unchanged. Deploy and Deploy Preview stay disabled. This pull request does not add a deploy trigger, a prod environment, or a secret-scope change. release.yml is untouched, so it does not conflict with #74.

This change has no product behavior. It uses release:none. Operators still publish with Tegami as vX.Y.Z tags. No .tegami/ entry.

Required check contexts

These are the strings GitHub shows. No context was renamed. Analyze (javascript-typescript) and Analyze (actions) are literal job names. They match the previous default-setup contexts and do not come from a matrix value.

Check context Workflow Job
Repository validation Validate (.github/workflows/validate.yml) validate
Cloudflare end-to-end flows Validate (.github/workflows/validate.yml) e2e
Build release preview Tegami PR Preview (.github/workflows/tegami-pr-preview.yml) preview
Analyze (javascript-typescript) CodeQL (.github/workflows/codeql.yml) analyze-javascript-typescript
Analyze (actions) CodeQL (.github/workflows/codeql.yml) analyze-actions
actionlint Validate (.github/workflows/validate.yml) validate (reviewdog check from “Lint GitHub Actions workflows”)
CodeQL Code scanning upload from the CodeQL workflow Not a job. The code scanning app posts this context when analysis results are uploaded.

Build release preview builds the Tegami preview on pull_request only. On push and merge_group the same job reports success and skips the preview steps, so the required check is not left pending.

Cloudflare end-to-end flows already runs when the event is not pull_request, so a merge group runs it. The checkout uses the pull request head SHA when that field is present, and github.sha for push, merge group, and dispatch. The job does not read a pull request number. Fork pull requests still skip it.

Workflows with merge_group

These workflows now include merge_group: types: [checks_requested] for base branch master:

  • .github/workflows/validate.yml
  • .github/workflows/tegami-pr-preview.yml
  • .github/workflows/codeql.yml

These workflows do not get merge_group. They are not required pull request gates:

  • .github/workflows/deploy.yml and .github/workflows/preview.yml stay disabled. Invert guards remain.
  • .github/workflows/release.yml still runs from workflow_run after Validate on master.
  • .github/workflows/agent-container-images.yml stays workflow_call / workflow_dispatch.
  • .github/workflows/tegami-pr-comment.yml still posts only after a successful pull request preview.

Release tag pattern

Existing tags are v1.5.0, v1.6.0, v1.7.0, and v1.8.0. Tegami publishes an immutable vX.Y.Z tag (v*).

Prod promote is not applicable

SolZeroAI/platform is public OSS. GitHub Actions must never deploy preview or prod. Deploy and Deploy Preview stay disabled. This pull request does not add release: published or any other deploy trigger, and it does not add a prod environment.

CodeQL default setup

.github/workflows/codeql.yml is advanced setup so CodeQL can run on merge_group. Default setup (dynamic/github-code-scanning/codeql) cannot. Disable default setup when this workflow is on master. GitHub rejects an advanced setup upload while default setup stays enabled.

gh api -X PATCH /repos/SolZeroAI/platform/code-scanning/default-setup -f state=not-configured

This run could not change that repository setting.

actionlint on release.yml

The cache-call finding on master is already fixed. .github/workflows/release.yml sets cache-mode: read on the agent-container-images call (from #70). actionlint 1.17.0, the version CI runs, reports no findings on that file. This pull request does not edit release.yml.

Validation

  • actionlint 1.17.0 on all workflows: 0 errors
  • nub run typecheck
  • nub run lint (existing warnings, 0 errors)
  • nub run format
  • nub run config:check and nub run test were not run. This change is workflow and docs only.

Checklist

  • I added or updated tests for behavior changes, or explained why tests are not needed.
  • I updated documentation and config examples when behavior or configuration changed.
  • I added a .tegami/ release entry, or explained why this pull request uses release:none.
  • I ran nub run config:check, nub run typecheck, nub run lint, nub run format, and nub run test.
  • I did not include credentials, private data, internal URLs, or organization-specific defaults.
  • I updated THIRD_PARTY_NOTICES.md for new third-party code or separately licensed assets.

nub run typecheck, nub run lint, and nub run format passed. nub run config:check and nub run test were not run. No third-party code was added.

Open in Web Open in Cursor 

Note

Low Risk
Workflow and documentation only; no application runtime changes. Operators must disable CodeQL default setup when merging to avoid upload conflicts.

Reviewed by Cursor Bugbot for commit 89bfdf7. Bugbot is set up for automated code reviews on this repo. Configure here.

Add merge_group triggers for the checks that gate pull requests, and move
CodeQL to a workflow that keeps the existing Analyze check names. Release
preview reports success outside pull requests. release.yml stays unchanged.

Co-authored-by: Jonathan Beckman <jonathantbeckman@gmail.com>
@cursor

cursor Bot commented Oct 12, 2026

Copy link
Copy Markdown
Contributor

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: 56b238b4-097c-4310-821f-dc086b100622)

@jonbeckman jonbeckman added the release:none label Oct 12, 2026 — with Cursor

@cursor cursor Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Approved. Cursor Bugbot was skipped (usage limit), so that signal was omitted, and no approval policy requires human review. This automation had no prior approval on the current head.

Open in Web View Automation 

Sent by Cursor Approval Agent: Pull Request Router and Approver

@github-actions

github-actions Bot commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

Tegami

This repository uses Tegami to manage releases. When your changes affect published packages, add a changelog file under .tegami/ before merging.

Create a changelog → · Changelog format

Release preview

Package Bump Version
solzero minor 1.8.0 → 1.9.0

This PR does not add changelog files. Pending changelogs from other branches are included in the preview above.

Run nub run tegami locally to create a changelog interactively.

Managed by Tegami.

@github-actions

github-actions Bot commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

🟢 e2e solzero-core: 33 passed

10 agent steps · 33 model calls · 64.8k tokens · $0.0155

All 33 tests in 13 files
Test Agent Time
🟢 tests/accounts.e2e.ts · 3 passed 5.0s
🟢 create, use and revoke an isolated user API key 2.6s
🟢 Better Auth 1.7 account APIs select the local account row id 187ms
🟢 Accounts settings shows GitHub as unlinked without OAuth providers 2.2s
🟢 tests/admin.e2e.ts · 1 passed 4.2s
🟢 administrator pages show live control-plane configuration 4.2s
🟢 tests/advanced-sessions.e2e.ts · 4 passed 2 steps · 8 calls 31.7s
🟢 incognito sessions stay outside normal lists but open directly 3.1s
🟢 session MCP definitions and subagent preferences persist 2 steps · 8 calls 11.7s
🟢 an attachment-bearing prompt can be cancelled without leaving processing 1.7s
🟢 isolate delegation records child events and returns the result 15.2s
🟢 tests/api-contract.e2e.ts · 1 passed 241ms
🟢 exported API key and session schemas decode actual Worker responses 241ms
🟢 tests/auth.e2e.ts · 4 passed 11.8s
🟢 sign-in gate protects every application route 2.4s
🟢 credential sign-in opens the requested settings page 4.2s
🟢 anonymous callers cannot access any protected API group 107ms
🟢 sign-out removes authenticated UI access 5.0s
🟢 tests/auth.setup.e2e.ts · 2 passed 4.7s
🟢 authenticate isolated admin 3.4s
🟢 authenticate isolated peer 1.4s
🟢 tests/bots.e2e.ts · 1 passed 2 steps · 6 calls 9.1s
🟢 create a bot and manage a temporary routine through the UI 2 steps · 6 calls 9.1s
🟢 tests/harness-tools.e2e.ts · 2 passed 44.8s
🟢 opencode executes multiple shell tools, follows up, and persists both turns 21.8s
🟢 codex executes multiple shell tools, follows up, and persists both turns 23.0s
🟢 tests/session-transfer.e2e.ts · 1 passed 1.3s
🟢 admin authentication transfer redeems once and retains its deep link 1.3s
🟢 tests/sessions.e2e.ts · 5 passed 1 step · 3 calls 43.6s
🟢 session tools, archive and restoration persist through the real Worker 1 step · 3 calls 7.4s
🟢 a second account cannot read or mutate another account's session 332ms
🟢 isolate executes a real prompt and persists its output 8.2s
🟢 opencode executes a real prompt and persists its output 14.4s
🟢 codex executes a real prompt and persists its output 13.3s
🟢 tests/settings.e2e.ts · 5 passed 3 steps · 9 calls 33.7s
🟢 all settings categories load real data 6.2s
🟢 runtime default persists after reload 5.8s
🟢 MCP deep link and legacy settings URL open the MCP tab 1 step · 3 calls 5.4s
🟢 secret editor creates, finds and deletes a disposable secret 1 step · 3 calls 6.8s
🟢 theme preference survives reload 1 step · 3 calls 9.4s
🟢 tests/skills.e2e.ts · 1 passed 1 step · 3 calls 10.1s
🟢 global skill defaults and per-user preferences persist independently 1 step · 3 calls 10.1s
🟢 tests/workflows.e2e.ts · 3 passed 1 step · 4 calls 16.5s
🟢 workflow authoring, rename, export, disable and archive persist 1 step · 4 calls 14.3s
🟢 manual workflow executes JavaScript and stores a real R2 artifact 2.2s
🟢 invalid workflow definitions are rejected before storage 100ms

e2e 0.17.0 · 4m 18s · local-cloudflare · run artifacts

Keep master's Nub 0.9.6 setup and current action references. Keep
merge_group triggers for the required checks and the CodeQL advanced
setup. Reference CodeQL actions by major tag.

Co-authored-by: Jonathan Beckman <jonathantbeckman@gmail.com>
@cursor

cursor Bot commented Oct 21, 2026

Copy link
Copy Markdown
Contributor

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: 6bd84006-9190-415c-9f23-66c1b4e85729)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants