Seventh extraction, and the first of something that was already dead. Soulseek had been switched off since 2026-08-13: hono.ts carried the router import and its PROTECTED_MOUNTS entry commented out, so createSidecarProxy never ran and registerProxiedPrefix was never called; officer-slskd was not in the ecosystem at all. Because the permission entry had been reduced to api: [], the totality check was satisfied and the server booted clean — the UI rendered and every request 404'd. Worth naming: the boot check proves every MOUNTED prefix has a permission, and is silent about a feature that mounts nothing. Also closes a live data hazard: schema.ts had the soulseek export commented out, so the three tables were absent from the drizzle barrel and bun db:push would have dropped soulseek_favorites, soulseek_browse_snapshots and soulseek_browse_dirs on any server holding them. rebuild-soulseek-tree.ts documented the workaround rather than the problem; deleted with the rest. The connection stays in core service_connections under service 'slskd' while the mount is now /api/soulseek. Those differ on purpose. Test fixtures: slskd was canonical in three app-store tests, the third extraction running to break them. installer.test.ts now builds a literal fixture instead of reaching into the catalogue — it pins planSteps, which is installer logic, and no catalogue entry is both provisioned and members:'none' any more. catalogue.test.ts and members.test.ts re-anchored to vnc/notify/gitea. Unrelated but mine: check:theme caught 5 palette classes I introduced in CommandHQ earlier tonight against a baseline of 0. Converted to bg-success / bg-warning. check:theme is not part of bun test, which is why the green suite never showed it. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
20 lines
872 B
JSON
20 lines
872 B
JSON
{
|
|
"src/apps/officer-web/Screens": 122,
|
|
"src/workspaces/components": 47,
|
|
"src/workspaces/officerdev/src/apps/AppStore": 6,
|
|
"src/workspaces/officerdev/src/apps/Chat": 12,
|
|
"src/workspaces/officerdev/src/apps/ChatHistory": 1,
|
|
"src/workspaces/officerdev/src/apps/CodeEditor": 5,
|
|
"src/workspaces/officerdev/src/apps/Dashboards": 11,
|
|
"src/workspaces/officerdev/src/apps/Dav": 7,
|
|
"src/workspaces/officerdev/src/apps/FileBrowser": 15,
|
|
"src/workspaces/officerdev/src/apps/FileViewer": 38,
|
|
"src/workspaces/officerdev/src/apps/Invoices": 95,
|
|
"src/workspaces/officerdev/src/apps/Jellyfin": 48,
|
|
"src/workspaces/officerdev/src/apps/Preview": 4,
|
|
"src/workspaces/officerdev/src/apps/QrTransfer": 5,
|
|
"src/workspaces/officerdev/src/apps/SystemMonitor": 1,
|
|
"src/workspaces/officerdev/src/apps/Terminal": 10,
|
|
"src/workspaces/officerdev/src/apps/Wallet": 68
|
|
}
|