Skip to content

Prepare Pebrel 1.9.0 reader updates and native Windows ARM64 release - #241

Merged
Kuddev merged 20 commits into
mainfrom
release/1.9.0-final
Sep 22, 2026
Merged

Kuddev merged 20 commits into
mainfrom
release/1.9.0-final

Conversation

@Kuddev

@Kuddev Kuddev commented Sep 21, 2026

Copy link
Copy Markdown
Owner

Result / 用户结果

Markdown opens as a selectable, read-only reader. Code-block language menus still change syntax highlighting without changing the document or copied code; source editing remains explicit. Agents and backup layouts are centered, CLI paths and Hook status are separate, Agent logos use larger SVGs, SSH glyphs are centered by their visible bounds, and the backup navigation/search entry is hidden.

The 1.9.0 candidate includes a native Windows ARM64 portable ZIP in addition to the existing platform assets. The bilingual release notes and Changelog cover the final behavior and credit all six verified contributors with avatars and PR links. This PR prepares CI artifacts and a draft Release; publication remains a separate maintainer decision.

Design / 设计边界

  • UI changes remain in the GPUI file reader and settings views. Reading-only language choices belong to the document view, survive row eviction, and are invalidated when the document outline changes.
  • Existing Hook inspection and settings routes remain authoritative. No new persistent setting, production dependency or background service is added.
  • ARM64 runs on a native runner and uses the shared product builder. ZIP packaging verifies the application's, helper's and console runtime's PE machine types. The aggregate requires an ARM64 conformance report for the same commit.
  • Windows x64 installers and automatic installation remain unchanged; ARM64 is a native portable ZIP. Historical release manifests remain valid. Rationale: architecture/notes/packaging/2026-09-21-windows-arm64-portable.md.

Evidence / 验证依据

  • Markdown file-view tests: 94 passed, including actual language-menu selection, row eviction, clipboard content, read-only edits and source-mode transitions.
  • Focused Agents, navigation, backup and SSH UI tests: 12 passed.
  • Release/helper/branding tests: 51 passed. PE-header fixtures accept both architectures and reject mismatched labels/helpers and malformed files.
  • Architecture, platform-cfg budget, Rust formatting, YAML parsing and added-line product-name checks passed. Translation contracts remain unchanged after the previously passing 20-test run.
  • The preceding Windows candidate was launched independently and its executable bytes matched the package. Final cross-platform native tests, ARM64 packaging and release conformance are delegated to CI for this exact candidate.
  • No comparative performance claim is made from these checks. UI interaction tests do not replace all native theme/DPI visual review.

Required Review / 必须确认

  • Followed the contribution, architecture and project constraints.
  • Responsibilities remain with their existing owners; shared rules are not duplicated.
  • Architecture checks pass against the PR base without increasing budgets.
  • Success/failure and interaction regressions are covered; native CI remains required.
  • UI text uses typed message identifiers and existing catalog contracts.
  • No governance rule is relaxed; packaging rationale and positive/negative fixtures are included.

…breaker

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.
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.
…obes

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.
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.
@Kuddev
Kuddev marked this pull request as ready for review September 22, 2026 14:41
@Kuddev
Kuddev merged commit 0110c7c into main Sep 22, 2026
9 checks passed
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