Show render and credits status in the Slopcamera menu bar on menu kit v2 - #259
Merged
Merged
Conversation
The menu bar now reads a small status file the CLI writes around each rendering or generating command and after credits status, and shows what is running, how the last job ended (a failed job gets a plain reason and a ⚠︎ row) and the last known balance, with low credits flagged. Outputs come from desktop-foundation 0.8's OutputsSection (three newest, no duplicate submenu), the login item moves to the shared LaunchAgent helper, and diagnostics sit behind ⌥ on Updates & support. slopcamera menubar install now copies the build into place and hands over to the menu bar's own install; the old launchctl code and its com.hraness.slopcamera.menubar plist are retired. The command stays documented under help menubar but leaves root help until released packages include the binary. Nine menu fixtures, one per state, pass companion lint-menu --strict in CI. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
- The credits API sends a bare amount (25.00), so the menu now formats it as dollars in one place and every fixture feeds the API's real format instead of a hand-written $4.20. - A failed menubar install threw the whole login-item notice along with the failure; the error now starts at the helper's last x line. - The legacy LaunchAgent plist is removed only after the new login item installs, so a failed install never leaves nothing to start at login. - On Linux the menu bar and the CLI now share one state-root rule: XDG_STATE_HOME/slopcamera, with no extra cli/ level. - Status-file writes hold a small lock file, so a render finishing while credits status runs can't overwrite the other slot. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Root help now carries the single support line from support-foundation
0.6.0 ("Optional support: slopcamera support · Turn off:
HRANESS_SUPPORT=off") in both the desktop CLI and the portable
src/cli.ts help. The agent protocol verbs live under
`slopcamera help advanced` via supportAdvancedHelp(); every
`slopcamera support` verb keeps working from any caller.
With 0.6.0 a PTY caller counts as human under the shared audience rule,
so the PTY test now expects the text invitation rather than discovery
JSON.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
apps/desktop/cli/menubar-status.ts is inventoried under native-film-studio for its "Running a studio job" activity label; help.ts and the generated cli bundle pick up the X-7 support-line copy, all verified by bun run check:standalone. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ned CI digest The menu-kit v2 change added cargo test and companion lint-menu steps to the menubar job, which shifted the additive prior-coverage fingerprint. Every prior job, condition, command and deadline is unchanged; the reviewed 2026-09-27 note records the additive update. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
0thernet
added a commit
that referenced
this pull request
Sep 27, 2026
Bumps the source-candidate version pins to 3.6.0, following the 3.5.0 pattern (#253), so the menu-kit v2 work from #259 (S3 render/credits status, S2 hidden menubar command, shared LaunchAgent lifecycle) and the X-7 support-help change ship. ## Changes - package.json, src/version.ts, SLOPCAMERA_VERSION in the desktop CLI, SLOPCAMERA_APPLICATION_TOOL_VERSION and the tests and standalone check that pin them: 3.5.0 -> 3.6.0. - CHANGELOG.md gains a `## 3.6.0 - 2026-09-27` section. The release workflow copies this section onto the release page. - Rebuilt dist/ and apps/desktop/dist/cli/main.js, and the legacy identity inventory for the renamed chunk. - apps/web/published-release.json and public copy stay on 3.5.0 until v3.6.0 is verified. #252 made that possible again. Minor rather than patch: the menu bar gains product status rows, the Option-alternate diagnostics view and a new shared login-item lifecycle. ## Checks check:standalone, check:copy (230 claims), check:release-workflows (30 pass), src/cli.test.ts + src/mcp/server.test.ts (15 pass), registry.test.ts + html-overlay.test.ts (9 pass). ## After merge Push tag v3.6.0 at the merge commit; the release workflow publishes the archive from this changelog section. A follow-up PR then advertises the verified release, as #228 and #234 did for 3.4.0 and #254 for 3.5.0. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> --------- Co-authored-by: 0thernet <894119+0thernet@users.noreply.github.com> Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
The menu bar stops being a plain outputs list and shows what Slopcamera is doing:
OutputsSection(three newest, no duplicated reveal submenu), with "Open outputs folder" as the primary action.slopcamera-menubar install|uninstall|status|start);slopcamera menubar ...copies the build into place and delegates. The oldcom.hraness.slopcamera.menubarplist is retired only when it is exactly the file earlier releases wrote.menubarcommand stays documented underhelp menubarbut leaves root help until released packages include the binary (audit S2: hide rather than ship assets in this pass).HRANESS_LOCAL_APP=1.How the CLI reports status
apps/desktop/cli/menubar-status.tswritescli/menubar-status.jsonunder the CLI state root around each media command and aftercredits status-- fixed labels, times, error codes and the credits balance string only (never paths, tokens or account IDs). Writes are best-effort under a small lock file with atomic rename; reads on the Rust side are bounded and treat anything unreadable as absent.Tests
companion lint-menu --strictin CI (desktop/menubar/fixtures/).menubar.test.tscovers install delegation, legacy-agent retirement, already-running launch, helper audience and thehelp menubarpage.menubar-status.test.tscovers the lock (held lock skips, stale lock is reclaimed), owner-only files and the fixed-vocabulary contract.Review fixes
The second commit addresses the Wave B review findings: credits amounts now render as
$x.xx(the API sends bare25.00; fixtures use the real format), a failed install throws only the helper's failure lines rather than the login-item notice, the legacy agent is removed only after a successful install, the Linux state root matches the CLI's, and status writes hold a lock.Tracked as audit items S2 (hide-until-shipped) and S3 (status menu).