Skip to content

[v0.7] Release certification #79

Closed

Description

@JUhalt

Goal

Certify v0.7.0 — Deadline Center (#28, #61, #76; PR #78). It ships first as v0.7.0-rc.1 on Preview, then as Stable. Record evidence for each gate here.

What changes for certification

v0.7 replaces the Reminders page with Deadlines and adds a user-initiated publication check. Unlike v0.6, it migrates the library: Schema 6 → 7, which adds remembered publication matches. The migration validates the library first and then advances only the schema marker, keeping the old marker as schema.v6.bak. So after an upgrade:

  • manuscripts.json, authors.json, settings, automatic backups, and managed files are byte-identical;
  • schema.json reads 7, and schema.v6.bak holds the previous marker byte-for-byte;
  • v0.6 refuses to open the upgraded library (expected; the upgrade notes say to keep a v0.6 backup).

Evidence comes first: the candidate verification JSON, the fixture collector JSON for data outcomes, and harness or installed-app captures for UI. A disposable VM is used only for clean install, package upgrade, and the live updater.

Candidate (rc.1)

  • CI green on the release commit (4efb3fb, run 36421144850)
  • Local candidate (ManualCertification/Build-ReleaseCandidate.ps1 -Version 0.7.0-rc.1): VerifiedLocalCandidate from clean commit 4efb3fb, 657 tests passed, product version 0.7.0-rc.1+4efb3fb, assembly and file 0.7.0.0, published DLL 4b1cad4a…6da18 (the same in the nupkg and the portable zip), preview full package f74e37e1…a292e6
  • Published Preview asset audit: fresh download, asset set, SHA-256, feed metadata, and DLL identity match the tagged source. v0.7.0-rc.1 was tagged on merge commit f433a5b (PR #78) and published by release run 36430820779. The audit found every asset matching its size, GitHub digest, and SHA256SUMS; the sums covering exactly the other assets; the Preview feed listing the rc.1 full package and its delta; and the full and portable DLLs identical (5979ef13…d809b9, product version 0.7.0-rc.1+f433a5b, file 0.7.0.0).

Installed checks (disposable VM)

  • v0.6.0 → v0.7.0-rc.1 upgrade through the live Preview updater on a synthetic library: data files byte-identical (collector JSON), schema.json = 7, schema.v6.bak = the previous marker, the library opens, and Deadlines lists the fixture's deadlines. Details below.
  • Clean install of the Stable candidate Setup: installed version and DLL hash; first run opens on the empty-library welcome. Candidate-01 (0.7.0+b4c278b, Setup 1263b55e…) on PaperRoute-v05-Cert-Clean-20260926 at 150%, after uninstalling v0.6.0 and setting its synthetic library aside (renamed, kept). First run opened on the empty-library welcome with Deadlines in the rail; About read Version 0.7.0. The published Setup is installed the same way after publication.

Native UI

  • 100%, 125%, and 150%, Light and Dark: Deadlines (every group, chips, Done folded and shown), Postpone dialog, Check for Publications (choose, results), Mark Published confirmation, Fill Blanks preview, Board with View in Deadlines →. 125% Light and Dark: the harness (board, publications, fill, about), every listed surface. 100%: Deadlines, the board, and the update prompt in the installed upgrade VM. 150%: welcome, Add Manuscript, Import & Export, Check for Publications, and About in the clean VM (two fixes, above).
  • [v0.7] Add Manuscript: first-deadline date clips at 150% scaling #76: Add Manuscript's first-deadline date shows in full at 150% ("10/12/2026" beside its drop-down button, candidate-01 in the clean VM).
  • Keyboard: Ctrl+4 opens Deadlines; Enter runs a row's first action; Up/Down move between rows. Ctrl+4 worked in installed rc.1; Enter and Up/Down are covered by automated tests.

Stable

  • Stable version and notes; local candidate. PR #81; candidate-02 VerifiedLocalCandidate from 7b6698b, 658 tests passed, DLL 16820f45….
  • Published Stable asset audit. v0.7.0, tagged on merge commit 7a2fa0b: every asset matches its size, GitHub digest, and SHA256SUMS; the sums cover exactly the other assets; the Stable feed lists the full and delta packages; the full and portable DLLs are identical (147ff97c…714a95, product version 0.7.0+7a2fa0b).
  • Live updater from an installed v0.6.0 Stable offers 0.7.0, updates, restarts, migrates to Schema 7, and leaves the data files unchanged. From the snapshot "v0.6.0 fixture (Schema 6) before v0.7" on the Stable channel, v0.6.0's own startup check offered 0.6.0 → 0.7.0; Download & Restart relaunched into v0.7.0. Collector …20260928-163807… against the v0.6.0 baseline: installed DLL 147ff97c…, byte-identical to the published asset; schema.json 6 → 7 with schema.v6.bak byte-identical to the previous marker; manuscripts.json, authors.json, managed files, the linked file, and backups byte-identical.

v0.7.0-rc.1: installed upgrade through the live Preview updater (September 28, 2026)

Guest. PaperRoute-v05-Cert-20260922, from the snapshot "v0.5.0 fixture (Schema 6) before v0.6". Installed v0.5.0's own update check offered 0.5.0 → 0.6.0 on Stable; Download & Restart installed v0.6.0 (0.6.0+cb6fbdb, DLL d717a808…, the certified v0.6.0 build). That state is kept as the snapshot "v0.6.0 fixture (Schema 6) before v0.7".

Path. In v0.6.0: Settings → Preferences → Update channel Preview → Save, then Settings → Check for Updates. The prompt offered 0.6.0 → 0.7.0-rc.1 on Preview with the rc.1 notes; Download & Restart applied it and relaunched into v0.7. The board showed View in Deadlines →, and Ctrl+4 opened Deadlines listing the fixture's revision deadline (Dec 1, in 64 days, under Later) with its journal named.

Evidence (read-only fixture collector v1.1, which also reports every schema.v*.bak; before …20260928-143153… after the v0.6.0 update and close, after …20260928-150111… after the first v0.7 launch and close):

  • Installed DLL 0.6.0 d717a808… → 0.7.0-rc.1+f433a5b 5979ef13…d809b9, byte-identical to the published, audited rc.1 DLL.
  • schema.json: 6 (3ddd0756…) → 7 (2cd3fdc5…). The new schema.v6.bak is byte-identical to the previous schema.json; schema.v5.bak is unchanged.
  • manuscripts.json (0423fd08…), authors.json (8bd66b96…), all three managed files, the linked file, and the automatic backups are byte-identical. Counts and workflow associations are identical.

Found for Stable. The update prompt opens with its release notes selected (all text highlighted), as it did in v0.6. Cosmetic; fixed on the Stable branch with the default button focused instead.

Stable candidate at 150% (September 28, 2026)

Found on candidate-01 in the clean VM and fixed on release/v0.7.0-stable (7b6698b, PR #81):

  • About PaperRoute kept its 96-DPI size while its text grew, clipping its last line. It now scales with the display (checked with the new harness about surface at 125%).
  • Check for Publications on an empty library said every manuscript was already published; it now says there is nothing to check yet.

Check for Publications itself is readable at 150%: the text wraps inside the window and the list, links, ORCID row, and buttons are all visible.

Published Setup at 150% (September 28, 2026)

After publication, the candidate was uninstalled from the clean VM and the published JUhalt.PaperRouteTracker-stable-Setup.exe (f80cfffc…) installed. The first run opened on the empty-library welcome, and About PaperRoute read Version 0.7.0, scaled cleanly at 150%, and showed the one-line description.

Result

v0.7.0 is certified and published on Stable. Every gate above is complete.

Activity

  1. JUhalt commented on Sep 28, 2026

    @JUhalt
    OwnerAuthor

    v0.7.0 is certified and published on Stable. Evidence for every gate is in the description.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions