Skip to content

v0.22.0

Choose a tag to compare

@github-actions github-actions released this 11 Oct 11:35
· 79 commits to main since this release
8e09e0e

Project Observatory on Windows and Linux: a desktop app with a signed Windows installer, the tick, the server
and maintenance as per-user Task Scheduler tasks or systemd units, updates that work on Windows, and the backup
passphrase in the Credential Manager. The Mac app is universal again for Intel Macs. The companion plugin
observatory-log moves to 0.22.0.

Changed

  • The vendored fabric-service kit is fabric-agent-adapter 0.8.2 (was 0.5.0): Windows and Linux support
    (contract DEC-0032, DEC-0033) — the instance lock, the token-file ACL rule, Task Scheduler and systemd in
    the descriptor — which the always-on server needs on Windows (W4b). serverd --uninstall relies on the
    kit's own wait for launchd to unload the job. The conformance probe's two new checks the server does not
    declare yet are NOT_RUN (usage.report: OBS-53).

Added

  • The Windows and Linux app (W8a, desktop/, Tauri 2): opens on this workspace's dashboard — live when its
    server answers, else the built pages under a banner with «Start server», else «Build the dashboard»; Settings
    for the program, the workspace and the language; first-run messages that name the install or full init
    step; stays in the tray when its window closes. Built as an NSIS installer and an AppImage/.deb by
    .github/workflows/desktop.yml; the release builds and Authenticode-signs it (W9). It updates itself from the
    release's latest.json, each package minisign-signed: «Restart to update» in the menu and the tray (W8c). The
    assistant window (Ctrl+Shift+A) asks the workspace's assistant, with each answer's evidence and Stop (W8b).
  • Updates on Windows (W6): full update --apply stops and restarts the tick and server tasks (systemd units
    on Linux) around the install, and replaces the project-observatory.exe it may be running from — moved aside
    first, put back if the install fails.
  • The server's always-on state off macOS (W4c): «Start server» in an app restarts the Task Scheduler task
    or systemd unit of an installed server instead of calling launchctl; server.silent watches that
    installation too.
  • Windows paths and tools (W7): the default workspace is %LOCALAPPDATA%\project-observatory-full (an
    existing ~\.local\share one stays); tools npm installs as .cmd (heroku, claude) start by name; the
    CLI and the scheduled jobs write UTF-8. README → Install has the PowerShell steps.
  • The backup passphrase in the Windows Credential Manager (W5): a generic credential per workspace, kept
    for this account on this machine (CredWriteW/CredReadW, never roaming, the value never an argument);
    a store that does not answer is not an empty one. The file fallback is owner-only on Windows too (a
    protected ACL instead of mode bits).
  • osschedule: background jobs under Windows Task Scheduler and systemd (W4a). One job description, a
    per-user task created from XML (InteractiveToken, no stored password, pythonw.exe through
    tools/scheduled.py, so no console window opens) or a systemd user unit; tools/install_launchd.py and
    tools/serverd.py --install use it off macOS, the server's fabric-service descriptor naming task-scheduler
    or systemd (W4b).

Fixed

  • The Mac app is universal. macos/scripts/build-app.sh builds arm64 and x86_64 and refuses an
    executable missing either slice; up to 0.21.0 the release carried the runner's architecture only, so
    the app did not open on an Intel Mac (PassionCode.ai platforms rule PL-01).

Verify

gpg --verify SHA256SUMS.asc SHA256SUMS      # key 63B30DC324BD697487AA31944FAFB8AEC803B6A7
shasum -a 256 -c SHA256SUMS --ignore-missing
gh attestation verify <file> --owner passioncode-ai --signer-repo passioncode-ai/.github

The organization's public key: https://github.com/passioncode-ai/.github/blob/main/release-signing/passioncode-release-signing.asc