Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,15 @@

Each released version has a section headed with its version, such as `## 3.4.0 - 2026-09-23`. The section holds a summary paragraph and then one bullet per change a user, integrator or operator would notice. The release workflow copies that section onto the GitHub Release page and stops if it is missing, empty or still says Unreleased. Work that has merged but not shipped goes under `## Unreleased`; the version bump pull request renames that heading to the new version.

## 3.6.0 - 2026-09-27

The menu bar now shows what Slopcamera is doing instead of only listing outputs: the render or generation in progress, how the last job ended, and your last known credits balance. Its login item moves to the shared desktop-foundation helper, and the agent support verbs move out of root help onto their own page.

- The menu opens with a status row for the current render or generation and a warning row when the last job failed, a credits row that flags a low balance, the three newest outputs, "Open outputs folder", Open at login, "Updates & support…" and Quit. Diagnostics sit behind the Option alternate and the tray icon shows an attention tone only when something needs you.
- `slopcamera menubar install|uninstall|status|start` manage the menu bar's login item through the shared LaunchAgent helper. Install retires the old `com.hraness.slopcamera.menubar` plist only when it is exactly the file earlier releases wrote, explains the macOS login-item notice before it appears, and refuses a copy another user or program could change.
- `slopcamera menubar` stays off root help while released packages don't include the companion; `slopcamera help menubar` and `docs/menubar-release.md` still document building and installing it from source.
- Root help drops the agent `slopcamera support` verb list for a single optional-support line; the same verbs are documented under `slopcamera help advanced` and keep working.

## 3.5.0 - 2026-09-26

Browser overlay scenes with post-processing, bloom, depth of field or emissive standard materials render as written, and local vectorization keeps its deadline on loaded machines. The menu bar, the face analyzer build and root help now explain themselves in plain words: an already-running menu bar counts as success, and macOS notices are explained before they appear.
Expand Down
2 changes: 1 addition & 1 deletion apps/desktop/application/operation.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import type { z } from "zod";

import type { ApplicationContext } from "./context";

export const SLOPCAMERA_APPLICATION_TOOL_VERSION = "slopcamera-3.5.0" as const;
export const SLOPCAMERA_APPLICATION_TOOL_VERSION = "slopcamera-3.6.0" as const;

export const OPERATION_KINDS = [
"scene.audit",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -580,7 +580,7 @@ describe("media.html-overlay application operation", () => {
version: 1,
});
const output = HtmlOverlayOutputSchema.parse(result.output);
expect(observedGeneratorVersion).toBe("slopcamera-3.5.0");
expect(observedGeneratorVersion).toBe("slopcamera-3.6.0");
expect(result.receiptReference).toBe(output.receipt.path);
const receipt = HtmlOverlayReceiptSchema.parse(JSON.parse(
await readFile(join(root, output.receipt.path), "utf8"),
Expand Down
2 changes: 1 addition & 1 deletion apps/desktop/application/registry.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ describe("operation registry", () => {
const descriptions = registry.list().map(operation => (
registry.describe(operation.kind, operation.version)
));
expect(SLOPCAMERA_APPLICATION_TOOL_VERSION).toBe("slopcamera-3.5.0");
expect(SLOPCAMERA_APPLICATION_TOOL_VERSION).toBe("slopcamera-3.6.0");
expect(registry.list().every(operation => (
operation.inputSchemaId.startsWith("slopcamera.operation.")
&& operation.outputSchemaId.startsWith("slopcamera.operation.")
Expand Down
2 changes: 1 addition & 1 deletion apps/desktop/cli/commands.ts
Original file line number Diff line number Diff line change
Expand Up @@ -363,7 +363,7 @@ import {
workflowRunStore,
} from "./workflow-runs";

export const SLOPCAMERA_VERSION = "3.5.0";
export const SLOPCAMERA_VERSION = "3.6.0";

// Legacy direct renders predate per-target output contracts. Keep them
// bounded generously enough for long-form production while preventing one
Expand Down
6 changes: 3 additions & 3 deletions apps/desktop/dist/cli/main.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/cli.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading