Skip to content

feat(packaging): apply approved icons and coherent build identity - #318

Merged
itlezy merged 13 commits into
mainfrom
chore/packaging-identity
Nov 11, 2026
Merged

itlezy merged 13 commits into
mainfrom
chore/packaging-identity

Conversation

@itlezy

@itlezy itlezy commented Nov 11, 2026 •

Copy link
Copy Markdown
Contributor

Apply the approved pixel donkey consistently to Windows resources, Linux icon inputs and the embedded WebUI. Add valid Windows Explorer properties while preserving the long-path manifest. Reuse authoritative version/channel/source constants across CLI, REST and About, with architecture/build details in the existing display and optional OpenAPI fields. Approved PNG/ICO bytes are unchanged; no new endpoint, setting or generated timestamp is introduced.

The native release smoke uses explicit source/version/CPU/channel identity. Existing profile-ownership checks run for Windows/Linux, while macOS retains its normal scope. The shared step now supplies its required workspace roots and passes channel through a shell-independent Actions expression. The musl host source-cache target is explicitly bound and created before the existing cache fence. No Harness preflight is bypassed.

Parent-coordinated consolidation: the branch includes current reliability/profile/main work and retains Rustix 1.1.6. Final source is 00f8451ca8f6f914205e97c55e90beb5b81a1152; release pins refer to merged Builder a508474e81f641e2a1ba1a6f7c8535e8ab358ddf, Harness 86e32b1d547ca68c294350ad45d70d79b987d2bb and Tooling d406cfd8e6f3e3b6f04e377ac469c413293f81d9. There is no remaining temporary Builder topic pin. Builder #52 follows these Rust icon assets onto main; CI045 then adopts the final Builder/image through its own reviewed consumer change.

Validation:

  • Scoped Core tests passed (474 unit tests plus integration/doctest suites), REST 144 and daemon 98 at the earlier product-source checkpoint. Full WebUI validation passed 32 unit tests, all 17 browser tests, TypeScript and production build; evidence under reports/packaging-identity/webui/.
  • Actual Windows candidate packaging and strict CLI/REST/About proof passed at 64688989; Win32 inspection verified all seven ICO payloads, numeric/descriptive resource properties and longPathAware=true. Actual second candidate 18f09ef2 also passed controlled Search/About screenshot capture, 14 panel backends, same-profile verified partial restart and 12 MiB delivery. All nine operator runtime files stayed byte-identical. Evidence: reports/packaging-identity/actual-windows/, actual-windows-18f09ef2/proof.json and reports/rust-release-package/f49df7c6f867/.
  • Unpublished candidate 2, run 43069143037, is immutably bound to earlier a42edbe3 / reviewed Builder e9b93914. Both GNU CPUs produced DEB+AppImage with blocking desktop-file-validate/AppStream validation. Downloaded package/SBOM hashes and source/workflow identities match; all four packages contain exactly one correct AppStream component, the deployed approved screenshot URL and all eight approved hicolor icons. Signed official APT update/install succeeded on the first attempt; the fallback was not exercised. Evidence: reports/packaging-identity/candidate-43069143037/native-linux-artifact-inspection.json and retained provisioning receipts.
  • Both native musl CPUs in that run passed cache fencing, Clippy, packet diagnostics, full workspace/VPN-egress tests and normal lifecycle. Hash-bound receipts prove static correct-CPU ELF, verified partial restart, 12 MiB delivery and graceful shutdown. Evidence: candidate-43069143037/musl-proof-summary.json under the same reports directory.
  • Candidate 2's four strict native lifecycle jobs failed before daemon launch: Windows received an empty Bash-style channel argument under PowerShell; GNU lacked workspace ROOT. These are corrected in the final source above, with seven focused workflow tests and normal commit/push hooks passing (reports/local-check/emulebb-rust/20261111T174816Z-91487cb7). The failed run is not overall qualification; strict channel/profile-ownership acceptance still requires an actual successful combined-main candidate/nightly. No failed job was retried unchanged.
  • Final-source Single active PR, Required CI and Required CodeQL all passed at exact 00f8451ca8f6f914205e97c55e90beb5b81a1152; all primary Windows/GNU/musl builds and REST passed. Optional platform results remain visible in the linked check list. Actual public nightly, complete OCI/provenance and current strict native lifecycle proof remain separate. No release, Beta3 readiness, APK or long soak is claimed.

Related to #306 / RUST-CI-047. The active Slint sweep removed obsolete dependencies, profiler attribution and stale package copy; defensive stale-UI cleanup/rejection and regression fixtures remain intentionally. Retained history and archived artifacts were preserved.

@itlezy itlezy added the parallel-approved Maintainer-approved exception for deliberately parallel human pull requests label Nov 11, 2026
@itlezy
itlezy force-pushed the chore/packaging-identity branch from 6468898 to 18f09ef Compare November 11, 2026 13:14
@itlezy
itlezy force-pushed the chore/packaging-identity branch from 18f09ef to eae1086 Compare November 11, 2026 15:28
@itlezy
itlezy force-pushed the chore/packaging-identity branch from eae1086 to a42edbe Compare November 11, 2026 16:47
Threepwood-7 added 12 commits November 11, 2026 18:39
…-CI-047)

Reuse compiled version/channel/source constants from one Core owner, retaining daemon exports. Add optional contract fields on the existing REST app response, CLI long-version identity, standard Windows Comments metadata and accessible About disclosure in the existing WebUI header. Preserve approved icon bytes, numeric resource versions, long-path manifest, versioned API and local unknown/development defaults; add no clock, endpoint or config.
Delegate signed Ubuntu source handling, bounded retries and deadlines to the pinned Builder provisioning command. Preserve every release producer and downstream proof gate.

Unpublished consumer checkpoint: the parent must bind EMULEBB_BUILD_REF to the merged provisioning producer before delivery.

Refs #302
Use the exact green Builder #52 source only for the parent-coordinated Windows/Linux manual candidate. Normal source eligibility, candidate-only reduced profile and publication gates remain intact. Restore the actual merged Builder pin before final Rust PR integration; Rust icons then allow Builder #52 to merge, and CI045 adopts the final Builder/image source.

Validate through existing release provisioning/profile/source-binding regression owners; no publication or prepared-image dependency is enabled.
@itlezy
itlezy force-pushed the chore/packaging-identity branch from a42edbe to fd17ed2 Compare November 11, 2026 17:40
…047)

Supply both workspace roots required by profile ownership validation and render the fixed channel input before Bash or PowerShell executes.
@itlezy
itlezy merged commit 4466518 into main Nov 11, 2026
26 checks passed
@itlezy
itlezy deleted the chore/packaging-identity branch November 11, 2026 19:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

parallel-approved Maintainer-approved exception for deliberately parallel human pull requests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant