clippy cannot run advisory: the workflow contract forbids continue-on-error
and several crates deny lints, so it joins after the backlog is cleared.
The trigger contract now requires the default pull_request activity types
plus ready_for_review instead of forbidding a types list.
Pull requests: `lint (fmt, clippy)` and `pr-size` join the required checks
together with all five `Tests (<os>)` jobs and both `Release workspace` jobs,
so a PR can no longer merge with a red platform. Draft PRs run the three fast
platforms on every push; marking ready for review adds Intel Mac and Windows
ARM64. `pr-size` labels size/S-XL and fails above 1500 changed source lines
unless a maintainer adds `size-exempt`.
Issues: the bug form now asks for OS version, shell, program in the pane,
connection type, non-default settings and mandatory logs/screenshots, with
log paths per platform. `issue-labels` turns the dropdowns into os:/area:
labels, flags regressions, and parks reports without usable steps, evidence
or a version as needs-info with a checklist comment; an edit that fills the
gaps clears the label. config.yml pointed at the old nebula repository.
The release run re-invoked the Full native tests workflow and waited for it
before aggregating packages. That workflow already runs for every pull
request, merge group and main push, so the repeat added no coverage while
its macOS Intel job queued behind the Intel package build and became the
critical path (60 minutes end to end, packages done after 28). Aggregation
now depends on the packaging jobs only; each package still runs its own
runtime conformance and the aggregate still validates every report.
Align the 1.9.0 notes and CHANGELOG entry with the 1.8.2 format (prefixed
bilingual entries), record the session-breaker fix and the sponsor page,
and date the entry to the release day. Remove the ARM64 diagnostics
workflow and its two probe scripts from the release tree; the CI workaround
script stays because the release workflow runs it.
Settings → Home → Project and support gains a Sponsors row that opens an
in-app page (logo on the left, bilingual introduction on the right) with a
single sign-up link carrying the project's attribution parameters. Both
READMEs add a matching Sponsors table and the community Discord invite.
snapshot_session() pinned boot_attempts at the launch value whenever any
pane still had an unconfirmed AI restore target, so the 1 Hz autosave never
reset the crash-loop counter. A Codex conversation waiting at its startup
prompts (hook review, directory choice, "open in another app") therefore
counted every normal exit as a failed start, and the third launch moved the
whole workspace to session.crashed.json.
The breaker only answers "did this launch reach its first autosave"; the
restore target is still persisted through session_agent() and resumed on the
next launch. Drop the coupling and the recovery_boot_attempts field, and add
a GPUI regression that restores an unconfirmed Codex target on the third
attempt and asserts the snapshot reports zero attempts.
Keep the owned GUI test executable attached to its CMD or PowerShell parent, control the font layout fixture independently of host preferences, and gate the exit-prompt UI test on GPUI test support.
Include cloud settings, panel sizing, command groups, Agent integration settings and runtime input fixes from main. Bind native Codex recovery to the live pane process and preserve verified IDs; add CMD recovery choices and an explicit exit path when identity discovery fails.