these 7 derivations will be built: /nix/store/d3xzkswkvbmwyr05jh51a2i6b53j42zf-statix.toml.drv /nix/store/1bsc8vnxxaiv7jr2qm05cbg483gcr6s8-statix-config.drv /nix/store/xvdcxp0kxl1b3vaz6wyz82jch44czjr4-statix-fix.drv /nix/store/znidviv2ifbdgx63vjhw8ash3wvdmrrl-flake-edit.toml.drv /nix/store/clmgnyk157430352xhvqn25hk6pjnrdj-treefmt.toml.drv /nix/store/m5b1w57x2kxbnncisr6xgdg478vzxs3v-treefmt.drv /nix/store/a5hyyqc2lciasvq6wcq3xhzf8jarwfg2-treefmt-check.drv these 9 paths will be fetched (17.6 MiB download, 55.7 MiB unpacked): /nix/store/fpkxiq8wfp2fzgb0mdyxipj2559dsq8g-deadnix-1.3.2 /nix/store/mix9rygjphddx7yrblmwad1fpmzgx65n-flake-edit-0.3.6 /nix/store/x2carbq21752vcfvxwww46rxa7z9jcg7-git-lfs-3.7.1 /nix/store/xwlvnpaavknpiclrn1w3m5ss33gy04mb-nixfmt-1.4.0 /nix/store/8rkfhfm4irfr8svhrhyhawcr57y7vg57-prettier-3.8.3 /nix/store/zmhypak4grhrashgl04sxkga3drsm2nm-shellcheck-0.11.0-bin /nix/store/ggywyw6si772ykgzcqdbd9grn9yn5f6y-shfmt-3.13.1 /nix/store/6lhsbv01hyljcb90kphni74i0rrxk23z-statix-0.5.8-unstable-2026-07-17 /nix/store/maxcrjrzy686sb8n32c31rjjcr4n05n0-treefmt-2.5.0 building '/nix/store/znidviv2ifbdgx63vjhw8ash3wvdmrrl-flake-edit.toml.drv' building '/nix/store/d3xzkswkvbmwyr05jh51a2i6b53j42zf-statix.toml.drv' flake-edit.toml> structuredAttrs is enabled statix.toml> structuredAttrs is enabled building '/nix/store/1bsc8vnxxaiv7jr2qm05cbg483gcr6s8-statix-config.drv' building '/nix/store/xvdcxp0kxl1b3vaz6wyz82jch44czjr4-statix-fix.drv' building '/nix/store/clmgnyk157430352xhvqn25hk6pjnrdj-treefmt.toml.drv' treefmt.toml> structuredAttrs is enabled building '/nix/store/m5b1w57x2kxbnncisr6xgdg478vzxs3v-treefmt.drv' building '/nix/store/a5hyyqc2lciasvq6wcq3xhzf8jarwfg2-treefmt-check.drv' treefmt-check> treefmt v2.5.0ERRO formatter | ruff-check: failed to apply with options '[check --fix]': exit status 1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-chat-completion-grammar/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-chat-model-combo-tooltip/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-chat-model-frecency/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-chat-model-fuzzy/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-chat-msg-schema/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-chat-multihome/fake-daemon.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-chat-ndjson-socket/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-chat-panel-width/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-chat-reducer/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-chat-scroll-stick/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-chat-session-registry/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-remote-session/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-remote-session/mock-llm.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-remote-session/registry-driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-rpc-streaming/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-rpc-streaming/mock-llm.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-attach-image/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-attach-image/mock-llm.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-bash-confirm/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-bash-confirm/mock-llm.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-combobox/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-create-ack-routing/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-create-ack-routing/fake-daemon.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-idle-reap/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-idle-reap/mock-daemon.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-inference-speed/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-integrations-bridge/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-integrations-bridge/fake_broker.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-integrations-managed/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-integrations-managed/fake_broker.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-integrations-setup/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-integrations-setup/fake_broker.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-local-executor/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-memory/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-memory/mock-llm.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-memory/sediment-stub.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-model-pick-persists/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-model-picker/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-new-chat-inherits-model/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-new-chat-inherits-model/mock-daemon.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-noctalia-theme/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-notifications/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-notifications/mock-llm.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-open-url/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-quick-launch-completion/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-quick-launch-dup-session/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-quick-launch-dup-session/mock-daemon.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-quick-launch-host-directive/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-quick-launch-model-directive/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-quick-launch/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-quick-launch/mock-llm.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-restart-preserves-model/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-restart-preserves-model/mock-daemon.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-restart/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-skill-config/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-stale-recovery/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-thinking/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-ws-create-retry/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-ws-create-retry/fake-daemon.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-ws/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-session-ws/fake-daemon.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-sessiond-cold-attach/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-sessiond-drive-path/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-sessiond-drive-path/stub-pi.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-sessiond-landlock-agentdir/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-sessiond-model-persistence/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-sessiond-model-persistence/stub-pi.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-sessiond-sessions-push/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-sessiond-sidechannel/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-sessiond-sidechannel/notify-stub.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/pi-web-e2e/mock-llm.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/spaces-activity-contract/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/spaces-integration-confirm/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/spaces-integration-gateway-e2e/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/spaces-integration-proton-tls/gen.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/spaces-integration-proton-tls/stub.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/spaces-integration-wrapper-shell/stub.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/spaces-voice-indicator-bar-geometry/driver.py:1:1 treefmt-check> treefmt-check> PLR0917 Too many positional arguments (6 > 5) treefmt-check> --> checks/spaces-voice-indicator-bar-geometry/driver.py:83:13 treefmt-check> | treefmt-check> 81 | die(f"{label}: expected {b!r}, got {a!r}") treefmt-check> 82 | treefmt-check> 83 | def rect(g, x, y, w, h, label): treefmt-check> | ^^^^ treefmt-check> 84 | close(g["bloomX"], x, f"{label} bloomX") treefmt-check> 85 | close(g["bloomY"], y, f"{label} bloomY") treefmt-check> | treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/spaces-voice-indicator-bar-pulse/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/spaces-voice-indicator-state/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/spaces-voice-indicator-warning/driver.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/test-machine-mock-llm.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/test-machine-ws-probe.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/test-pi-chat.py:1:1 treefmt-check> treefmt-check> PLR0917 Too many positional arguments (7 > 5) treefmt-check> --> checks/test-pi-chat.py:49:5 treefmt-check> | treefmt-check> 49 | def poll_reply( treefmt-check> | ^^^^^^^^^^ treefmt-check> 50 | quickshell_bin, config, target, session_id, baseline, predicate, timeout=60 treefmt-check> 51 | ): treefmt-check> | treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> checks/test-pi-memory.py:1:1 treefmt-check> treefmt-check> PLR0917 Too many positional arguments (7 > 5) treefmt-check> --> checks/test-pi-memory.py:53:5 treefmt-check> | treefmt-check> 53 | def poll_reply( treefmt-check> | ^^^^^^^^^^ treefmt-check> 54 | quickshell_bin, config, target, session_id, baseline, predicate, timeout=60 treefmt-check> 55 | ): treefmt-check> | treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> debug/installer-config-gen/libcalamares/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> debug/installer-config-gen/test_render.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> lib/qmllint-gen-qmldir.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> lib/qmllint-patch-qmltypes.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> lib/qs_harness.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/agent-vm/qmp.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/calamares-spaces-extensions/files/main.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/integration-caldav/integration_caldav.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/integration-caldav/test_integration_caldav.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/integration-contacts/integration_contacts.py:1:1 treefmt-check> treefmt-check> PLR0917 Too many positional arguments (6 > 5) treefmt-check> --> packages/integration-contacts/integration_contacts.py:62:5 treefmt-check> | treefmt-check> 62 | def _http( treefmt-check> | ^^^^^ treefmt-check> 63 | method: str, treefmt-check> 64 | url: str, treefmt-check> | treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/integration-contacts/test_integration_contacts.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/integration-github/integration_github.py:1:1 treefmt-check> treefmt-check> ISC004 Unparenthesized implicit string concatenation in collection treefmt-check> --> packages/integration-github/integration_github.py:212:9 treefmt-check> | treefmt-check> 210 | return err, True treefmt-check> 211 | return ( treefmt-check> 212 | / f"opened PR #{data.get('number')} from {len(files)} file(s): " treefmt-check> 213 | | f"{data.get('html_url')}", treefmt-check> | |_________________________________^ treefmt-check> 214 | False, treefmt-check> 215 | ) treefmt-check> | treefmt-check> help: Did you forget a comma? treefmt-check> help: Wrap implicitly concatenated strings in parentheses treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/integration-github/test_integration_github.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/integration-mail/integration_mail.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/integration-mail/test_integration_mail.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/integration-proton/conftest.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/integration-proton/integration_proton.py:1:1 treefmt-check> treefmt-check> ISC004 Unparenthesized implicit string concatenation in collection treefmt-check> --> packages/integration-proton/integration_proton.py:111:13 treefmt-check> | treefmt-check> 109 | # CA:TRUE cert (pimalaya/himalaya#633). msmtp (GnuTLS) trusts it via treefmt-check> 110 | # tls_trust_file. Drop this file when nixpkgs ships himalaya > 1.2.0. treefmt-check> 111 | / "# msmtp detour for Proton Bridge (pimalaya/himalaya#633);" treefmt-check> 112 | | " drop when nixpkgs ships himalaya > 1.2.0", treefmt-check> | |_______________________________________________________^ treefmt-check> 113 | f"account {profile}", treefmt-check> 114 | f"host {BRIDGE_HOST}", treefmt-check> | treefmt-check> help: Did you forget a comma? treefmt-check> help: Wrap implicitly concatenated strings in parentheses treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/integration-proton/integration_proton_setup.py:1:1 treefmt-check> treefmt-check> PLR0917 Too many positional arguments (6 > 5) treefmt-check> --> packages/integration-proton/integration_proton_setup.py:281:5 treefmt-check> | treefmt-check> 281 | def _drive_login(conn, reader, stub, md, events, email): treefmt-check> | ^^^^^^^^^^^^ treefmt-check> 282 | """Consume login events until finished/alreadyLoggedIn (returns the userID), treefmt-check> 283 | answering 2FA / mailbox-password prompts and mapping typed errors. treefmt-check> | treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/integration-proton/test_integration_proton.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/integration-proton/test_integration_proton_setup.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/integration-signal/integration_signal.py:1:1 treefmt-check> treefmt-check> ISC004 Unparenthesized implicit string concatenation in collection treefmt-check> --> packages/integration-signal/integration_signal.py:643:13 treefmt-check> | treefmt-check> 641 | if not name: treefmt-check> 642 | return ( treefmt-check> 643 | / "name is required: the recipient's display name, verified against " treefmt-check> 644 | | "your contacts before anything is sent", treefmt-check> | |___________________________________________________^ treefmt-check> 645 | True, treefmt-check> 646 | ) treefmt-check> | treefmt-check> help: Did you forget a comma? treefmt-check> help: Wrap implicitly concatenated strings in parentheses treefmt-check> treefmt-check> ISC004 Unparenthesized implicit string concatenation in collection treefmt-check> --> packages/integration-signal/integration_signal.py:651:13 treefmt-check> | treefmt-check> 649 | if recipient.lower() == "self" or is_self_recipient(recipient, accounts): treefmt-check> 650 | return ( treefmt-check> 651 | / "refusing to send to your own account — use the note_to_self tool " treefmt-check> 652 | | "to message yourself", treefmt-check> | |_________________________________^ treefmt-check> 653 | True, treefmt-check> 654 | ) treefmt-check> | treefmt-check> help: Did you forget a comma? treefmt-check> help: Wrap implicitly concatenated strings in parentheses treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/integration-signal/integration_signal_setup.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/integration-signal/test_integration_signal.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/integration-signal/test_integration_signal_setup.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/notifications-cli/notifications_cli.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/notifications-cli/test_notifications_cli.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/osm-cli/osm_cli.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/signal-cli/spaces_signal/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/signal-cli/spaces_signal/bridge.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/signal-cli/spaces_signal/db.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/signal-cli/spaces_signal/jsonrpc.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/signal-cli/test_bridge.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/signal-cli/test_db.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/skill-config/skill_config.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/skill-config/skill_store.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/skill-config/test_skill_config.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/skill-config/test_skill_config_api.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/skill-config/test_skill_store.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-himalaya-core/spaces_himalaya_core.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-himalaya-core/test_himalaya_core.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-integration-mcp/spaces_integration_mcp.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-integration-mcp/test_scaffold.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/conftest.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/spaces_restore/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/spaces_restore/cli.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/spaces_restore/config.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/spaces_restore/crypto.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/spaces_restore/discovery.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/spaces_restore/manifest.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/spaces_restore/nostr.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/spaces_restore/record.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/spaces_restore/secp.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/spaces_restore/transport.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/test_config.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/test_crypto.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/test_discovery.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/test_generate.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/test_keys.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/test_manifest.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/test_nostr.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/test_nostr_integration.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/test_record.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/test_secp.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/spaces-restore/test_transport.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/tests/conftest.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/tests/test_app.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/tests/test_apply.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/tests/test_build_argv.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/tests/test_defaults.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/tests/test_devices.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/tests/test_lifecycle.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/tests/test_meter.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/tests/test_metrics.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/tests/test_models.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/tests/test_player.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/tests/test_recorder.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/tests/test_slots.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/tests/test_stderr_guard.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/tests/test_streaming.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/tests/test_tooltips.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/tests/test_transcribe.py:1:1 treefmt-check> treefmt-check> ISC004 Unparenthesized implicit string concatenation in collection treefmt-check> --> packages/voxtype-tuner/tests/test_transcribe.py:54:13 treefmt-check> | treefmt-check> 52 | 'Transcription completed in 0.09s: "And so my fellow Americans ask not what your count..."', treefmt-check> 53 | ), treefmt-check> 54 | / "And so my fellow Americans ask not what your country can do for you, " treefmt-check> 55 | | "ask what you can do for your country.", treefmt-check> | |___________________________________________________^ treefmt-check> 56 | ] treefmt-check> 57 | ) treefmt-check> | treefmt-check> help: Did you forget a comma? treefmt-check> help: Wrap implicitly concatenated strings in parentheses treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/tests/test_waveform.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/tests/test_wiring.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/__init__.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/app.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/apply.py:1:1 treefmt-check> treefmt-check> PLR0917 Too many positional arguments (6 > 5) treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/apply.py:330:5 treefmt-check> | treefmt-check> 330 | def apply_config( treefmt-check> | ^^^^^^^^^^^^ treefmt-check> 331 | p: TranscribeParams, treefmt-check> 332 | baseline: Mapping[str, object] | None, treefmt-check> | treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/clipboard.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/defaults.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/devices.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/lifecycle.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/meter.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/metrics.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/models.py:1:1 treefmt-check> treefmt-check> PLR0917 Too many positional arguments (8 > 5) treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/models.py:309:5 treefmt-check> | treefmt-check> 309 | def download_model( treefmt-check> | ^^^^^^^^^^^^^^ treefmt-check> 310 | engine: str, treefmt-check> 311 | model: str, treefmt-check> | treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/params.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/player.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/recorder.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/slots.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/stderr_guard.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/streaming.py:1:1 treefmt-check> treefmt-check> PLR0917 Too many positional arguments (9 > 5) treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/streaming.py:181:9 treefmt-check> | treefmt-check> 179 | """ treefmt-check> 180 | treefmt-check> 181 | def __init__( treefmt-check> | ^^^^^^^^ treefmt-check> 182 | self, treefmt-check> 183 | p: TranscribeParams, treefmt-check> | treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/transcribe.py:1:1 treefmt-check> treefmt-check> PLR0917 Too many positional arguments (6 > 5) treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/transcribe.py:190:5 treefmt-check> | treefmt-check> 190 | def transcribe( treefmt-check> | ^^^^^^^^^^ treefmt-check> 191 | wav_path: str, treefmt-check> 192 | p: TranscribeParams, treefmt-check> | treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/waveform.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/wiring.py:1:1 treefmt-check> treefmt-check> PLR0917 Too many positional arguments (9 > 5) treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/wiring.py:55:5 treefmt-check> | treefmt-check> 55 | def build_params( treefmt-check> | ^^^^^^^^^^^^ treefmt-check> 56 | engine: str, treefmt-check> 57 | model: str, treefmt-check> | treefmt-check> treefmt-check> PLR0917 Too many positional arguments (6 > 5) treefmt-check> --> packages/voxtype-tuner/voxtype_tuner/wiring.py:179:9 treefmt-check> | treefmt-check> 177 | """ treefmt-check> 178 | treefmt-check> 179 | def __init__( treefmt-check> | ^^^^^^^^ treefmt-check> 180 | self, treefmt-check> 181 | path_for: Callable[[], str], treefmt-check> | treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/wikidata-cli/test_wikidata_cli.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/wikidata-cli/wikidata_cli.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/wikipedia-cli/test_wikipedia_cli.py:1:1 treefmt-check> treefmt-check> CPY001 Missing copyright notice at top of file treefmt-check> --> packages/wikipedia-cli/wikipedia_cli.py:1:1 treefmt-check> treefmt-check> Found 207 errors. treefmt-check> No fixes available (5 hidden fixes can be enabled with the `--unsafe-fixes` option). treefmt-check> treefmt-check> traversed 770 files treefmt-check> emitted 471 files for processing treefmt-check> formatted 280 files (0 changed) in 4.996s treefmt-check> Error: failed to finalise formatting: formatting failures detected error: Cannot build '/nix/store/a5hyyqc2lciasvq6wcq3xhzf8jarwfg2-treefmt-check.drv'. Reason: builder failed with exit code 1. Output paths: /nix/store/h2x8irvr12hg9v4mh91ql93jc8rskfq3-treefmt-check Last 25 log lines: > 179 | def __init__( > | ^^^^^^^^ > 180 | self, > 181 | path_for: Callable[[], str], > | > > CPY001 Missing copyright notice at top of file > --> packages/wikidata-cli/test_wikidata_cli.py:1:1 > > CPY001 Missing copyright notice at top of file > --> packages/wikidata-cli/wikidata_cli.py:1:1 > > CPY001 Missing copyright notice at top of file > --> packages/wikipedia-cli/test_wikipedia_cli.py:1:1 > > CPY001 Missing copyright notice at top of file > --> packages/wikipedia-cli/wikipedia_cli.py:1:1 > > Found 207 errors. > No fixes available (5 hidden fixes can be enabled with the `--unsafe-fixes` option). > > traversed 770 files > emitted 471 files for processing > formatted 280 files (0 changed) in 4.996s > Error: failed to finalise formatting: formatting failures detected For full logs, run: nix log /nix/store/a5hyyqc2lciasvq6wcq3xhzf8jarwfg2-treefmt-check.drv