Skip to content

Prepare themed picker for public npm release - #12

Merged
Lauritz-Timm merged 7 commits into
mainfrom
agent/theme-effort-dropdown
Jul 30, 2026
Merged

Prepare themed picker for public npm release#12
Lauritz-Timm merged 7 commits into
mainfrom
agent/theme-effort-dropdown

Conversation

@Lauritz-Timm

@Lauritz-Timm Lauritz-Timm commented Jul 30, 2026

Copy link
Copy Markdown
Owner

Summary

  • replace native effort/scope selects with compact OpenCode-themed, keyboard-complete listboxes
  • verify Apply to all plus a task-specific model/effort override through the native GUI and the installed npm package in both GUI and PTY-backed TUI flows
  • expose independent native picker CI checks for Linux x64, Linux ARM64, macOS ARM64, Windows x64, and Windows ARM64
  • validate each CI runner's Bun/Rust host and produced executable architecture before its native ready-protocol smoke
  • retry only a transient Windows hosted-runner startup timeout once; crashes, protocol failures, and repeated timeouts still fail immediately
  • record OpenCode 1.18.7 and 1.18.10 as the exact active compatibility pair, retaining 1.18.9 as archived history
  • split candidate automation from the final manual-evidence preflight and require the public-repository gate again on the exact SHA that will be tagged
  • fetch and structurally validate Apple's notarization log, reject warnings/issues, verify Gatekeeper acceptance, and make signing credential cleanup fail-safe
  • exercise the Swift notarization-log policy on the macOS ARM64 CI runner with null, empty, warning, and error fixtures
  • document npm's required trusted-publisher action and the complete five-manifest version contract
  • upgrade official GitHub Actions to pinned Node 24 revisions and keep setup-node package-manager caching explicitly disabled

Validation

  • bun test: 261 passed, 1,724 assertions
  • bun run typecheck
  • bun run check:coverage: 82.73% line coverage
  • bun run test:package: installed tarball passed through a loopback-only registry with Node and Bun consumers
  • CI and publish workflow YAML parsed successfully
  • extracted macOS signing shell passed bash -n
  • bun run check:picker-host: real Linux x64 artifact and host verified
  • native Linux ready smoke passed under Xvfb/Openbox
  • bun run test:picker:rendered: 81 Firefox assertions
  • cargo test --manifest-path picker/src-tauri/Cargo.toml --locked: 3 passed
  • bun run check:packaging
  • bun run check:notices
  • bun run check:release-version
  • real OpenCode single-task and same-agent FIFO integrations
  • native GUI smoke: GPT-5/High globally, reviewer GPT-5 mini/Medium
  • installed npm package GUI and TUI: child-model/High globally, second task second-child-model/Medium
  • Final CI run for e666b94: all 12 jobs passed, including all five independently named OS/architecture picker jobs and the macOS notarization-log fixture test
  • OpenCode compatibility run: OpenCode 1.18.7 and 1.18.10 passed
  • CodeQL JavaScript/TypeScript, Rust, and Actions analysis passed on the same head SHA

Live release configuration

  • main protection is strict and requires all five target-specific picker checks; the obsolete aggregate Picker build context is removed
  • repository public/security gate passes on current main, including immutable releases, private vulnerability reporting, Dependabot security updates, protected release tags, and exact-SHA CI
  • release-signing-macos, release-signing-windows, and npm-bootstrap environments exist with owner approval and deployments restricted to v* tags
  • environment credentials remain intentionally unset; real Apple, Windows, and short-lived first-publish npm credentials must be supplied by the owner

Release follow-up

This remains a draft until the manual TUI/Desktop evidence is completed on the final candidate SHA, merged as the sole evidence-file change, and exact-SHA CI plus check:public-repo pass on that merged commit. PR review policy also still needs an independent reviewer, unless the owner deliberately uses the configured PR-only bypass.

Dependabot alert #4 is confirmed as transitive glib 0.18.5 / RUSTSEC-2024-0429. Dependabot has no compatible update, the affected API is unused by repository source, and SECURITY.md records the rationale. The owner still needs to explicitly accept/dismiss that alert or defer release for the upstream Tauri/GTK migration.

Add compact themed model and effort controls, full global-plus-row native integration coverage, rolling OpenCode compatibility checks, consolidated public documentation, and stricter packaging/repository release gates.
Expose independent Linux x64, Linux ARM64, macOS ARM64, Windows x64, and Windows ARM64 checks with native host and binary validation. Keep the exact OpenCode compatibility history release-bound.
Install the exact tested OpenCode plugin peer so npm registry publication races cannot make the package smoke nondeterministic.
Retry only the Windows hosted-runner startup-timeout case once while preserving fail-fast behavior for crashes, protocol failures, and repeated timeouts.
@Lauritz-Timm
Lauritz-Timm marked this pull request as ready for review July 30, 2026 16:38
@Lauritz-Timm
Lauritz-Timm merged commit 2a0fbb3 into main Jul 30, 2026
12 of 17 checks passed
@Lauritz-Timm
Lauritz-Timm deleted the agent/theme-effort-dropdown branch July 30, 2026 16:42
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