@cleocode/cleo 2026.9.5 → 2026.9.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/index.js +1 -1
- package/dist/cli/index.js.map +1 -1
- package/package.json +13 -13
- package/studio-dist/client/_app/immutable/chunks/{C7UP-KLT.js → B4pbMhWh.js} +1 -1
- package/studio-dist/client/_app/immutable/chunks/{DrfFUIvQ.js → Cq8SkApb.js} +1 -1
- package/studio-dist/client/_app/immutable/chunks/{CKXdW4mW.js → DQE2lHpR.js} +1 -1
- package/studio-dist/client/_app/immutable/chunks/Dw--1J0g.js +1 -0
- package/studio-dist/client/_app/immutable/entry/{app.BwkUGH1B.js → app.AO-dq23l.js} +2 -2
- package/studio-dist/client/_app/immutable/entry/start.DyU3_ZJI.js +1 -0
- package/studio-dist/client/_app/immutable/nodes/{0.DcUJW-xi.js → 0.pcHH7cls.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{1.DyTt_cQs.js → 1.BZ_6sEg7.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{15.LRqqoueS.js → 15.C49XuRDg.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{16.-hGPNXOI.js → 16.D_IEqgU8.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{17.ChMxgTIY.js → 17.DMmmyyKw.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{18.B9zeITVb.js → 18.BeHgL2ha.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{20.BHg5roNq.js → 20.ByQCOFEK.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{24.B_s9aY5m.js → 24.DKhWVVfG.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{25.DZXkDxw_.js → 25.BS4Qyw38.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{26.BBRbdwIG.js → 26.CZ-vCPq6.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{3.DMYcrZeG.js → 3.B1Ua25St.js} +1 -1
- package/studio-dist/client/_app/version.json +1 -1
- package/studio-dist/server/chunks/{0-CM4iQVYP.js → 0-BkBuauLU.js} +3 -3
- package/studio-dist/server/chunks/{0-CM4iQVYP.js.map → 0-BkBuauLU.js.map} +1 -1
- package/studio-dist/server/chunks/{1-BQFD-dx6.js → 1-C-FPVHUW.js} +3 -3
- package/studio-dist/server/chunks/{1-BQFD-dx6.js.map → 1-C-FPVHUW.js.map} +1 -1
- package/studio-dist/server/chunks/{15-Cng10n82.js → 15-BEk78EBu.js} +3 -3
- package/studio-dist/server/chunks/{15-Cng10n82.js.map → 15-BEk78EBu.js.map} +1 -1
- package/studio-dist/server/chunks/{16-u3KwU3N4.js → 16-BzISLvSG.js} +3 -3
- package/studio-dist/server/chunks/{16-u3KwU3N4.js.map → 16-BzISLvSG.js.map} +1 -1
- package/studio-dist/server/chunks/{17-BDtxQX9n.js → 17-DGt4P3nJ.js} +3 -3
- package/studio-dist/server/chunks/{17-BDtxQX9n.js.map → 17-DGt4P3nJ.js.map} +1 -1
- package/studio-dist/server/chunks/{18-wwUoSO4F.js → 18-DLGcIwmV.js} +3 -3
- package/studio-dist/server/chunks/{18-wwUoSO4F.js.map → 18-DLGcIwmV.js.map} +1 -1
- package/studio-dist/server/chunks/{20-B-0CBvqY.js → 20-BvcOxe5q.js} +3 -3
- package/studio-dist/server/chunks/{20-B-0CBvqY.js.map → 20-BvcOxe5q.js.map} +1 -1
- package/studio-dist/server/chunks/{24-BeVcofpU.js → 24-DlzL0G3_.js} +3 -3
- package/studio-dist/server/chunks/{24-BeVcofpU.js.map → 24-DlzL0G3_.js.map} +1 -1
- package/studio-dist/server/chunks/{25-DIuzTPOu.js → 25-BkcpAlfJ.js} +3 -3
- package/studio-dist/server/chunks/{25-DIuzTPOu.js.map → 25-BkcpAlfJ.js.map} +1 -1
- package/studio-dist/server/chunks/{26-CY8x0KNI.js → 26-CY_OLXcd.js} +3 -3
- package/studio-dist/server/chunks/{26-CY8x0KNI.js.map → 26-CY_OLXcd.js.map} +1 -1
- package/studio-dist/server/chunks/{3-p3RwD-FY.js → 3-CbodebGY.js} +3 -3
- package/studio-dist/server/chunks/{3-p3RwD-FY.js.map → 3-CbodebGY.js.map} +1 -1
- package/studio-dist/server/chunks/{_layout.svelte-rswfOTDe.js → _layout.svelte-B31p5awD.js} +4 -4
- package/studio-dist/server/chunks/{_layout.svelte-rswfOTDe.js.map → _layout.svelte-B31p5awD.js.map} +1 -1
- package/studio-dist/server/chunks/{_page.svelte-D8NhlkPD.js → _page.svelte-BIIvdH13.js} +3 -3
- package/studio-dist/server/chunks/{_page.svelte-D8NhlkPD.js.map → _page.svelte-BIIvdH13.js.map} +1 -1
- package/studio-dist/server/chunks/{_page.svelte-BT1YF8j2.js → _page.svelte-BdTlq0Gh.js} +4 -4
- package/studio-dist/server/chunks/{_page.svelte-BT1YF8j2.js.map → _page.svelte-BdTlq0Gh.js.map} +1 -1
- package/studio-dist/server/chunks/{_page.svelte-DmTXiXKT.js → _page.svelte-BuVX3kf2.js} +3 -3
- package/studio-dist/server/chunks/{_page.svelte-DmTXiXKT.js.map → _page.svelte-BuVX3kf2.js.map} +1 -1
- package/studio-dist/server/chunks/{_page.svelte-DaYxqOUS.js → _page.svelte-C6P8rRvk.js} +3 -3
- package/studio-dist/server/chunks/{_page.svelte-DaYxqOUS.js.map → _page.svelte-C6P8rRvk.js.map} +1 -1
- package/studio-dist/server/chunks/{_page.svelte-CHH1vmfg.js → _page.svelte-CFnkQk35.js} +3 -3
- package/studio-dist/server/chunks/{_page.svelte-CHH1vmfg.js.map → _page.svelte-CFnkQk35.js.map} +1 -1
- package/studio-dist/server/chunks/{_page.svelte-DZEnHo1L.js → _page.svelte-CfjdIh3A.js} +3 -3
- package/studio-dist/server/chunks/{_page.svelte-DZEnHo1L.js.map → _page.svelte-CfjdIh3A.js.map} +1 -1
- package/studio-dist/server/chunks/{_page.svelte-C9twD2l1.js → _page.svelte-DR0AY_gZ.js} +3 -3
- package/studio-dist/server/chunks/{_page.svelte-C9twD2l1.js.map → _page.svelte-DR0AY_gZ.js.map} +1 -1
- package/studio-dist/server/chunks/{_page.svelte-DKVwBmIp.js → _page.svelte-EWYHbzl0.js} +4 -4
- package/studio-dist/server/chunks/{_page.svelte-DKVwBmIp.js.map → _page.svelte-EWYHbzl0.js.map} +1 -1
- package/studio-dist/server/chunks/{_page.svelte-CiIYIPG9.js → _page.svelte-h0JOhZab.js} +3 -3
- package/studio-dist/server/chunks/{_page.svelte-CiIYIPG9.js.map → _page.svelte-h0JOhZab.js.map} +1 -1
- package/studio-dist/server/chunks/{client-ym-URLFs.js → client-2rpcRzcr.js} +2 -2
- package/studio-dist/server/chunks/{client-ym-URLFs.js.map → client-2rpcRzcr.js.map} +1 -1
- package/studio-dist/server/chunks/{error.svelte-Bt1EbBZe.js → error.svelte-CpckcxW6.js} +3 -3
- package/studio-dist/server/chunks/{error.svelte-Bt1EbBZe.js.map → error.svelte-CpckcxW6.js.map} +1 -1
- package/studio-dist/server/chunks/{internal-D3i_4gCl.js → internal-xyE_opYp.js} +2 -2
- package/studio-dist/server/chunks/{internal-D3i_4gCl.js.map → internal-xyE_opYp.js.map} +1 -1
- package/studio-dist/server/chunks/{stores-ByevKXL9.js → stores-BcV2X8z1.js} +2 -2
- package/studio-dist/server/chunks/{stores-ByevKXL9.js.map → stores-BcV2X8z1.js.map} +1 -1
- package/studio-dist/server/index.js +1 -1
- package/studio-dist/server/index.js.map +1 -1
- package/studio-dist/server/manifest.js +12 -12
- package/studio-dist/server/manifest.js.map +1 -1
- package/studio-dist/client/_app/immutable/chunks/9yrFrmKZ.js +0 -1
- package/studio-dist/client/_app/immutable/entry/start.BcsID0Sf.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"3-p3RwD-FY.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/brain/_page.server.ts.js","../../../.svelte-kit/adapter-node/nodes/3.js"],"sourcesContent":["import { a as getNexusDb, i as getConduitDb, n as getAgentRegistryDb, o as getTasksDb, r as getBrainDb, t as getAllSubstrates } from \"../../../chunks/src.js\";\nimport { a as setCachedGraph, i as getCachedGraph, n as buildCacheKey, r as getBrainCacheMetrics, t as recordBrainLoadDuration } from \"../../../chunks/brain.js\";\n//#region src/lib/graph/adapters/cross-substrate.ts\n/**\n* Execute a prepared statement and cast to `T[]`.\n* Identical to `allTyped` in `@cleocode/brain/db-connections` —\n* duplicated here so the studio package stays independent.\n*/\nfunction allTyped(stmt, ...params) {\n\treturn stmt.all(...params);\n}\n/** Default weight for all bridge edges — 0.7, higher than intra-substrate defaults. */\nvar BRIDGE_WEIGHT = .7;\n/**\n* Translate a `brain_memory_links.link_type` value to the canonical\n* `EdgeKind` vocabulary.\n*\n* Known values per `BRAIN_LINK_TYPES` in memory-schema.ts:\n* `produced_by | applies_to | informed_by | contradicts`\n*\n* @param linkType - Raw link_type from brain_memory_links.\n* @returns Canonical EdgeKind.\n*/\nfunction memLinkToEdgeKind(linkType) {\n\tif (linkType === \"produced_by\") return \"produced_by\";\n\tif (linkType === \"informed_by\") return \"informed_by\";\n\tif (linkType === \"applies_to\") return \"derived_from\";\n\tif (linkType === \"contradicts\") return \"relates_to\";\n\treturn \"relates_to\";\n}\n/**\n* Returns true when a `brain_page_edges.to_id` value looks like a nexus\n* node path (contains `::` separator for file::Symbol, or is a relative\n* file path with a `/`).\n*\n* Mirrors `isNexusStyleId` from `packages/brain/src/adapters/brain.ts`.\n*\n* @param toId - Candidate ID string from brain_page_edges.\n*/\nfunction isNexusStyleId(toId) {\n\tif (toId.includes(\"::\")) return true;\n\tif (!toId.includes(\":\") && toId.includes(\"/\")) return true;\n\treturn false;\n}\n/**\n* Returns true when a `brain_page_edges.from_id` / `to_id` value represents\n* a task reference (e.g. `\"task:T532\"`).\n*\n* @param id - Candidate ID string from brain_page_edges.\n*/\nfunction isTaskRef(id) {\n\treturn id.startsWith(\"task:\");\n}\n/**\n* Returns true when a `brain_page_edges.from_id` value represents\n* a CONDUIT message reference (e.g. `\"msg:msg_abc123\"`).\n*\n* @param id - Candidate ID string from brain_page_edges.\n*/\nfunction isMsgRef(id) {\n\treturn id.startsWith(\"msg:\");\n}\n/**\n* Compute all cross-substrate bridges between the given node set.\n*\n* This is the primary integration point for Agent C's server load. It\n* is called for tier-0, tier-1, and tier-2 paints. Bridges involving\n* hub nodes are always included — even in tier-0 — because bridges are\n* what makes the first paint look \"alive\".\n*\n* The function:\n* 1. Enumerates each bridge category using SQL queries against the provided DBs.\n* 2. Filters to bridges where both endpoints exist in `nodes`.\n* 3. Deduplicates by (source, target, kind).\n* 4. Applies a 2 × |nodes| cap, sorted by weight descending.\n* 5. Logs per-category counts to `console.info`.\n*\n* @param nodes - Current node set (substrate-prefixed IDs). Only bridges\n* where both endpoints appear here are emitted.\n* @param dbRefs - Optional DB connections. Missing DBs produce zero bridges\n* for that category — no errors are thrown.\n* @returns Array of {@link GraphEdge} objects with `meta.isBridge: true`.\n*\n* @example\n* ```ts\n* import { computeBridges } from '$lib/graph/adapters/cross-substrate.js';\n*\n* const bridges = computeBridges(nodes, { brainDb, tasksDb, nexusDb });\n* const allEdges = [...intraEdges, ...bridges];\n* ```\n*/\nfunction computeBridges(nodes, dbRefs) {\n\tconst nodeIdSet = new Set(nodes.map((n) => n.id));\n\tconst raw = [];\n\tif (dbRefs.brainDb) {\n\t\traw.push(...bridgeTaskBrainViaMemLinks(dbRefs.brainDb, nodeIdSet));\n\t\traw.push(...bridgeTaskBrainViaDecisions(dbRefs.brainDb, nodeIdSet));\n\t}\n\tif (dbRefs.brainDb) {\n\t\traw.push(...bridgeBrainNexusViaPageEdges(dbRefs.brainDb, nodeIdSet));\n\t\traw.push(...bridgeBrainNexusViaObsFiles(dbRefs.brainDb, nodeIdSet));\n\t}\n\tif (dbRefs.brainDb) raw.push(...bridgeConduitTasksViaPageEdges(dbRefs.brainDb, nodeIdSet));\n\tif (dbRefs.tasksDb) raw.push(...bridgeAgentRegistryTasksViaAssignee(dbRefs.tasksDb, nodeIdSet));\n\tconst seen = /* @__PURE__ */ new Set();\n\tconst unique = [];\n\tfor (const b of raw) {\n\t\tconst key = `${b.source}|${b.target}|${b.kind}`;\n\t\tif (!seen.has(key)) {\n\t\t\tseen.add(key);\n\t\t\tunique.push(b);\n\t\t}\n\t}\n\tconst cap = nodes.length * 2;\n\tunique.sort((a, b) => b.weight - a.weight);\n\tconst capped = unique.length > cap;\n\tconst result = capped ? unique.slice(0, cap) : unique;\n\tconst stats = buildStats(result, capped);\n\tconsole.info(`[cross-substrate] bridges emitted: ${stats.total} (capped=${stats.capped}) — ` + Object.entries(stats.byType).filter(([, v]) => v > 0).map(([k, v]) => `${k}:${v}`).join(\", \"));\n\treturn result.map((b, i) => ({\n\t\tid: `bridge-${i}:${b.source}>${b.target}:${b.kind}`,\n\t\tsource: b.source,\n\t\ttarget: b.target,\n\t\tkind: b.kind,\n\t\tweight: b.weight,\n\t\tdirectional: true,\n\t\tmeta: b.meta\n\t}));\n}\n/**\n* Bridge: TASK ↔ BRAIN via `brain_memory_links`.\n*\n* The `brain_memory_links` table stores explicit cross-DB links between\n* typed memory entries and tasks. Each row maps (memory_type, memory_id) →\n* task_id with a semantic link_type.\n*\n* Verified present in `memory-schema.ts` as `brainMemoryLinks`.\n*\n* @param db - brain.db connection.\n* @param nodeIds - Set of loaded node IDs.\n* @returns Bridge edges.\n*/\nfunction bridgeTaskBrainViaMemLinks(db, nodeIds) {\n\tconst bridges = [];\n\ttry {\n\t\tconst rows = allTyped(db.prepare(`SELECT memory_type, memory_id, task_id, link_type\n FROM brain_memory_links\n LIMIT 2000`));\n\t\tfor (const row of rows) {\n\t\t\tconst brainNodeId = `brain:${row.memory_id}`;\n\t\t\tconst tasksNodeId = `tasks:${row.task_id}`;\n\t\t\tif (!nodeIds.has(brainNodeId) || !nodeIds.has(tasksNodeId)) continue;\n\t\t\tconst kind = memLinkToEdgeKind(row.link_type);\n\t\t\tbridges.push({\n\t\t\t\tsource: brainNodeId,\n\t\t\t\ttarget: tasksNodeId,\n\t\t\t\tkind,\n\t\t\t\tweight: BRIDGE_WEIGHT,\n\t\t\t\tmeta: {\n\t\t\t\t\tisBridge: true,\n\t\t\t\t\tbridgeType: \"task->brain\",\n\t\t\t\t\tdescription: `Memory entry ${row.memory_type}:${row.memory_id} ${kind.replace(\"_\", \" \")} task ${row.task_id}`,\n\t\t\t\t\tlink_type: row.link_type,\n\t\t\t\t\tmemory_type: row.memory_type\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} catch {}\n\treturn bridges;\n}\n/**\n* Bridge: TASK ↔ BRAIN via `brain_decisions.context_task_id` and\n* `brain_decisions.context_epic_id`.\n*\n* Both columns are present in the schema as soft FKs into tasks.db.\n* Each decision that cites a task gets an `informed_by` bridge pointing\n* to the task that provided the architectural context.\n*\n* Verified present in `memory-schema.ts` as `brainDecisions.contextTaskId`\n* and `brainDecisions.contextEpicId`.\n*\n* @param db - brain.db connection.\n* @param nodeIds - Set of loaded node IDs.\n* @returns Bridge edges.\n*/\nfunction bridgeTaskBrainViaDecisions(db, nodeIds) {\n\tconst bridges = [];\n\ttry {\n\t\tconst rows = allTyped(db.prepare(`SELECT id, context_task_id, context_epic_id\n FROM brain_decisions\n WHERE context_task_id IS NOT NULL OR context_epic_id IS NOT NULL\n LIMIT 1000`));\n\t\tfor (const row of rows) {\n\t\t\tconst brainNodeId = `brain:${row.id}`;\n\t\t\tif (!nodeIds.has(brainNodeId)) continue;\n\t\t\tif (row.context_task_id) {\n\t\t\t\tconst tasksNodeId = `tasks:${row.context_task_id}`;\n\t\t\t\tif (nodeIds.has(tasksNodeId)) bridges.push({\n\t\t\t\t\tsource: brainNodeId,\n\t\t\t\t\ttarget: tasksNodeId,\n\t\t\t\t\tkind: \"informed_by\",\n\t\t\t\t\tweight: BRIDGE_WEIGHT,\n\t\t\t\t\tmeta: {\n\t\t\t\t\t\tisBridge: true,\n\t\t\t\t\t\tbridgeType: \"task->brain\",\n\t\t\t\t\t\tdescription: `Decision informed by task ${row.context_task_id}`,\n\t\t\t\t\t\tcontext_column: \"context_task_id\"\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t\tif (row.context_epic_id) {\n\t\t\t\tconst tasksNodeId = `tasks:${row.context_epic_id}`;\n\t\t\t\tif (nodeIds.has(tasksNodeId)) bridges.push({\n\t\t\t\t\tsource: brainNodeId,\n\t\t\t\t\ttarget: tasksNodeId,\n\t\t\t\t\tkind: \"informed_by\",\n\t\t\t\t\tweight: BRIDGE_WEIGHT,\n\t\t\t\t\tmeta: {\n\t\t\t\t\t\tisBridge: true,\n\t\t\t\t\t\tbridgeType: \"task->brain\",\n\t\t\t\t\t\tdescription: `Decision informed by epic ${row.context_epic_id}`,\n\t\t\t\t\t\tcontext_column: \"context_epic_id\"\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t} catch {}\n\treturn bridges;\n}\n/**\n* Bridge: BRAIN ↔ NEXUS via `brain_page_edges` where `to_id` is a nexus path.\n*\n* `brain_page_edges.to_id` may store nexus-style IDs:\n* - `\"some/path/file.ts::SymbolName\"` — a file::Symbol reference\n* - `\"some/relative/path.ts\"` — a file path (no `:` prefix)\n*\n* These map to `nexus:<to_id>` in the graph. The existing brain.ts adapter\n* already emits some of these in its `BrainEdge` output; this function\n* surfaces the same bridges at the Studio adapter layer so they flow through\n* the `computeBridges` path and carry `meta.isBridge: true`.\n*\n* @param db - brain.db connection.\n* @param nodeIds - Set of loaded node IDs.\n* @returns Bridge edges.\n*/\nfunction bridgeBrainNexusViaPageEdges(db, nodeIds) {\n\tconst bridges = [];\n\ttry {\n\t\tconst rows = allTyped(db.prepare(`SELECT from_id, to_id, edge_type, weight\n FROM brain_page_edges\n LIMIT 5000`));\n\t\tfor (const row of rows) {\n\t\t\tif (!isNexusStyleId(row.to_id)) continue;\n\t\t\tconst sep = row.from_id.indexOf(\":\");\n\t\t\tif (sep === -1) continue;\n\t\t\tconst prefix = row.from_id.slice(0, sep);\n\t\t\tconst rawId = row.from_id.slice(sep + 1);\n\t\t\tif (!new Set([\n\t\t\t\t\"observation\",\n\t\t\t\t\"decision\",\n\t\t\t\t\"pattern\",\n\t\t\t\t\"learning\"\n\t\t\t]).has(prefix)) continue;\n\t\t\tconst brainNodeId = `brain:${rawId}`;\n\t\t\tconst nexusNodeId = `nexus:${row.to_id}`;\n\t\t\tif (!nodeIds.has(brainNodeId) || !nodeIds.has(nexusNodeId)) continue;\n\t\t\tbridges.push({\n\t\t\t\tsource: brainNodeId,\n\t\t\t\ttarget: nexusNodeId,\n\t\t\t\tkind: \"references\",\n\t\t\t\tweight: Math.min(1, Math.max(.1, row.weight ?? BRIDGE_WEIGHT)),\n\t\t\t\tmeta: {\n\t\t\t\t\tisBridge: true,\n\t\t\t\t\tbridgeType: \"brain->nexus\",\n\t\t\t\t\tdescription: `Brain node ${prefix}:${rawId} references code ${row.to_id}`,\n\t\t\t\t\tedge_type: row.edge_type,\n\t\t\t\t\tlink_kind: \"code\"\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} catch {}\n\treturn bridges;\n}\n/**\n* Bridge: BRAIN ↔ NEXUS via `brain_observations.files_modified_json`.\n*\n* Each observation can carry a JSON array of relative file paths it\n* modified during the session. Each path maps to `nexus:<path>`.\n*\n* Cap: first 5 links per observation to prevent hairballing on\n* large session observations.\n*\n* Verified present in `memory-schema.ts` as `brainObservations.filesModifiedJson`.\n*\n* @param db - brain.db connection.\n* @param nodeIds - Set of loaded node IDs.\n* @returns Bridge edges.\n*/\nfunction bridgeBrainNexusViaObsFiles(db, nodeIds) {\n\tconst bridges = [];\n\tconst MAX_LINKS_PER_OBS = 5;\n\ttry {\n\t\tconst rows = allTyped(db.prepare(`SELECT id, files_modified_json\n FROM brain_observations\n WHERE files_modified_json IS NOT NULL\n AND files_modified_json != '[]'\n LIMIT 500`));\n\t\tfor (const row of rows) {\n\t\t\tif (!row.files_modified_json) continue;\n\t\t\tconst brainNodeId = `brain:${row.id}`;\n\t\t\tif (!nodeIds.has(brainNodeId)) continue;\n\t\t\tlet filePaths;\n\t\t\ttry {\n\t\t\t\tfilePaths = JSON.parse(row.files_modified_json);\n\t\t\t} catch {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (!Array.isArray(filePaths)) continue;\n\t\t\tconst limited = filePaths.slice(0, MAX_LINKS_PER_OBS);\n\t\t\tfor (const rawPath of limited) {\n\t\t\t\tif (typeof rawPath !== \"string\" || rawPath.length === 0) continue;\n\t\t\t\tconst nexusNodeId = `nexus:${rawPath}`;\n\t\t\t\tif (!nodeIds.has(nexusNodeId)) continue;\n\t\t\t\tbridges.push({\n\t\t\t\t\tsource: brainNodeId,\n\t\t\t\t\ttarget: nexusNodeId,\n\t\t\t\t\tkind: \"documents\",\n\t\t\t\t\tweight: BRIDGE_WEIGHT,\n\t\t\t\t\tmeta: {\n\t\t\t\t\t\tisBridge: true,\n\t\t\t\t\t\tbridgeType: \"brain->nexus\",\n\t\t\t\t\t\tdescription: `Observation documents file ${rawPath}`,\n\t\t\t\t\t\tfile_path: rawPath\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t} catch {}\n\treturn bridges;\n}\n/**\n* Bridge: CONDUIT ↔ TASKS via `brain_page_edges` where `from_id` is a\n* `msg:` reference and `to_id` is a `task:` reference.\n*\n* `brain_page_edges` stores cross-substrate links at the page-graph level.\n* The `discusses` edge type (defined in `BRAIN_EDGE_TYPES`) connects\n* CONDUIT message nodes to task nodes.\n*\n* The `conduit:` node prefix is used in the graph even though the\n* page-edge stores `msg:` as the type prefix. Conversion:\n* - `msg:<messageId>` → `conduit:<messageId>`\n* - `task:<taskId>` → `tasks:<taskId>`\n*\n* @param db - brain.db connection (page edges cross-reference conduit).\n* @param nodeIds - Set of loaded node IDs.\n* @returns Bridge edges.\n*/\nfunction bridgeConduitTasksViaPageEdges(db, nodeIds) {\n\tconst bridges = [];\n\ttry {\n\t\tconst rows = allTyped(db.prepare(`SELECT from_id, to_id, edge_type, weight\n FROM brain_page_edges\n WHERE from_id LIKE 'msg:%'\n AND to_id LIKE 'task:%'\n LIMIT 1000`));\n\t\tfor (const row of rows) {\n\t\t\tif (!isMsgRef(row.from_id) || !isTaskRef(row.to_id)) continue;\n\t\t\tconst msgId = row.from_id.slice(4);\n\t\t\tconst taskId = row.to_id.slice(5);\n\t\t\tconst conduitNodeId = `conduit:${msgId}`;\n\t\t\tconst tasksNodeId = `tasks:${taskId}`;\n\t\t\tif (!nodeIds.has(conduitNodeId) || !nodeIds.has(tasksNodeId)) continue;\n\t\t\tbridges.push({\n\t\t\t\tsource: conduitNodeId,\n\t\t\t\ttarget: tasksNodeId,\n\t\t\t\tkind: \"messages\",\n\t\t\t\tweight: BRIDGE_WEIGHT,\n\t\t\t\tmeta: {\n\t\t\t\t\tisBridge: true,\n\t\t\t\t\tbridgeType: \"conduit->tasks\",\n\t\t\t\t\tdescription: `Conduit message discusses task ${taskId}`,\n\t\t\t\t\tedge_type: row.edge_type\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} catch {}\n\treturn bridges;\n}\n/**\n* Bridge: SIGNALDOCK ↔ TASKS via `tasks.assignee` matching a loaded\n* signaldock agent node.\n*\n* When a task has an `assignee` field and a signaldock node with that\n* agent ID exists in the loaded node set, emit a `messages` bridge\n* from the agent to the task.\n*\n* The `tasks.assignee` column is verified present in `tasks-schema.ts`.\n* The signaldock node ID format is `agent-registry:<agent_id>`.\n*\n* @param db - tasks.db connection.\n* @param nodeIds - Set of loaded node IDs.\n* @returns Bridge edges.\n*/\nfunction bridgeAgentRegistryTasksViaAssignee(db, nodeIds) {\n\tconst bridges = [];\n\ttry {\n\t\tconst rows = allTyped(db.prepare(`SELECT id, assignee\n FROM tasks\n WHERE assignee IS NOT NULL\n AND status NOT IN ('archived', 'cancelled')\n LIMIT 1000`));\n\t\tfor (const row of rows) {\n\t\t\tif (!row.assignee) continue;\n\t\t\tconst tasksNodeId = `tasks:${row.id}`;\n\t\t\tconst signaldockNodeId = `agent-registry:${row.assignee}`;\n\t\t\tif (!nodeIds.has(tasksNodeId) || !nodeIds.has(signaldockNodeId)) continue;\n\t\t\tbridges.push({\n\t\t\t\tsource: signaldockNodeId,\n\t\t\t\ttarget: tasksNodeId,\n\t\t\t\tkind: \"messages\",\n\t\t\t\tweight: BRIDGE_WEIGHT,\n\t\t\t\tmeta: {\n\t\t\t\t\tisBridge: true,\n\t\t\t\t\tbridgeType: \"signaldock->tasks\",\n\t\t\t\t\tdescription: `Agent ${row.assignee} is assigned to task ${row.id}`,\n\t\t\t\t\tassignee: row.assignee\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} catch {}\n\treturn bridges;\n}\n/**\n* Build {@link BridgeStats} from an array of bridge edges.\n*\n* @param bridges - The final emitted bridge set.\n* @param capped - Whether the 2 × node-count cap was applied.\n* @returns Statistics summary.\n*/\nfunction buildStats(bridges, capped) {\n\tconst byType = {\n\t\t\"task->brain\": 0,\n\t\t\"task->nexus\": 0,\n\t\t\"brain->nexus\": 0,\n\t\t\"conduit->tasks\": 0,\n\t\t\"conduit->brain\": 0,\n\t\t\"signaldock->tasks\": 0,\n\t\t\"signaldock->brain\": 0\n\t};\n\tfor (const b of bridges) {\n\t\tconst bt = b.meta.bridgeType;\n\t\tbyType[bt] = (byType[bt] ?? 0) + 1;\n\t}\n\treturn {\n\t\ttotal: bridges.length,\n\t\tbyType,\n\t\tcapped\n\t};\n}\n//#endregion\n//#region src/routes/brain/+page.server.ts\n/**\n* Brain canvas page server load (`/brain`) — progressive-disclosure edition.\n*\n* ## Performance strategy (T990)\n*\n* The prior implementation called `getAllSubstrates({ limit: 5000 })` on every\n* request, serialising all 2000-5000 nodes into the SvelteKit payload before\n* the browser received the first byte. This produced a 3-8 second blank\n* screen.\n*\n* The new strategy ships a **tier-0 payload** (top-200 hub nodes, < 200 ms)\n* so the renderer can mount and paint a meaningful brain shape immediately.\n* The client then fetches tier-1 (up to 1000 nodes) and tier-2 (remaining,\n* up to 5000) from `/api/brain?tier=N` in the background.\n*\n* ### Tier sizes\n*\n* | Tier | Nodes | Target latency |\n* |------|-------|----------------|\n* | 0 | 200 | < 200 ms p95 |\n* | 1 | 1000 | < 1000 ms |\n* | 2 | 5000 | < 3000 ms |\n*\n* Tier 0 is served from an in-memory LRU cache (30-second TTL, 5 entries)\n* so repeated navigations are < 30 ms.\n*\n* ### Client streaming helper\n*\n* The page exports {@link streamRemainingNodes} — an async function that Agent\n* E's page shell calls from `onMount` to fetch tier-1 and tier-2 progressively.\n* The function is exported from this module so the page only needs to import\n* it once; it does NOT run on the server.\n*\n* @module\n* @task T990\n*/\n/**\n* Node cap for tier-0 first paint.\n*\n* Tuned (2026-04-19) after observing that `limit: 5000` produced a 30-45s\n* freeze on first load — five sequential SQLite queries + the stub loader\n* + cross-substrate bridge queries + 5000-node JSON serialisation blew\n* past the time-to-interactive budget.\n*\n* `1500` balances three constraints:\n*\n* - **Complete-enough visual**: with Agent D's cross-substrate bridges\n* wired, 1500 nodes already look like a full brain — the operator's\n* \"missing data\" complaint was about bridges being dead code, not\n* node counts.\n* - **First paint < 3s** on a cold cache even with bridges in-line.\n* - **Cached repeats < 30ms** via the LRU — same as before.\n*\n* Client-side streaming (`streamRemainingNodes()`) can pull tier-1 and\n* tier-2 later if the operator wants the long tail; it stays opt-in.\n*/\nvar TIER0_LIMIT = 1500;\n/**\n* Disable SSR for the brain canvas route.\n*\n* The Three.js / WebGL renderer imports browser-only APIs at module load\n* time, making SSR impossible without significant shim complexity. The\n* route has no meaningful static content, so disabling SSR costs nothing\n* and keeps the server clean.\n*/\nvar ssr = false;\n/**\n* Compute cross-substrate bridge edges for the given graph.\n*\n* Wraps Agent D's {@link computeBridges} with the DB handles obtained\n* from `@cleocode/brain`. Returns an empty array if the project context\n* is missing or the DBs can't be opened.\n*/\nfunction computeBridgesForGraph(graph, ctx) {\n\tif (!ctx) return [];\n\tconst kitNodes = graph.nodes.map((n) => ({\n\t\tid: n.id,\n\t\tsubstrate: n.substrate,\n\t\tkind: n.kind,\n\t\tlabel: n.label\n\t}));\n\ttry {\n\t\treturn computeBridges(kitNodes, {\n\t\t\tbrainDb: getBrainDb(ctx) ?? void 0,\n\t\t\ttasksDb: getTasksDb(ctx) ?? void 0,\n\t\t\tconduitDb: getConduitDb(ctx) ?? void 0,\n\t\t\tnexusDb: getNexusDb() ?? void 0,\n\t\t\tsignaldockDb: getAgentRegistryDb() ?? void 0\n\t\t});\n\t} catch (err) {\n\t\tconsole.warn(\"[brain/load] bridge computation failed:\", err);\n\t\treturn [];\n\t}\n}\nvar load = ({ locals }) => {\n\tconst t0 = performance.now();\n\tconst cacheKey = buildCacheKey({\n\t\tprojectId: locals.projectCtx?.projectId ?? \"\",\n\t\tlimit: TIER0_LIMIT\n\t});\n\tconst cached = getCachedGraph(cacheKey);\n\tif (cached) {\n\t\tconst elapsed = performance.now() - t0;\n\t\trecordBrainLoadDuration(0, elapsed);\n\t\tconst bridges = computeBridgesForGraph(cached, locals.projectCtx);\n\t\tconst metrics = getBrainCacheMetrics();\n\t\tconsole.info(`[brain/load] tier=0 source=cache elapsed=${elapsed.toFixed(1)}ms bridges=${bridges.length} hits=${metrics.hits} misses=${metrics.misses} size=${metrics.size}`);\n\t\treturn {\n\t\t\tgraph: cached,\n\t\t\tbridges,\n\t\t\tfromCache: true,\n\t\t\ttotalNodeCount: cached.truncated ? 5e3 : cached.nodes.length\n\t\t};\n\t}\n\tconst graph = getAllSubstrates({\n\t\tlimit: TIER0_LIMIT,\n\t\tprojectCtx: locals.projectCtx\n\t});\n\tsetCachedGraph(cacheKey, graph);\n\tconst bridges = computeBridgesForGraph(graph, locals.projectCtx);\n\tconst elapsed = performance.now() - t0;\n\trecordBrainLoadDuration(0, elapsed);\n\tconst metrics = getBrainCacheMetrics();\n\tconsole.info(`[brain/load] tier=0 source=db elapsed=${elapsed.toFixed(1)}ms nodes=${graph.nodes.length} bridges=${bridges.length} hits=${metrics.hits} misses=${metrics.misses}`);\n\treturn {\n\t\tgraph,\n\t\tbridges,\n\t\tfromCache: false,\n\t\ttotalNodeCount: graph.truncated ? 5e3 : graph.nodes.length\n\t};\n};\n//#endregion\nexport { load, ssr };\n","import * as server from '../entries/pages/brain/_page.server.ts.js';\n\nexport const index = 3;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/brain/_page.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/brain/+page.server.ts\";\nexport const imports = [\"_app/immutable/nodes/3.DMYcrZeG.js\",\"_app/immutable/chunks/o1PZ6Kzq.js\",\"_app/immutable/chunks/DyGQ_VXC.js\",\"_app/immutable/chunks/DrKWWDpL.js\",\"_app/immutable/chunks/CQCxd1p9.js\",\"_app/immutable/chunks/CKXdW4mW.js\",\"_app/immutable/chunks/DrfFUIvQ.js\",\"_app/immutable/chunks/Bxz2A0ZC.js\",\"_app/immutable/chunks/djL6V-tr.js\",\"_app/immutable/chunks/RptFUp2P.js\",\"_app/immutable/chunks/CEqOYim7.js\"];\nexport const stylesheets = [\"_app/immutable/assets/cluster-label-layer.aRgASjnn.css\",\"_app/immutable/assets/no-face-up.BlswZ73M.css\",\"_app/immutable/assets/ThreeBrainRenderer.BSwu9fuL.css\",\"_app/immutable/assets/Tabs.CU9_rsWl.css\",\"_app/immutable/assets/3.DqDkvXKx.css\"];\nexport const fonts = [];\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"3-CbodebGY.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/brain/_page.server.ts.js","../../../.svelte-kit/adapter-node/nodes/3.js"],"sourcesContent":["import { a as getNexusDb, i as getConduitDb, n as getAgentRegistryDb, o as getTasksDb, r as getBrainDb, t as getAllSubstrates } from \"../../../chunks/src.js\";\nimport { a as setCachedGraph, i as getCachedGraph, n as buildCacheKey, r as getBrainCacheMetrics, t as recordBrainLoadDuration } from \"../../../chunks/brain.js\";\n//#region src/lib/graph/adapters/cross-substrate.ts\n/**\n* Execute a prepared statement and cast to `T[]`.\n* Identical to `allTyped` in `@cleocode/brain/db-connections` —\n* duplicated here so the studio package stays independent.\n*/\nfunction allTyped(stmt, ...params) {\n\treturn stmt.all(...params);\n}\n/** Default weight for all bridge edges — 0.7, higher than intra-substrate defaults. */\nvar BRIDGE_WEIGHT = .7;\n/**\n* Translate a `brain_memory_links.link_type` value to the canonical\n* `EdgeKind` vocabulary.\n*\n* Known values per `BRAIN_LINK_TYPES` in memory-schema.ts:\n* `produced_by | applies_to | informed_by | contradicts`\n*\n* @param linkType - Raw link_type from brain_memory_links.\n* @returns Canonical EdgeKind.\n*/\nfunction memLinkToEdgeKind(linkType) {\n\tif (linkType === \"produced_by\") return \"produced_by\";\n\tif (linkType === \"informed_by\") return \"informed_by\";\n\tif (linkType === \"applies_to\") return \"derived_from\";\n\tif (linkType === \"contradicts\") return \"relates_to\";\n\treturn \"relates_to\";\n}\n/**\n* Returns true when a `brain_page_edges.to_id` value looks like a nexus\n* node path (contains `::` separator for file::Symbol, or is a relative\n* file path with a `/`).\n*\n* Mirrors `isNexusStyleId` from `packages/brain/src/adapters/brain.ts`.\n*\n* @param toId - Candidate ID string from brain_page_edges.\n*/\nfunction isNexusStyleId(toId) {\n\tif (toId.includes(\"::\")) return true;\n\tif (!toId.includes(\":\") && toId.includes(\"/\")) return true;\n\treturn false;\n}\n/**\n* Returns true when a `brain_page_edges.from_id` / `to_id` value represents\n* a task reference (e.g. `\"task:T532\"`).\n*\n* @param id - Candidate ID string from brain_page_edges.\n*/\nfunction isTaskRef(id) {\n\treturn id.startsWith(\"task:\");\n}\n/**\n* Returns true when a `brain_page_edges.from_id` value represents\n* a CONDUIT message reference (e.g. `\"msg:msg_abc123\"`).\n*\n* @param id - Candidate ID string from brain_page_edges.\n*/\nfunction isMsgRef(id) {\n\treturn id.startsWith(\"msg:\");\n}\n/**\n* Compute all cross-substrate bridges between the given node set.\n*\n* This is the primary integration point for Agent C's server load. It\n* is called for tier-0, tier-1, and tier-2 paints. Bridges involving\n* hub nodes are always included — even in tier-0 — because bridges are\n* what makes the first paint look \"alive\".\n*\n* The function:\n* 1. Enumerates each bridge category using SQL queries against the provided DBs.\n* 2. Filters to bridges where both endpoints exist in `nodes`.\n* 3. Deduplicates by (source, target, kind).\n* 4. Applies a 2 × |nodes| cap, sorted by weight descending.\n* 5. Logs per-category counts to `console.info`.\n*\n* @param nodes - Current node set (substrate-prefixed IDs). Only bridges\n* where both endpoints appear here are emitted.\n* @param dbRefs - Optional DB connections. Missing DBs produce zero bridges\n* for that category — no errors are thrown.\n* @returns Array of {@link GraphEdge} objects with `meta.isBridge: true`.\n*\n* @example\n* ```ts\n* import { computeBridges } from '$lib/graph/adapters/cross-substrate.js';\n*\n* const bridges = computeBridges(nodes, { brainDb, tasksDb, nexusDb });\n* const allEdges = [...intraEdges, ...bridges];\n* ```\n*/\nfunction computeBridges(nodes, dbRefs) {\n\tconst nodeIdSet = new Set(nodes.map((n) => n.id));\n\tconst raw = [];\n\tif (dbRefs.brainDb) {\n\t\traw.push(...bridgeTaskBrainViaMemLinks(dbRefs.brainDb, nodeIdSet));\n\t\traw.push(...bridgeTaskBrainViaDecisions(dbRefs.brainDb, nodeIdSet));\n\t}\n\tif (dbRefs.brainDb) {\n\t\traw.push(...bridgeBrainNexusViaPageEdges(dbRefs.brainDb, nodeIdSet));\n\t\traw.push(...bridgeBrainNexusViaObsFiles(dbRefs.brainDb, nodeIdSet));\n\t}\n\tif (dbRefs.brainDb) raw.push(...bridgeConduitTasksViaPageEdges(dbRefs.brainDb, nodeIdSet));\n\tif (dbRefs.tasksDb) raw.push(...bridgeAgentRegistryTasksViaAssignee(dbRefs.tasksDb, nodeIdSet));\n\tconst seen = /* @__PURE__ */ new Set();\n\tconst unique = [];\n\tfor (const b of raw) {\n\t\tconst key = `${b.source}|${b.target}|${b.kind}`;\n\t\tif (!seen.has(key)) {\n\t\t\tseen.add(key);\n\t\t\tunique.push(b);\n\t\t}\n\t}\n\tconst cap = nodes.length * 2;\n\tunique.sort((a, b) => b.weight - a.weight);\n\tconst capped = unique.length > cap;\n\tconst result = capped ? unique.slice(0, cap) : unique;\n\tconst stats = buildStats(result, capped);\n\tconsole.info(`[cross-substrate] bridges emitted: ${stats.total} (capped=${stats.capped}) — ` + Object.entries(stats.byType).filter(([, v]) => v > 0).map(([k, v]) => `${k}:${v}`).join(\", \"));\n\treturn result.map((b, i) => ({\n\t\tid: `bridge-${i}:${b.source}>${b.target}:${b.kind}`,\n\t\tsource: b.source,\n\t\ttarget: b.target,\n\t\tkind: b.kind,\n\t\tweight: b.weight,\n\t\tdirectional: true,\n\t\tmeta: b.meta\n\t}));\n}\n/**\n* Bridge: TASK ↔ BRAIN via `brain_memory_links`.\n*\n* The `brain_memory_links` table stores explicit cross-DB links between\n* typed memory entries and tasks. Each row maps (memory_type, memory_id) →\n* task_id with a semantic link_type.\n*\n* Verified present in `memory-schema.ts` as `brainMemoryLinks`.\n*\n* @param db - brain.db connection.\n* @param nodeIds - Set of loaded node IDs.\n* @returns Bridge edges.\n*/\nfunction bridgeTaskBrainViaMemLinks(db, nodeIds) {\n\tconst bridges = [];\n\ttry {\n\t\tconst rows = allTyped(db.prepare(`SELECT memory_type, memory_id, task_id, link_type\n FROM brain_memory_links\n LIMIT 2000`));\n\t\tfor (const row of rows) {\n\t\t\tconst brainNodeId = `brain:${row.memory_id}`;\n\t\t\tconst tasksNodeId = `tasks:${row.task_id}`;\n\t\t\tif (!nodeIds.has(brainNodeId) || !nodeIds.has(tasksNodeId)) continue;\n\t\t\tconst kind = memLinkToEdgeKind(row.link_type);\n\t\t\tbridges.push({\n\t\t\t\tsource: brainNodeId,\n\t\t\t\ttarget: tasksNodeId,\n\t\t\t\tkind,\n\t\t\t\tweight: BRIDGE_WEIGHT,\n\t\t\t\tmeta: {\n\t\t\t\t\tisBridge: true,\n\t\t\t\t\tbridgeType: \"task->brain\",\n\t\t\t\t\tdescription: `Memory entry ${row.memory_type}:${row.memory_id} ${kind.replace(\"_\", \" \")} task ${row.task_id}`,\n\t\t\t\t\tlink_type: row.link_type,\n\t\t\t\t\tmemory_type: row.memory_type\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} catch {}\n\treturn bridges;\n}\n/**\n* Bridge: TASK ↔ BRAIN via `brain_decisions.context_task_id` and\n* `brain_decisions.context_epic_id`.\n*\n* Both columns are present in the schema as soft FKs into tasks.db.\n* Each decision that cites a task gets an `informed_by` bridge pointing\n* to the task that provided the architectural context.\n*\n* Verified present in `memory-schema.ts` as `brainDecisions.contextTaskId`\n* and `brainDecisions.contextEpicId`.\n*\n* @param db - brain.db connection.\n* @param nodeIds - Set of loaded node IDs.\n* @returns Bridge edges.\n*/\nfunction bridgeTaskBrainViaDecisions(db, nodeIds) {\n\tconst bridges = [];\n\ttry {\n\t\tconst rows = allTyped(db.prepare(`SELECT id, context_task_id, context_epic_id\n FROM brain_decisions\n WHERE context_task_id IS NOT NULL OR context_epic_id IS NOT NULL\n LIMIT 1000`));\n\t\tfor (const row of rows) {\n\t\t\tconst brainNodeId = `brain:${row.id}`;\n\t\t\tif (!nodeIds.has(brainNodeId)) continue;\n\t\t\tif (row.context_task_id) {\n\t\t\t\tconst tasksNodeId = `tasks:${row.context_task_id}`;\n\t\t\t\tif (nodeIds.has(tasksNodeId)) bridges.push({\n\t\t\t\t\tsource: brainNodeId,\n\t\t\t\t\ttarget: tasksNodeId,\n\t\t\t\t\tkind: \"informed_by\",\n\t\t\t\t\tweight: BRIDGE_WEIGHT,\n\t\t\t\t\tmeta: {\n\t\t\t\t\t\tisBridge: true,\n\t\t\t\t\t\tbridgeType: \"task->brain\",\n\t\t\t\t\t\tdescription: `Decision informed by task ${row.context_task_id}`,\n\t\t\t\t\t\tcontext_column: \"context_task_id\"\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t\tif (row.context_epic_id) {\n\t\t\t\tconst tasksNodeId = `tasks:${row.context_epic_id}`;\n\t\t\t\tif (nodeIds.has(tasksNodeId)) bridges.push({\n\t\t\t\t\tsource: brainNodeId,\n\t\t\t\t\ttarget: tasksNodeId,\n\t\t\t\t\tkind: \"informed_by\",\n\t\t\t\t\tweight: BRIDGE_WEIGHT,\n\t\t\t\t\tmeta: {\n\t\t\t\t\t\tisBridge: true,\n\t\t\t\t\t\tbridgeType: \"task->brain\",\n\t\t\t\t\t\tdescription: `Decision informed by epic ${row.context_epic_id}`,\n\t\t\t\t\t\tcontext_column: \"context_epic_id\"\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t} catch {}\n\treturn bridges;\n}\n/**\n* Bridge: BRAIN ↔ NEXUS via `brain_page_edges` where `to_id` is a nexus path.\n*\n* `brain_page_edges.to_id` may store nexus-style IDs:\n* - `\"some/path/file.ts::SymbolName\"` — a file::Symbol reference\n* - `\"some/relative/path.ts\"` — a file path (no `:` prefix)\n*\n* These map to `nexus:<to_id>` in the graph. The existing brain.ts adapter\n* already emits some of these in its `BrainEdge` output; this function\n* surfaces the same bridges at the Studio adapter layer so they flow through\n* the `computeBridges` path and carry `meta.isBridge: true`.\n*\n* @param db - brain.db connection.\n* @param nodeIds - Set of loaded node IDs.\n* @returns Bridge edges.\n*/\nfunction bridgeBrainNexusViaPageEdges(db, nodeIds) {\n\tconst bridges = [];\n\ttry {\n\t\tconst rows = allTyped(db.prepare(`SELECT from_id, to_id, edge_type, weight\n FROM brain_page_edges\n LIMIT 5000`));\n\t\tfor (const row of rows) {\n\t\t\tif (!isNexusStyleId(row.to_id)) continue;\n\t\t\tconst sep = row.from_id.indexOf(\":\");\n\t\t\tif (sep === -1) continue;\n\t\t\tconst prefix = row.from_id.slice(0, sep);\n\t\t\tconst rawId = row.from_id.slice(sep + 1);\n\t\t\tif (!new Set([\n\t\t\t\t\"observation\",\n\t\t\t\t\"decision\",\n\t\t\t\t\"pattern\",\n\t\t\t\t\"learning\"\n\t\t\t]).has(prefix)) continue;\n\t\t\tconst brainNodeId = `brain:${rawId}`;\n\t\t\tconst nexusNodeId = `nexus:${row.to_id}`;\n\t\t\tif (!nodeIds.has(brainNodeId) || !nodeIds.has(nexusNodeId)) continue;\n\t\t\tbridges.push({\n\t\t\t\tsource: brainNodeId,\n\t\t\t\ttarget: nexusNodeId,\n\t\t\t\tkind: \"references\",\n\t\t\t\tweight: Math.min(1, Math.max(.1, row.weight ?? BRIDGE_WEIGHT)),\n\t\t\t\tmeta: {\n\t\t\t\t\tisBridge: true,\n\t\t\t\t\tbridgeType: \"brain->nexus\",\n\t\t\t\t\tdescription: `Brain node ${prefix}:${rawId} references code ${row.to_id}`,\n\t\t\t\t\tedge_type: row.edge_type,\n\t\t\t\t\tlink_kind: \"code\"\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} catch {}\n\treturn bridges;\n}\n/**\n* Bridge: BRAIN ↔ NEXUS via `brain_observations.files_modified_json`.\n*\n* Each observation can carry a JSON array of relative file paths it\n* modified during the session. Each path maps to `nexus:<path>`.\n*\n* Cap: first 5 links per observation to prevent hairballing on\n* large session observations.\n*\n* Verified present in `memory-schema.ts` as `brainObservations.filesModifiedJson`.\n*\n* @param db - brain.db connection.\n* @param nodeIds - Set of loaded node IDs.\n* @returns Bridge edges.\n*/\nfunction bridgeBrainNexusViaObsFiles(db, nodeIds) {\n\tconst bridges = [];\n\tconst MAX_LINKS_PER_OBS = 5;\n\ttry {\n\t\tconst rows = allTyped(db.prepare(`SELECT id, files_modified_json\n FROM brain_observations\n WHERE files_modified_json IS NOT NULL\n AND files_modified_json != '[]'\n LIMIT 500`));\n\t\tfor (const row of rows) {\n\t\t\tif (!row.files_modified_json) continue;\n\t\t\tconst brainNodeId = `brain:${row.id}`;\n\t\t\tif (!nodeIds.has(brainNodeId)) continue;\n\t\t\tlet filePaths;\n\t\t\ttry {\n\t\t\t\tfilePaths = JSON.parse(row.files_modified_json);\n\t\t\t} catch {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (!Array.isArray(filePaths)) continue;\n\t\t\tconst limited = filePaths.slice(0, MAX_LINKS_PER_OBS);\n\t\t\tfor (const rawPath of limited) {\n\t\t\t\tif (typeof rawPath !== \"string\" || rawPath.length === 0) continue;\n\t\t\t\tconst nexusNodeId = `nexus:${rawPath}`;\n\t\t\t\tif (!nodeIds.has(nexusNodeId)) continue;\n\t\t\t\tbridges.push({\n\t\t\t\t\tsource: brainNodeId,\n\t\t\t\t\ttarget: nexusNodeId,\n\t\t\t\t\tkind: \"documents\",\n\t\t\t\t\tweight: BRIDGE_WEIGHT,\n\t\t\t\t\tmeta: {\n\t\t\t\t\t\tisBridge: true,\n\t\t\t\t\t\tbridgeType: \"brain->nexus\",\n\t\t\t\t\t\tdescription: `Observation documents file ${rawPath}`,\n\t\t\t\t\t\tfile_path: rawPath\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t} catch {}\n\treturn bridges;\n}\n/**\n* Bridge: CONDUIT ↔ TASKS via `brain_page_edges` where `from_id` is a\n* `msg:` reference and `to_id` is a `task:` reference.\n*\n* `brain_page_edges` stores cross-substrate links at the page-graph level.\n* The `discusses` edge type (defined in `BRAIN_EDGE_TYPES`) connects\n* CONDUIT message nodes to task nodes.\n*\n* The `conduit:` node prefix is used in the graph even though the\n* page-edge stores `msg:` as the type prefix. Conversion:\n* - `msg:<messageId>` → `conduit:<messageId>`\n* - `task:<taskId>` → `tasks:<taskId>`\n*\n* @param db - brain.db connection (page edges cross-reference conduit).\n* @param nodeIds - Set of loaded node IDs.\n* @returns Bridge edges.\n*/\nfunction bridgeConduitTasksViaPageEdges(db, nodeIds) {\n\tconst bridges = [];\n\ttry {\n\t\tconst rows = allTyped(db.prepare(`SELECT from_id, to_id, edge_type, weight\n FROM brain_page_edges\n WHERE from_id LIKE 'msg:%'\n AND to_id LIKE 'task:%'\n LIMIT 1000`));\n\t\tfor (const row of rows) {\n\t\t\tif (!isMsgRef(row.from_id) || !isTaskRef(row.to_id)) continue;\n\t\t\tconst msgId = row.from_id.slice(4);\n\t\t\tconst taskId = row.to_id.slice(5);\n\t\t\tconst conduitNodeId = `conduit:${msgId}`;\n\t\t\tconst tasksNodeId = `tasks:${taskId}`;\n\t\t\tif (!nodeIds.has(conduitNodeId) || !nodeIds.has(tasksNodeId)) continue;\n\t\t\tbridges.push({\n\t\t\t\tsource: conduitNodeId,\n\t\t\t\ttarget: tasksNodeId,\n\t\t\t\tkind: \"messages\",\n\t\t\t\tweight: BRIDGE_WEIGHT,\n\t\t\t\tmeta: {\n\t\t\t\t\tisBridge: true,\n\t\t\t\t\tbridgeType: \"conduit->tasks\",\n\t\t\t\t\tdescription: `Conduit message discusses task ${taskId}`,\n\t\t\t\t\tedge_type: row.edge_type\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} catch {}\n\treturn bridges;\n}\n/**\n* Bridge: SIGNALDOCK ↔ TASKS via `tasks.assignee` matching a loaded\n* signaldock agent node.\n*\n* When a task has an `assignee` field and a signaldock node with that\n* agent ID exists in the loaded node set, emit a `messages` bridge\n* from the agent to the task.\n*\n* The `tasks.assignee` column is verified present in `tasks-schema.ts`.\n* The signaldock node ID format is `agent-registry:<agent_id>`.\n*\n* @param db - tasks.db connection.\n* @param nodeIds - Set of loaded node IDs.\n* @returns Bridge edges.\n*/\nfunction bridgeAgentRegistryTasksViaAssignee(db, nodeIds) {\n\tconst bridges = [];\n\ttry {\n\t\tconst rows = allTyped(db.prepare(`SELECT id, assignee\n FROM tasks\n WHERE assignee IS NOT NULL\n AND status NOT IN ('archived', 'cancelled')\n LIMIT 1000`));\n\t\tfor (const row of rows) {\n\t\t\tif (!row.assignee) continue;\n\t\t\tconst tasksNodeId = `tasks:${row.id}`;\n\t\t\tconst signaldockNodeId = `agent-registry:${row.assignee}`;\n\t\t\tif (!nodeIds.has(tasksNodeId) || !nodeIds.has(signaldockNodeId)) continue;\n\t\t\tbridges.push({\n\t\t\t\tsource: signaldockNodeId,\n\t\t\t\ttarget: tasksNodeId,\n\t\t\t\tkind: \"messages\",\n\t\t\t\tweight: BRIDGE_WEIGHT,\n\t\t\t\tmeta: {\n\t\t\t\t\tisBridge: true,\n\t\t\t\t\tbridgeType: \"signaldock->tasks\",\n\t\t\t\t\tdescription: `Agent ${row.assignee} is assigned to task ${row.id}`,\n\t\t\t\t\tassignee: row.assignee\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} catch {}\n\treturn bridges;\n}\n/**\n* Build {@link BridgeStats} from an array of bridge edges.\n*\n* @param bridges - The final emitted bridge set.\n* @param capped - Whether the 2 × node-count cap was applied.\n* @returns Statistics summary.\n*/\nfunction buildStats(bridges, capped) {\n\tconst byType = {\n\t\t\"task->brain\": 0,\n\t\t\"task->nexus\": 0,\n\t\t\"brain->nexus\": 0,\n\t\t\"conduit->tasks\": 0,\n\t\t\"conduit->brain\": 0,\n\t\t\"signaldock->tasks\": 0,\n\t\t\"signaldock->brain\": 0\n\t};\n\tfor (const b of bridges) {\n\t\tconst bt = b.meta.bridgeType;\n\t\tbyType[bt] = (byType[bt] ?? 0) + 1;\n\t}\n\treturn {\n\t\ttotal: bridges.length,\n\t\tbyType,\n\t\tcapped\n\t};\n}\n//#endregion\n//#region src/routes/brain/+page.server.ts\n/**\n* Brain canvas page server load (`/brain`) — progressive-disclosure edition.\n*\n* ## Performance strategy (T990)\n*\n* The prior implementation called `getAllSubstrates({ limit: 5000 })` on every\n* request, serialising all 2000-5000 nodes into the SvelteKit payload before\n* the browser received the first byte. This produced a 3-8 second blank\n* screen.\n*\n* The new strategy ships a **tier-0 payload** (top-200 hub nodes, < 200 ms)\n* so the renderer can mount and paint a meaningful brain shape immediately.\n* The client then fetches tier-1 (up to 1000 nodes) and tier-2 (remaining,\n* up to 5000) from `/api/brain?tier=N` in the background.\n*\n* ### Tier sizes\n*\n* | Tier | Nodes | Target latency |\n* |------|-------|----------------|\n* | 0 | 200 | < 200 ms p95 |\n* | 1 | 1000 | < 1000 ms |\n* | 2 | 5000 | < 3000 ms |\n*\n* Tier 0 is served from an in-memory LRU cache (30-second TTL, 5 entries)\n* so repeated navigations are < 30 ms.\n*\n* ### Client streaming helper\n*\n* The page exports {@link streamRemainingNodes} — an async function that Agent\n* E's page shell calls from `onMount` to fetch tier-1 and tier-2 progressively.\n* The function is exported from this module so the page only needs to import\n* it once; it does NOT run on the server.\n*\n* @module\n* @task T990\n*/\n/**\n* Node cap for tier-0 first paint.\n*\n* Tuned (2026-04-19) after observing that `limit: 5000` produced a 30-45s\n* freeze on first load — five sequential SQLite queries + the stub loader\n* + cross-substrate bridge queries + 5000-node JSON serialisation blew\n* past the time-to-interactive budget.\n*\n* `1500` balances three constraints:\n*\n* - **Complete-enough visual**: with Agent D's cross-substrate bridges\n* wired, 1500 nodes already look like a full brain — the operator's\n* \"missing data\" complaint was about bridges being dead code, not\n* node counts.\n* - **First paint < 3s** on a cold cache even with bridges in-line.\n* - **Cached repeats < 30ms** via the LRU — same as before.\n*\n* Client-side streaming (`streamRemainingNodes()`) can pull tier-1 and\n* tier-2 later if the operator wants the long tail; it stays opt-in.\n*/\nvar TIER0_LIMIT = 1500;\n/**\n* Disable SSR for the brain canvas route.\n*\n* The Three.js / WebGL renderer imports browser-only APIs at module load\n* time, making SSR impossible without significant shim complexity. The\n* route has no meaningful static content, so disabling SSR costs nothing\n* and keeps the server clean.\n*/\nvar ssr = false;\n/**\n* Compute cross-substrate bridge edges for the given graph.\n*\n* Wraps Agent D's {@link computeBridges} with the DB handles obtained\n* from `@cleocode/brain`. Returns an empty array if the project context\n* is missing or the DBs can't be opened.\n*/\nfunction computeBridgesForGraph(graph, ctx) {\n\tif (!ctx) return [];\n\tconst kitNodes = graph.nodes.map((n) => ({\n\t\tid: n.id,\n\t\tsubstrate: n.substrate,\n\t\tkind: n.kind,\n\t\tlabel: n.label\n\t}));\n\ttry {\n\t\treturn computeBridges(kitNodes, {\n\t\t\tbrainDb: getBrainDb(ctx) ?? void 0,\n\t\t\ttasksDb: getTasksDb(ctx) ?? void 0,\n\t\t\tconduitDb: getConduitDb(ctx) ?? void 0,\n\t\t\tnexusDb: getNexusDb() ?? void 0,\n\t\t\tsignaldockDb: getAgentRegistryDb() ?? void 0\n\t\t});\n\t} catch (err) {\n\t\tconsole.warn(\"[brain/load] bridge computation failed:\", err);\n\t\treturn [];\n\t}\n}\nvar load = ({ locals }) => {\n\tconst t0 = performance.now();\n\tconst cacheKey = buildCacheKey({\n\t\tprojectId: locals.projectCtx?.projectId ?? \"\",\n\t\tlimit: TIER0_LIMIT\n\t});\n\tconst cached = getCachedGraph(cacheKey);\n\tif (cached) {\n\t\tconst elapsed = performance.now() - t0;\n\t\trecordBrainLoadDuration(0, elapsed);\n\t\tconst bridges = computeBridgesForGraph(cached, locals.projectCtx);\n\t\tconst metrics = getBrainCacheMetrics();\n\t\tconsole.info(`[brain/load] tier=0 source=cache elapsed=${elapsed.toFixed(1)}ms bridges=${bridges.length} hits=${metrics.hits} misses=${metrics.misses} size=${metrics.size}`);\n\t\treturn {\n\t\t\tgraph: cached,\n\t\t\tbridges,\n\t\t\tfromCache: true,\n\t\t\ttotalNodeCount: cached.truncated ? 5e3 : cached.nodes.length\n\t\t};\n\t}\n\tconst graph = getAllSubstrates({\n\t\tlimit: TIER0_LIMIT,\n\t\tprojectCtx: locals.projectCtx\n\t});\n\tsetCachedGraph(cacheKey, graph);\n\tconst bridges = computeBridgesForGraph(graph, locals.projectCtx);\n\tconst elapsed = performance.now() - t0;\n\trecordBrainLoadDuration(0, elapsed);\n\tconst metrics = getBrainCacheMetrics();\n\tconsole.info(`[brain/load] tier=0 source=db elapsed=${elapsed.toFixed(1)}ms nodes=${graph.nodes.length} bridges=${bridges.length} hits=${metrics.hits} misses=${metrics.misses}`);\n\treturn {\n\t\tgraph,\n\t\tbridges,\n\t\tfromCache: false,\n\t\ttotalNodeCount: graph.truncated ? 5e3 : graph.nodes.length\n\t};\n};\n//#endregion\nexport { load, ssr };\n","import * as server from '../entries/pages/brain/_page.server.ts.js';\n\nexport const index = 3;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/brain/_page.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/brain/+page.server.ts\";\nexport const imports = [\"_app/immutable/nodes/3.B1Ua25St.js\",\"_app/immutable/chunks/o1PZ6Kzq.js\",\"_app/immutable/chunks/DyGQ_VXC.js\",\"_app/immutable/chunks/DrKWWDpL.js\",\"_app/immutable/chunks/CQCxd1p9.js\",\"_app/immutable/chunks/DQE2lHpR.js\",\"_app/immutable/chunks/Cq8SkApb.js\",\"_app/immutable/chunks/Bxz2A0ZC.js\",\"_app/immutable/chunks/djL6V-tr.js\",\"_app/immutable/chunks/RptFUp2P.js\",\"_app/immutable/chunks/CEqOYim7.js\"];\nexport const stylesheets = [\"_app/immutable/assets/cluster-label-layer.aRgASjnn.css\",\"_app/immutable/assets/no-face-up.BlswZ73M.css\",\"_app/immutable/assets/ThreeBrainRenderer.BSwu9fuL.css\",\"_app/immutable/assets/Tabs.CU9_rsWl.css\",\"_app/immutable/assets/3.DqDkvXKx.css\"];\nexport const fonts = [];\n"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { e as ensure_array_like, a as attr, b as attr_class, s as store_get, c as escape_html, u as unsubscribe_stores, d as attr_style, f as stringify, g as derived } from './dev-BNpEUZI3.js';
|
|
2
2
|
import 'node:module';
|
|
3
|
-
import { p as page } from './stores-
|
|
4
|
-
import './client-
|
|
5
|
-
import './internal-
|
|
3
|
+
import { p as page } from './stores-BcV2X8z1.js';
|
|
4
|
+
import './client-2rpcRzcr.js';
|
|
5
|
+
import './internal-xyE_opYp.js';
|
|
6
6
|
import '@sveltejs/kit/internal';
|
|
7
7
|
import './index-server-DocJvixA.js';
|
|
8
8
|
import './chunk-DDP5xfzh.js';
|
|
@@ -139,4 +139,4 @@ function _layout($$renderer, $$props) {
|
|
|
139
139
|
}
|
|
140
140
|
|
|
141
141
|
export { _layout as default };
|
|
142
|
-
//# sourceMappingURL=_layout.svelte-
|
|
142
|
+
//# sourceMappingURL=_layout.svelte-B31p5awD.js.map
|
package/studio-dist/server/chunks/{_layout.svelte-rswfOTDe.js.map → _layout.svelte-B31p5awD.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_layout.svelte-rswfOTDe.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/_layout.svelte.js"],"sourcesContent":["import { U as escape_html, V as attr, a as derived, d as unsubscribe_stores, l as store_get, n as attr_class, o as ensure_array_like, r as attr_style, u as stringify } from \"../../chunks/dev.js\";\nimport \"../../chunks/index-server.js\";\nimport { t as page } from \"../../chunks/stores.js\";\n//#region src/lib/components/ProjectSelector.svelte\nfunction ProjectSelector($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\t/**\n\t\t* ProjectSelector — header dropdown for switching the active CLEO project.\n\t\t*\n\t\t* Displays the current project name with a colored chip and chevron.\n\t\t* Opens a searchable, filterable dropdown panel. Switching POSTs to\n\t\t* /api/project/switch and reloads the page on success.\n\t\t*\n\t\t* @task T646\n\t\t*/\n\t\t/** Shape returned by listRegisteredProjects(). */\n\t\tlet { projects, activeProjectId } = $$props;\n\t\tlet isOpen = false;\n\t\tlet searchQuery = \"\";\n\t\tlet highlightedIndex = 0;\n\t\tconst TEST_PATH_RE = /\\/(tmp|test|fixture|scratch|sandbox)\\b/i;\n\t\tconst activeProject = derived(() => projects.find((p) => p.projectId === activeProjectId) ?? null);\n\t\t/**\n\t\t* Chip colour tokens, resolved via `getComputedStyle` from\n\t\t* `tokens.css`. Using tokens (not raw hex) keeps the hash-to-colour\n\t\t* projection stable under dark / light theme swaps without leaking\n\t\t* literals into the component source. `--chip-1..8` fall back to\n\t\t* semantic tokens for the common rainbow progression.\n\t\t*\n\t\t* Order mirrors the historical raw-hex table so the name → chip\n\t\t* hash stays deterministic across the T990 tokenisation pass.\n\t\t*/\n\t\tconst CHIP_COLOR_VARS = [\n\t\t\t\"var(--info)\",\n\t\t\t\"var(--success)\",\n\t\t\t\"var(--warning)\",\n\t\t\t\"var(--accent)\",\n\t\t\t\"var(--priority-critical)\",\n\t\t\t\"var(--edge-definition)\",\n\t\t\t\"var(--edge-structural)\",\n\t\t\t\"var(--edge-extends)\"\n\t\t];\n\t\tfunction chipColor(name) {\n\t\t\treturn CHIP_COLOR_VARS[(name.charCodeAt(0) || 0) % CHIP_COLOR_VARS.length] ?? \"var(--accent)\";\n\t\t}\n\t\tfunction chipLetter(name) {\n\t\t\treturn (name[0] ?? \"?\").toUpperCase();\n\t\t}\n\t\t/** Projects after search + test-project filter. */\n\t\tconst filteredProjects = derived(() => {\n\t\t\tlet list = projects;\n\t\t\tlist = list.filter((p) => !TEST_PATH_RE.test(p.projectPath));\n\t\t\tif (searchQuery.trim());\n\t\t\treturn list;\n\t\t});\n\t\tderived(() => filteredProjects()[highlightedIndex] ?? null);\n\t\t$$renderer.push(`<div class=\"project-selector svelte-t4k058\"><button type=\"button\"${attr_class(\"trigger svelte-t4k058\", void 0, { \"open\": isOpen })} aria-haspopup=\"listbox\"${attr(\"aria-expanded\", isOpen)}${attr(\"title\", activeProject() ? activeProject().projectPath : \"Select project\")}>`);\n\t\tif (activeProject()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<span class=\"chip svelte-t4k058\"${attr_style(`background: ${stringify(chipColor(activeProject().name))}`)} aria-hidden=\"true\">${escape_html(chipLetter(activeProject().name))}</span> <span class=\"trigger-name svelte-t4k058\">${escape_html(activeProject().name)}</span>`);\n\t\t} else {\n\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<span class=\"chip placeholder svelte-t4k058\" aria-hidden=\"true\">?</span> <span class=\"trigger-name muted svelte-t4k058\">Select project</span>`);\n\t\t}\n\t\t$$renderer.push(`<!--]--> <svg${attr_class(\"chevron svelte-t4k058\", void 0, { \"rotated\": isOpen })} width=\"10\" height=\"10\" viewBox=\"0 0 10 10\" fill=\"none\" aria-hidden=\"true\"><path d=\"M2 3.5L5 6.5L8 3.5\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path></svg></button> `);\n\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--></div>`);\n\t});\n}\n//#endregion\n//#region src/routes/+layout.svelte\nfunction _layout($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tvar $$store_subs;\n\t\tlet { data, children } = $$props;\n\t\tconst consoleHref = derived(() => data.activeProjectId ? `/studio/${data.activeProjectId}` : \"/projects\");\n\t\tconst navItems = derived(() => [\n\t\t\t{\n\t\t\t\thref: \"/brain\",\n\t\t\t\tlabel: \"Brain\",\n\t\t\t\tdescription: \"5-substrate living canvas\",\n\t\t\t\texact: true\n\t\t\t},\n\t\t\t{\n\t\t\t\thref: \"/brain/overview\",\n\t\t\t\tlabel: \"Memory\",\n\t\t\t\tdescription: \"BRAIN dashboard (decisions, observations, quality)\",\n\t\t\t\texact: false\n\t\t\t},\n\t\t\t{\n\t\t\t\thref: \"/code\",\n\t\t\t\tlabel: \"Code\",\n\t\t\t\tdescription: \"Code intelligence\",\n\t\t\t\texact: false\n\t\t\t},\n\t\t\t{\n\t\t\t\thref: \"/tasks\",\n\t\t\t\tlabel: \"Tasks\",\n\t\t\t\tdescription: \"Task management\",\n\t\t\t\texact: false\n\t\t\t},\n\t\t\t{\n\t\t\t\thref: \"/tasks/kanban\",\n\t\t\t\tlabel: \"Board\",\n\t\t\t\tdescription: \"Agent-lifecycle dispatcher board (read-only)\",\n\t\t\t\texact: false\n\t\t\t},\n\t\t\t{\n\t\t\t\thref: consoleHref(),\n\t\t\t\tlabel: \"Console\",\n\t\t\t\tdescription: \"Saga operator console — workgraph + live dispatcher board\",\n\t\t\t\texact: false\n\t\t\t},\n\t\t\t{\n\t\t\t\thref: \"/settings/vault\",\n\t\t\t\tlabel: \"Vault\",\n\t\t\t\tdescription: \"Service vault — connected services + agent grants (read-only)\",\n\t\t\t\texact: false\n\t\t\t},\n\t\t\t{\n\t\t\t\thref: \"/projects\",\n\t\t\t\tlabel: \"Admin\",\n\t\t\t\tdescription: \"Project registry — scan, index, and manage projects\",\n\t\t\t\texact: false\n\t\t\t}\n\t\t]);\n\t\t$$renderer.push(`<a class=\"skip-link\" href=\"#main\">Skip to content</a> <div class=\"studio-shell svelte-12qhfyh\"><header class=\"studio-header svelte-12qhfyh\"><a href=\"/\" class=\"studio-logo svelte-12qhfyh\"><span class=\"logo-mark svelte-12qhfyh\">C</span> <span class=\"logo-text svelte-12qhfyh\">CLEO Studio</span></a> `);\n\t\tProjectSelector($$renderer, {\n\t\t\tprojects: data.projects,\n\t\t\tactiveProjectId: data.activeProjectId\n\t\t});\n\t\t$$renderer.push(`<!----> <nav class=\"studio-nav svelte-12qhfyh\" aria-label=\"Primary\"><!--[-->`);\n\t\tconst each_array = ensure_array_like(navItems());\n\t\tfor (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n\t\t\tlet item = each_array[$$index];\n\t\t\t$$renderer.push(`<a${attr(\"href\", item.href)}${attr_class(\"nav-link svelte-12qhfyh\", void 0, { \"active\": item.exact ? store_get($$store_subs ??= {}, \"$page\", page).url.pathname === item.href : store_get($$store_subs ??= {}, \"$page\", page).url.pathname.startsWith(item.href) })}${attr(\"title\", item.description)}${attr(\"aria-current\", item.exact ? store_get($$store_subs ??= {}, \"$page\", page).url.pathname === item.href ? \"page\" : void 0 : store_get($$store_subs ??= {}, \"$page\", page).url.pathname.startsWith(item.href) ? \"page\" : void 0)}>${escape_html(item.label)}</a>`);\n\t\t}\n\t\t$$renderer.push(`<!--]--></nav></header> <main id=\"main\" class=\"studio-main svelte-12qhfyh\" tabindex=\"-1\">`);\n\t\tchildren($$renderer);\n\t\t$$renderer.push(`<!----></main></div>`);\n\t\tif ($$store_subs) unsubscribe_stores($$store_subs);\n\t});\n}\n//#endregion\nexport { _layout as default };\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"_layout.svelte-B31p5awD.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/_layout.svelte.js"],"sourcesContent":["import { U as escape_html, V as attr, a as derived, d as unsubscribe_stores, l as store_get, n as attr_class, o as ensure_array_like, r as attr_style, u as stringify } from \"../../chunks/dev.js\";\nimport \"../../chunks/index-server.js\";\nimport { t as page } from \"../../chunks/stores.js\";\n//#region src/lib/components/ProjectSelector.svelte\nfunction ProjectSelector($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\t/**\n\t\t* ProjectSelector — header dropdown for switching the active CLEO project.\n\t\t*\n\t\t* Displays the current project name with a colored chip and chevron.\n\t\t* Opens a searchable, filterable dropdown panel. Switching POSTs to\n\t\t* /api/project/switch and reloads the page on success.\n\t\t*\n\t\t* @task T646\n\t\t*/\n\t\t/** Shape returned by listRegisteredProjects(). */\n\t\tlet { projects, activeProjectId } = $$props;\n\t\tlet isOpen = false;\n\t\tlet searchQuery = \"\";\n\t\tlet highlightedIndex = 0;\n\t\tconst TEST_PATH_RE = /\\/(tmp|test|fixture|scratch|sandbox)\\b/i;\n\t\tconst activeProject = derived(() => projects.find((p) => p.projectId === activeProjectId) ?? null);\n\t\t/**\n\t\t* Chip colour tokens, resolved via `getComputedStyle` from\n\t\t* `tokens.css`. Using tokens (not raw hex) keeps the hash-to-colour\n\t\t* projection stable under dark / light theme swaps without leaking\n\t\t* literals into the component source. `--chip-1..8` fall back to\n\t\t* semantic tokens for the common rainbow progression.\n\t\t*\n\t\t* Order mirrors the historical raw-hex table so the name → chip\n\t\t* hash stays deterministic across the T990 tokenisation pass.\n\t\t*/\n\t\tconst CHIP_COLOR_VARS = [\n\t\t\t\"var(--info)\",\n\t\t\t\"var(--success)\",\n\t\t\t\"var(--warning)\",\n\t\t\t\"var(--accent)\",\n\t\t\t\"var(--priority-critical)\",\n\t\t\t\"var(--edge-definition)\",\n\t\t\t\"var(--edge-structural)\",\n\t\t\t\"var(--edge-extends)\"\n\t\t];\n\t\tfunction chipColor(name) {\n\t\t\treturn CHIP_COLOR_VARS[(name.charCodeAt(0) || 0) % CHIP_COLOR_VARS.length] ?? \"var(--accent)\";\n\t\t}\n\t\tfunction chipLetter(name) {\n\t\t\treturn (name[0] ?? \"?\").toUpperCase();\n\t\t}\n\t\t/** Projects after search + test-project filter. */\n\t\tconst filteredProjects = derived(() => {\n\t\t\tlet list = projects;\n\t\t\tlist = list.filter((p) => !TEST_PATH_RE.test(p.projectPath));\n\t\t\tif (searchQuery.trim());\n\t\t\treturn list;\n\t\t});\n\t\tderived(() => filteredProjects()[highlightedIndex] ?? null);\n\t\t$$renderer.push(`<div class=\"project-selector svelte-t4k058\"><button type=\"button\"${attr_class(\"trigger svelte-t4k058\", void 0, { \"open\": isOpen })} aria-haspopup=\"listbox\"${attr(\"aria-expanded\", isOpen)}${attr(\"title\", activeProject() ? activeProject().projectPath : \"Select project\")}>`);\n\t\tif (activeProject()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<span class=\"chip svelte-t4k058\"${attr_style(`background: ${stringify(chipColor(activeProject().name))}`)} aria-hidden=\"true\">${escape_html(chipLetter(activeProject().name))}</span> <span class=\"trigger-name svelte-t4k058\">${escape_html(activeProject().name)}</span>`);\n\t\t} else {\n\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<span class=\"chip placeholder svelte-t4k058\" aria-hidden=\"true\">?</span> <span class=\"trigger-name muted svelte-t4k058\">Select project</span>`);\n\t\t}\n\t\t$$renderer.push(`<!--]--> <svg${attr_class(\"chevron svelte-t4k058\", void 0, { \"rotated\": isOpen })} width=\"10\" height=\"10\" viewBox=\"0 0 10 10\" fill=\"none\" aria-hidden=\"true\"><path d=\"M2 3.5L5 6.5L8 3.5\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path></svg></button> `);\n\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--></div>`);\n\t});\n}\n//#endregion\n//#region src/routes/+layout.svelte\nfunction _layout($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tvar $$store_subs;\n\t\tlet { data, children } = $$props;\n\t\tconst consoleHref = derived(() => data.activeProjectId ? `/studio/${data.activeProjectId}` : \"/projects\");\n\t\tconst navItems = derived(() => [\n\t\t\t{\n\t\t\t\thref: \"/brain\",\n\t\t\t\tlabel: \"Brain\",\n\t\t\t\tdescription: \"5-substrate living canvas\",\n\t\t\t\texact: true\n\t\t\t},\n\t\t\t{\n\t\t\t\thref: \"/brain/overview\",\n\t\t\t\tlabel: \"Memory\",\n\t\t\t\tdescription: \"BRAIN dashboard (decisions, observations, quality)\",\n\t\t\t\texact: false\n\t\t\t},\n\t\t\t{\n\t\t\t\thref: \"/code\",\n\t\t\t\tlabel: \"Code\",\n\t\t\t\tdescription: \"Code intelligence\",\n\t\t\t\texact: false\n\t\t\t},\n\t\t\t{\n\t\t\t\thref: \"/tasks\",\n\t\t\t\tlabel: \"Tasks\",\n\t\t\t\tdescription: \"Task management\",\n\t\t\t\texact: false\n\t\t\t},\n\t\t\t{\n\t\t\t\thref: \"/tasks/kanban\",\n\t\t\t\tlabel: \"Board\",\n\t\t\t\tdescription: \"Agent-lifecycle dispatcher board (read-only)\",\n\t\t\t\texact: false\n\t\t\t},\n\t\t\t{\n\t\t\t\thref: consoleHref(),\n\t\t\t\tlabel: \"Console\",\n\t\t\t\tdescription: \"Saga operator console — workgraph + live dispatcher board\",\n\t\t\t\texact: false\n\t\t\t},\n\t\t\t{\n\t\t\t\thref: \"/settings/vault\",\n\t\t\t\tlabel: \"Vault\",\n\t\t\t\tdescription: \"Service vault — connected services + agent grants (read-only)\",\n\t\t\t\texact: false\n\t\t\t},\n\t\t\t{\n\t\t\t\thref: \"/projects\",\n\t\t\t\tlabel: \"Admin\",\n\t\t\t\tdescription: \"Project registry — scan, index, and manage projects\",\n\t\t\t\texact: false\n\t\t\t}\n\t\t]);\n\t\t$$renderer.push(`<a class=\"skip-link\" href=\"#main\">Skip to content</a> <div class=\"studio-shell svelte-12qhfyh\"><header class=\"studio-header svelte-12qhfyh\"><a href=\"/\" class=\"studio-logo svelte-12qhfyh\"><span class=\"logo-mark svelte-12qhfyh\">C</span> <span class=\"logo-text svelte-12qhfyh\">CLEO Studio</span></a> `);\n\t\tProjectSelector($$renderer, {\n\t\t\tprojects: data.projects,\n\t\t\tactiveProjectId: data.activeProjectId\n\t\t});\n\t\t$$renderer.push(`<!----> <nav class=\"studio-nav svelte-12qhfyh\" aria-label=\"Primary\"><!--[-->`);\n\t\tconst each_array = ensure_array_like(navItems());\n\t\tfor (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n\t\t\tlet item = each_array[$$index];\n\t\t\t$$renderer.push(`<a${attr(\"href\", item.href)}${attr_class(\"nav-link svelte-12qhfyh\", void 0, { \"active\": item.exact ? store_get($$store_subs ??= {}, \"$page\", page).url.pathname === item.href : store_get($$store_subs ??= {}, \"$page\", page).url.pathname.startsWith(item.href) })}${attr(\"title\", item.description)}${attr(\"aria-current\", item.exact ? store_get($$store_subs ??= {}, \"$page\", page).url.pathname === item.href ? \"page\" : void 0 : store_get($$store_subs ??= {}, \"$page\", page).url.pathname.startsWith(item.href) ? \"page\" : void 0)}>${escape_html(item.label)}</a>`);\n\t\t}\n\t\t$$renderer.push(`<!--]--></nav></header> <main id=\"main\" class=\"studio-main svelte-12qhfyh\" tabindex=\"-1\">`);\n\t\tchildren($$renderer);\n\t\t$$renderer.push(`<!----></main></div>`);\n\t\tif ($$store_subs) unsubscribe_stores($$store_subs);\n\t});\n}\n//#endregion\nexport { _layout as default };\n"],"names":[],"mappings":";;;;;;;;;;AAGA;AACA,SAAS,eAAe,CAAC,UAAU,EAAE,OAAO,EAAE;AAC9C,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,KAAK;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,OAAO;AAC7C,EAAE,IAAI,MAAM,GAAG,KAAK;AAIpB,EAAE,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,KAAK,eAAe,CAAC,IAAI,IAAI,CAAC;AACpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,MAAM,eAAe,GAAG;AAC1B,GAAG,aAAa;AAChB,GAAG,gBAAgB;AACnB,GAAG,gBAAgB;AACnB,GAAG,eAAe;AAClB,GAAG,0BAA0B;AAC7B,GAAG,wBAAwB;AAC3B,GAAG,wBAAwB;AAC3B,GAAG;AACH,GAAG;AACH,EAAE,SAAS,SAAS,CAAC,IAAI,EAAE;AAC3B,GAAG,OAAO,eAAe,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,MAAM,CAAC,IAAI,eAAe;AAChG,EAAE;AACF,EAAE,SAAS,UAAU,CAAC,IAAI,EAAE;AAC5B,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,WAAW,EAAE;AACxC,EAAE;AASF,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,iEAAiE,EAAE,UAAU,CAAC,uBAAuB,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,wBAAwB,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,aAAa,EAAE,CAAC,WAAW,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;AACnS,EAAE,IAAI,aAAa,EAAE,EAAE;AACvB,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC/B,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,gCAAgC,EAAE,UAAU,CAAC,CAAC,YAAY,EAAE,SAAS,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB,EAAE,WAAW,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,iDAAiD,EAAE,WAAW,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;AAChS,EAAE,CAAC,MAAM;AACT,GAAG,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AAChC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,6IAA6I,CAAC,CAAC;AACnK,EAAE;AACF,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,UAAU,CAAC,uBAAuB,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC,uNAAuN,CAAC,CAAC;AAC9T,EAAE,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AAC/B,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC;AACnC,CAAC,CAAC,CAAC;AACH;AACA;AACA;AACA,SAAS,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE;AACtC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,KAAK;AACtC,EAAE,IAAI,YAAY;AAClB,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO;AAClC,EAAE,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,eAAe,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,WAAW,CAAC;AAC3G,EAAE,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM;AACjC,GAAG;AACH,IAAI,IAAI,EAAE,QAAQ;AAClB,IAAI,KAAK,EAAE,OAAO;AAClB,IAAI,WAAW,EAAE,2BAA2B;AAC5C,IAAI,KAAK,EAAE;AACX,IAAI;AACJ,GAAG;AACH,IAAI,IAAI,EAAE,iBAAiB;AAC3B,IAAI,KAAK,EAAE,QAAQ;AACnB,IAAI,WAAW,EAAE,oDAAoD;AACrE,IAAI,KAAK,EAAE;AACX,IAAI;AACJ,GAAG;AACH,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,KAAK,EAAE,MAAM;AACjB,IAAI,WAAW,EAAE,mBAAmB;AACpC,IAAI,KAAK,EAAE;AACX,IAAI;AACJ,GAAG;AACH,IAAI,IAAI,EAAE,QAAQ;AAClB,IAAI,KAAK,EAAE,OAAO;AAClB,IAAI,WAAW,EAAE,iBAAiB;AAClC,IAAI,KAAK,EAAE;AACX,IAAI;AACJ,GAAG;AACH,IAAI,IAAI,EAAE,eAAe;AACzB,IAAI,KAAK,EAAE,OAAO;AAClB,IAAI,WAAW,EAAE,8CAA8C;AAC/D,IAAI,KAAK,EAAE;AACX,IAAI;AACJ,GAAG;AACH,IAAI,IAAI,EAAE,WAAW,EAAE;AACvB,IAAI,KAAK,EAAE,SAAS;AACpB,IAAI,WAAW,EAAE,2DAA2D;AAC5E,IAAI,KAAK,EAAE;AACX,IAAI;AACJ,GAAG;AACH,IAAI,IAAI,EAAE,iBAAiB;AAC3B,IAAI,KAAK,EAAE,OAAO;AAClB,IAAI,WAAW,EAAE,+DAA+D;AAChF,IAAI,KAAK,EAAE;AACX,IAAI;AACJ,GAAG;AACH,IAAI,IAAI,EAAE,WAAW;AACrB,IAAI,KAAK,EAAE,OAAO;AAClB,IAAI,WAAW,EAAE,qDAAqD;AACtE,IAAI,KAAK,EAAE;AACX;AACA,GAAG,CAAC;AACJ,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,ySAAyS,CAAC,CAAC;AAC9T,EAAE,eAAe,CAAC,UAAU,EAAE;AAC9B,GAAG,QAAQ,EAAE,IAAI,CAAC,QAAQ;AAC1B,GAAG,eAAe,EAAE,IAAI,CAAC;AACzB,GAAG,CAAC;AACJ,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,4EAA4E,CAAC,CAAC;AACjG,EAAE,MAAM,UAAU,GAAG,iBAAiB,CAAC,QAAQ,EAAE,CAAC;AAClD,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,QAAQ,EAAE,OAAO,EAAE,EAAE;AACrF,GAAG,IAAI,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC;AACjC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,yBAAyB,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,YAAY,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC,YAAY,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,YAAY,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,YAAY,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;AAChkB,EAAE;AACF,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,yFAAyF,CAAC,CAAC;AAC9G,EAAE,QAAQ,CAAC,UAAU,CAAC;AACtB,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,oBAAoB,CAAC,CAAC;AACzC,EAAE,IAAI,YAAY,EAAE,kBAAkB,CAAC,YAAY,CAAC;AACpD,CAAC,CAAC,CAAC;AACH;;;;"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { x as head, c as escape_html, e as ensure_array_like, b as attr_class, a as attr, d as attr_style, g as derived, f as stringify } from './dev-BNpEUZI3.js';
|
|
2
|
-
import { g as goto } from './client-
|
|
2
|
+
import { g as goto } from './client-2rpcRzcr.js';
|
|
3
3
|
import { a as Breadcrumb, C as Card } from './Tabs-DzG6Bn9a.js';
|
|
4
4
|
import { C as ChipGroup, b as Chip } from './ui-DR8zOSpC.js';
|
|
5
5
|
import { d as describeEdgeKind, E as EDGE_STYLE } from './no-face-up-DcejJLy-.js';
|
|
6
6
|
import { C as CosmosRenderer, b as adaptNexusRows } from './nexus-adapter-9EL_VlGI.js';
|
|
7
|
-
import './internal-
|
|
7
|
+
import './internal-xyE_opYp.js';
|
|
8
8
|
import 'node:module';
|
|
9
9
|
import '@sveltejs/kit/internal';
|
|
10
10
|
import './index-server-DocJvixA.js';
|
|
@@ -186,4 +186,4 @@ function _page($$renderer, $$props) {
|
|
|
186
186
|
}
|
|
187
187
|
|
|
188
188
|
export { _page as default };
|
|
189
|
-
//# sourceMappingURL=_page.svelte-
|
|
189
|
+
//# sourceMappingURL=_page.svelte-BIIvdH13.js.map
|
package/studio-dist/server/chunks/{_page.svelte-D8NhlkPD.js.map → _page.svelte-BIIvdH13.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_page.svelte-D8NhlkPD.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/code/community/_id_/_page.svelte.js"],"sourcesContent":["import { U as escape_html, V as attr, a as derived, n as attr_class, o as ensure_array_like, r as attr_style, s as head, u as stringify } from \"../../../../../chunks/dev.js\";\nimport { t as goto } from \"../../../../../chunks/client.js\";\nimport { i as Breadcrumb, r as Card } from \"../../../../../chunks/Tabs.js\";\nimport { c as Chip, s as ChipGroup } from \"../../../../../chunks/ui.js\";\nimport { a as describeEdgeKind, i as EDGE_STYLE } from \"../../../../../chunks/no-face-up.js\";\nimport \"../../../../../chunks/navigation.js\";\nimport { i as CosmosRenderer, n as adaptNexusRows } from \"../../../../../chunks/nexus-adapter.js\";\n//#region src/routes/code/community/[id]/+page.svelte\nfunction _page($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tlet { data } = $$props;\n\t\tconst adapted = derived(() => {\n\t\t\treturn adaptNexusRows(data.nodes.map((n) => ({\n\t\t\t\tid: n.id,\n\t\t\t\tlabel: n.label,\n\t\t\t\tkind: n.kind,\n\t\t\t\tfilePath: n.filePath,\n\t\t\t\tcallerCount: n.callerCount,\n\t\t\t\tcommunityId: data.communityId\n\t\t\t})), data.edges.map((e) => ({\n\t\t\t\tsource: e.source,\n\t\t\t\ttarget: e.target,\n\t\t\t\ttype: e.type\n\t\t\t})));\n\t\t});\n\t\tconst graphNodes = derived(() => adapted().nodes);\n\t\tconst graphEdges = derived(() => adapted().edges);\n\t\tconst graphClusters = derived(() => adapted().clusters);\n\t\tconst COMMUNITY_EDGE_KINDS = [\n\t\t\t\"calls\",\n\t\t\t\"extends\",\n\t\t\t\"implements\",\n\t\t\t\"has_method\",\n\t\t\t\"has_property\",\n\t\t\t\"defines\",\n\t\t\t\"imports\",\n\t\t\t\"accesses\",\n\t\t\t\"references\"\n\t\t];\n\t\tconst MEMBER_KINDS = [\n\t\t\t\"class\",\n\t\t\t\"interface\",\n\t\t\t\"function\",\n\t\t\t\"method\",\n\t\t\t\"enum\",\n\t\t\t\"type_alias\",\n\t\t\t\"file\"\n\t\t];\n\t\tlet visibleEdgeKinds = new Set(COMMUNITY_EDGE_KINDS);\n\t\tlet visibleNodeKinds = new Set(MEMBER_KINDS);\n\t\tlet highlightedNodeId = null;\n\t\tlet selectedNode = null;\n\t\tfunction toggleLabel(kind) {\n\t\t\tconst next = new Set(visibleNodeKinds);\n\t\t\tif (next.has(kind)) next.delete(kind);\n\t\t\telse next.add(kind);\n\t\t\tvisibleNodeKinds = next;\n\t\t}\n\t\tfunction onNodeClick(node) {\n\t\t\tselectedNode = node;\n\t\t\tif (node.kind !== \"community\") goto(`/code/symbol/${encodeURIComponent(node.label)}`);\n\t\t}\n\t\tconst topMembers = derived(() => [...data.nodes].sort((a, b) => b.callerCount - a.callerCount).slice(0, 20));\n\t\tfunction shortPath(filePath) {\n\t\t\treturn filePath.split(\"/\").slice(-2).join(\"/\");\n\t\t}\n\t\tconst edgeKindCounts = derived(() => {\n\t\t\tconst counts = /* @__PURE__ */ new Map();\n\t\t\tfor (const e of graphEdges()) counts.set(e.kind, (counts.get(e.kind) ?? 0) + 1);\n\t\t\treturn counts;\n\t\t});\n\t\tconst nodeKindCounts = derived(() => {\n\t\t\tconst counts = /* @__PURE__ */ new Map();\n\t\t\tfor (const n of graphNodes()) counts.set(n.kind, (counts.get(n.kind) ?? 0) + 1);\n\t\t\treturn counts;\n\t\t});\n\t\thead(\"1ewb8aw\", $$renderer, ($$renderer) => {\n\t\t\t$$renderer.title(($$renderer) => {\n\t\t\t\t$$renderer.push(`<title>${escape_html(data.communityLabel)} — Code — CLEO Studio</title>`);\n\t\t\t});\n\t\t});\n\t\t$$renderer.push(`<section class=\"community-view svelte-1ewb8aw\" aria-labelledby=\"community-title\"><header class=\"page-head svelte-1ewb8aw\">`);\n\t\tBreadcrumb($$renderer, { items: [\n\t\t\t{\n\t\t\t\tlabel: \"Studio\",\n\t\t\t\thref: \"/\"\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: \"Code\",\n\t\t\t\thref: \"/code\"\n\t\t\t},\n\t\t\t{ label: data.communityLabel }\n\t\t] });\n\t\t$$renderer.push(`<!----> <div class=\"title-row svelte-1ewb8aw\"><div><span class=\"eyebrow svelte-1ewb8aw\">NEXUS · Community</span> <h1 id=\"community-title\" class=\"svelte-1ewb8aw\">${escape_html(data.communityLabel)}</h1> <p class=\"subtitle svelte-1ewb8aw\"><span>${escape_html(data.summary.memberCount)} members</span> <span class=\"sep svelte-1ewb8aw\" aria-hidden=\"true\">·</span> <span>${escape_html(data.summary.internalEdgeCount)} internal edges</span> <span class=\"sep svelte-1ewb8aw\" aria-hidden=\"true\">·</span> <span>top kind: <span class=\"kind-badge svelte-1ewb8aw\">${escape_html(data.summary.topKind)}</span></span></p></div></div></header> <div class=\"workbench svelte-1ewb8aw\"><div class=\"stage svelte-1ewb8aw\"><div class=\"stage-scanlines svelte-1ewb8aw\" aria-hidden=\"true\"></div> `);\n\t\tCosmosRenderer($$renderer, {\n\t\t\tnodes: graphNodes(),\n\t\t\tedges: graphEdges(),\n\t\t\tclusters: graphClusters(),\n\t\t\tvisibleEdgeKinds,\n\t\t\tvisibleNodeKinds,\n\t\t\thighlightNodeId: highlightedNodeId,\n\t\t\tshowClusterLabels: false,\n\t\t\tonNodeClick,\n\t\t\theight: \"calc(100vh - 220px)\",\n\t\t\tbaseAlpha: .92\n\t\t});\n\t\t$$renderer.push(`<!----> <footer class=\"legend-dock svelte-1ewb8aw\" aria-label=\"Edge legend\"><span class=\"legend-eyebrow svelte-1ewb8aw\">EDGES (${escape_html(data.summary.internalEdgeCount)})</span> <ul class=\"svelte-1ewb8aw\"><!--[-->`);\n\t\tconst each_array = ensure_array_like(COMMUNITY_EDGE_KINDS);\n\t\tfor (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n\t\t\tlet kind = each_array[$$index];\n\t\t\tconst style = EDGE_STYLE[kind];\n\t\t\tconst active = visibleEdgeKinds.has(kind);\n\t\t\tconst count = edgeKindCounts().get(kind) ?? 0;\n\t\t\t$$renderer.push(`<li><button type=\"button\"${attr_class(\"legend-item svelte-1ewb8aw\", void 0, {\n\t\t\t\t\"active\": active,\n\t\t\t\t\"disabled\": count === 0\n\t\t\t})}${attr(\"disabled\", count === 0, true)}${attr(\"aria-pressed\", active)}${attr(\"title\", describeEdgeKind(kind))}><span${attr_class(\"swatch svelte-1ewb8aw\", void 0, { \"dashed\": Boolean(style.dash) })} aria-hidden=\"true\"${attr_style(\"\", { background: style.color })}></span> <span class=\"legend-label\">${escape_html(kind)}</span> <span class=\"legend-count svelte-1ewb8aw\">${escape_html(count)}</span></button></li>`);\n\t\t}\n\t\t$$renderer.push(`<!--]--></ul></footer></div> <aside class=\"side-panel svelte-1ewb8aw\" aria-label=\"Community controls\">`);\n\t\t{\n\t\t\tfunction children($$renderer) {\n\t\t\t\t$$renderer.push(`<div class=\"panel-stack svelte-1ewb8aw\"><div class=\"panel-section svelte-1ewb8aw\"><h2 class=\"panel-head svelte-1ewb8aw\">Member kinds</h2> `);\n\t\t\t\t{\n\t\t\t\t\tfunction children($$renderer) {\n\t\t\t\t\t\t$$renderer.push(`<!--[-->`);\n\t\t\t\t\t\tconst each_array_1 = ensure_array_like(MEMBER_KINDS);\n\t\t\t\t\t\tfor (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {\n\t\t\t\t\t\t\tlet kind = each_array_1[$$index_1];\n\t\t\t\t\t\t\tconst count = nodeKindCounts().get(kind) ?? 0;\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfunction children($$renderer) {\n\t\t\t\t\t\t\t\t\t$$renderer.push(`<!---->${escape_html(kind)}`);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tChip($$renderer, {\n\t\t\t\t\t\t\t\t\tactive: visibleNodeKinds.has(kind),\n\t\t\t\t\t\t\t\t\tdisabled: count === 0,\n\t\t\t\t\t\t\t\t\tcount,\n\t\t\t\t\t\t\t\t\tonclick: () => toggleLabel(kind),\n\t\t\t\t\t\t\t\t\tchildren,\n\t\t\t\t\t\t\t\t\t$$slots: { default: true }\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$$renderer.push(`<!--]-->`);\n\t\t\t\t\t}\n\t\t\t\t\tChipGroup($$renderer, {\n\t\t\t\t\t\tchildren,\n\t\t\t\t\t\t$$slots: { default: true }\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!----></div> <div class=\"panel-section svelte-1ewb8aw\"><h2 class=\"panel-head svelte-1ewb8aw\">Top by callers</h2> <ol class=\"member-list svelte-1ewb8aw\"><!--[-->`);\n\t\t\t\tconst each_array_2 = ensure_array_like(topMembers());\n\t\t\t\tfor (let $$index_2 = 0, $$length = each_array_2.length; $$index_2 < $$length; $$index_2++) {\n\t\t\t\t\tlet m = each_array_2[$$index_2];\n\t\t\t\t\t$$renderer.push(`<li><a class=\"member-row svelte-1ewb8aw\"${attr(\"href\", `/code/symbol/${stringify(encodeURIComponent(m.label))}`)}><span class=\"member-label svelte-1ewb8aw\">${escape_html(m.label)}</span> <span class=\"member-meta svelte-1ewb8aw\"><span class=\"member-kind svelte-1ewb8aw\">${escape_html(m.kind)}</span> `);\n\t\t\t\t\tif (m.filePath) {\n\t\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t\t$$renderer.push(`<span class=\"member-path svelte-1ewb8aw\">${escape_html(shortPath(m.filePath))}</span>`);\n\t\t\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t$$renderer.push(`<!--]--> <span class=\"member-count svelte-1ewb8aw\">${escape_html(m.callerCount)}×</span></span></a></li>`);\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]--></ol></div> `);\n\t\t\t\tif (selectedNode) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<div class=\"panel-section svelte-1ewb8aw\"><h2 class=\"panel-head svelte-1ewb8aw\">Selected</h2> <div class=\"selected-card svelte-1ewb8aw\"><span class=\"selected-label svelte-1ewb8aw\">${escape_html(selectedNode.label)}</span> <span class=\"selected-kind svelte-1ewb8aw\">${escape_html(selectedNode.kind)}</span> `);\n\t\t\t\t\tif (typeof selectedNode.meta?.filePath === \"string\") {\n\t\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t\t$$renderer.push(`<span class=\"selected-meta svelte-1ewb8aw\">${escape_html(shortPath(selectedNode.meta.filePath))}</span>`);\n\t\t\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t$$renderer.push(`<!--]--></div></div>`);\n\t\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t\t}\n\t\t\tCard($$renderer, {\n\t\t\t\televation: 1,\n\t\t\t\tpadding: \"cozy\",\n\t\t\t\tchildren,\n\t\t\t\t$$slots: { default: true }\n\t\t\t});\n\t\t}\n\t\t$$renderer.push(`<!----></aside></div></section>`);\n\t});\n}\n//#endregion\nexport { _page as default };\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"_page.svelte-BIIvdH13.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/code/community/_id_/_page.svelte.js"],"sourcesContent":["import { U as escape_html, V as attr, a as derived, n as attr_class, o as ensure_array_like, r as attr_style, s as head, u as stringify } from \"../../../../../chunks/dev.js\";\nimport { t as goto } from \"../../../../../chunks/client.js\";\nimport { i as Breadcrumb, r as Card } from \"../../../../../chunks/Tabs.js\";\nimport { c as Chip, s as ChipGroup } from \"../../../../../chunks/ui.js\";\nimport { a as describeEdgeKind, i as EDGE_STYLE } from \"../../../../../chunks/no-face-up.js\";\nimport \"../../../../../chunks/navigation.js\";\nimport { i as CosmosRenderer, n as adaptNexusRows } from \"../../../../../chunks/nexus-adapter.js\";\n//#region src/routes/code/community/[id]/+page.svelte\nfunction _page($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tlet { data } = $$props;\n\t\tconst adapted = derived(() => {\n\t\t\treturn adaptNexusRows(data.nodes.map((n) => ({\n\t\t\t\tid: n.id,\n\t\t\t\tlabel: n.label,\n\t\t\t\tkind: n.kind,\n\t\t\t\tfilePath: n.filePath,\n\t\t\t\tcallerCount: n.callerCount,\n\t\t\t\tcommunityId: data.communityId\n\t\t\t})), data.edges.map((e) => ({\n\t\t\t\tsource: e.source,\n\t\t\t\ttarget: e.target,\n\t\t\t\ttype: e.type\n\t\t\t})));\n\t\t});\n\t\tconst graphNodes = derived(() => adapted().nodes);\n\t\tconst graphEdges = derived(() => adapted().edges);\n\t\tconst graphClusters = derived(() => adapted().clusters);\n\t\tconst COMMUNITY_EDGE_KINDS = [\n\t\t\t\"calls\",\n\t\t\t\"extends\",\n\t\t\t\"implements\",\n\t\t\t\"has_method\",\n\t\t\t\"has_property\",\n\t\t\t\"defines\",\n\t\t\t\"imports\",\n\t\t\t\"accesses\",\n\t\t\t\"references\"\n\t\t];\n\t\tconst MEMBER_KINDS = [\n\t\t\t\"class\",\n\t\t\t\"interface\",\n\t\t\t\"function\",\n\t\t\t\"method\",\n\t\t\t\"enum\",\n\t\t\t\"type_alias\",\n\t\t\t\"file\"\n\t\t];\n\t\tlet visibleEdgeKinds = new Set(COMMUNITY_EDGE_KINDS);\n\t\tlet visibleNodeKinds = new Set(MEMBER_KINDS);\n\t\tlet highlightedNodeId = null;\n\t\tlet selectedNode = null;\n\t\tfunction toggleLabel(kind) {\n\t\t\tconst next = new Set(visibleNodeKinds);\n\t\t\tif (next.has(kind)) next.delete(kind);\n\t\t\telse next.add(kind);\n\t\t\tvisibleNodeKinds = next;\n\t\t}\n\t\tfunction onNodeClick(node) {\n\t\t\tselectedNode = node;\n\t\t\tif (node.kind !== \"community\") goto(`/code/symbol/${encodeURIComponent(node.label)}`);\n\t\t}\n\t\tconst topMembers = derived(() => [...data.nodes].sort((a, b) => b.callerCount - a.callerCount).slice(0, 20));\n\t\tfunction shortPath(filePath) {\n\t\t\treturn filePath.split(\"/\").slice(-2).join(\"/\");\n\t\t}\n\t\tconst edgeKindCounts = derived(() => {\n\t\t\tconst counts = /* @__PURE__ */ new Map();\n\t\t\tfor (const e of graphEdges()) counts.set(e.kind, (counts.get(e.kind) ?? 0) + 1);\n\t\t\treturn counts;\n\t\t});\n\t\tconst nodeKindCounts = derived(() => {\n\t\t\tconst counts = /* @__PURE__ */ new Map();\n\t\t\tfor (const n of graphNodes()) counts.set(n.kind, (counts.get(n.kind) ?? 0) + 1);\n\t\t\treturn counts;\n\t\t});\n\t\thead(\"1ewb8aw\", $$renderer, ($$renderer) => {\n\t\t\t$$renderer.title(($$renderer) => {\n\t\t\t\t$$renderer.push(`<title>${escape_html(data.communityLabel)} — Code — CLEO Studio</title>`);\n\t\t\t});\n\t\t});\n\t\t$$renderer.push(`<section class=\"community-view svelte-1ewb8aw\" aria-labelledby=\"community-title\"><header class=\"page-head svelte-1ewb8aw\">`);\n\t\tBreadcrumb($$renderer, { items: [\n\t\t\t{\n\t\t\t\tlabel: \"Studio\",\n\t\t\t\thref: \"/\"\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: \"Code\",\n\t\t\t\thref: \"/code\"\n\t\t\t},\n\t\t\t{ label: data.communityLabel }\n\t\t] });\n\t\t$$renderer.push(`<!----> <div class=\"title-row svelte-1ewb8aw\"><div><span class=\"eyebrow svelte-1ewb8aw\">NEXUS · Community</span> <h1 id=\"community-title\" class=\"svelte-1ewb8aw\">${escape_html(data.communityLabel)}</h1> <p class=\"subtitle svelte-1ewb8aw\"><span>${escape_html(data.summary.memberCount)} members</span> <span class=\"sep svelte-1ewb8aw\" aria-hidden=\"true\">·</span> <span>${escape_html(data.summary.internalEdgeCount)} internal edges</span> <span class=\"sep svelte-1ewb8aw\" aria-hidden=\"true\">·</span> <span>top kind: <span class=\"kind-badge svelte-1ewb8aw\">${escape_html(data.summary.topKind)}</span></span></p></div></div></header> <div class=\"workbench svelte-1ewb8aw\"><div class=\"stage svelte-1ewb8aw\"><div class=\"stage-scanlines svelte-1ewb8aw\" aria-hidden=\"true\"></div> `);\n\t\tCosmosRenderer($$renderer, {\n\t\t\tnodes: graphNodes(),\n\t\t\tedges: graphEdges(),\n\t\t\tclusters: graphClusters(),\n\t\t\tvisibleEdgeKinds,\n\t\t\tvisibleNodeKinds,\n\t\t\thighlightNodeId: highlightedNodeId,\n\t\t\tshowClusterLabels: false,\n\t\t\tonNodeClick,\n\t\t\theight: \"calc(100vh - 220px)\",\n\t\t\tbaseAlpha: .92\n\t\t});\n\t\t$$renderer.push(`<!----> <footer class=\"legend-dock svelte-1ewb8aw\" aria-label=\"Edge legend\"><span class=\"legend-eyebrow svelte-1ewb8aw\">EDGES (${escape_html(data.summary.internalEdgeCount)})</span> <ul class=\"svelte-1ewb8aw\"><!--[-->`);\n\t\tconst each_array = ensure_array_like(COMMUNITY_EDGE_KINDS);\n\t\tfor (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n\t\t\tlet kind = each_array[$$index];\n\t\t\tconst style = EDGE_STYLE[kind];\n\t\t\tconst active = visibleEdgeKinds.has(kind);\n\t\t\tconst count = edgeKindCounts().get(kind) ?? 0;\n\t\t\t$$renderer.push(`<li><button type=\"button\"${attr_class(\"legend-item svelte-1ewb8aw\", void 0, {\n\t\t\t\t\"active\": active,\n\t\t\t\t\"disabled\": count === 0\n\t\t\t})}${attr(\"disabled\", count === 0, true)}${attr(\"aria-pressed\", active)}${attr(\"title\", describeEdgeKind(kind))}><span${attr_class(\"swatch svelte-1ewb8aw\", void 0, { \"dashed\": Boolean(style.dash) })} aria-hidden=\"true\"${attr_style(\"\", { background: style.color })}></span> <span class=\"legend-label\">${escape_html(kind)}</span> <span class=\"legend-count svelte-1ewb8aw\">${escape_html(count)}</span></button></li>`);\n\t\t}\n\t\t$$renderer.push(`<!--]--></ul></footer></div> <aside class=\"side-panel svelte-1ewb8aw\" aria-label=\"Community controls\">`);\n\t\t{\n\t\t\tfunction children($$renderer) {\n\t\t\t\t$$renderer.push(`<div class=\"panel-stack svelte-1ewb8aw\"><div class=\"panel-section svelte-1ewb8aw\"><h2 class=\"panel-head svelte-1ewb8aw\">Member kinds</h2> `);\n\t\t\t\t{\n\t\t\t\t\tfunction children($$renderer) {\n\t\t\t\t\t\t$$renderer.push(`<!--[-->`);\n\t\t\t\t\t\tconst each_array_1 = ensure_array_like(MEMBER_KINDS);\n\t\t\t\t\t\tfor (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {\n\t\t\t\t\t\t\tlet kind = each_array_1[$$index_1];\n\t\t\t\t\t\t\tconst count = nodeKindCounts().get(kind) ?? 0;\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfunction children($$renderer) {\n\t\t\t\t\t\t\t\t\t$$renderer.push(`<!---->${escape_html(kind)}`);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tChip($$renderer, {\n\t\t\t\t\t\t\t\t\tactive: visibleNodeKinds.has(kind),\n\t\t\t\t\t\t\t\t\tdisabled: count === 0,\n\t\t\t\t\t\t\t\t\tcount,\n\t\t\t\t\t\t\t\t\tonclick: () => toggleLabel(kind),\n\t\t\t\t\t\t\t\t\tchildren,\n\t\t\t\t\t\t\t\t\t$$slots: { default: true }\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t$$renderer.push(`<!--]-->`);\n\t\t\t\t\t}\n\t\t\t\t\tChipGroup($$renderer, {\n\t\t\t\t\t\tchildren,\n\t\t\t\t\t\t$$slots: { default: true }\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!----></div> <div class=\"panel-section svelte-1ewb8aw\"><h2 class=\"panel-head svelte-1ewb8aw\">Top by callers</h2> <ol class=\"member-list svelte-1ewb8aw\"><!--[-->`);\n\t\t\t\tconst each_array_2 = ensure_array_like(topMembers());\n\t\t\t\tfor (let $$index_2 = 0, $$length = each_array_2.length; $$index_2 < $$length; $$index_2++) {\n\t\t\t\t\tlet m = each_array_2[$$index_2];\n\t\t\t\t\t$$renderer.push(`<li><a class=\"member-row svelte-1ewb8aw\"${attr(\"href\", `/code/symbol/${stringify(encodeURIComponent(m.label))}`)}><span class=\"member-label svelte-1ewb8aw\">${escape_html(m.label)}</span> <span class=\"member-meta svelte-1ewb8aw\"><span class=\"member-kind svelte-1ewb8aw\">${escape_html(m.kind)}</span> `);\n\t\t\t\t\tif (m.filePath) {\n\t\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t\t$$renderer.push(`<span class=\"member-path svelte-1ewb8aw\">${escape_html(shortPath(m.filePath))}</span>`);\n\t\t\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t$$renderer.push(`<!--]--> <span class=\"member-count svelte-1ewb8aw\">${escape_html(m.callerCount)}×</span></span></a></li>`);\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]--></ol></div> `);\n\t\t\t\tif (selectedNode) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<div class=\"panel-section svelte-1ewb8aw\"><h2 class=\"panel-head svelte-1ewb8aw\">Selected</h2> <div class=\"selected-card svelte-1ewb8aw\"><span class=\"selected-label svelte-1ewb8aw\">${escape_html(selectedNode.label)}</span> <span class=\"selected-kind svelte-1ewb8aw\">${escape_html(selectedNode.kind)}</span> `);\n\t\t\t\t\tif (typeof selectedNode.meta?.filePath === \"string\") {\n\t\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t\t$$renderer.push(`<span class=\"selected-meta svelte-1ewb8aw\">${escape_html(shortPath(selectedNode.meta.filePath))}</span>`);\n\t\t\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t$$renderer.push(`<!--]--></div></div>`);\n\t\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t\t}\n\t\t\tCard($$renderer, {\n\t\t\t\televation: 1,\n\t\t\t\tpadding: \"cozy\",\n\t\t\t\tchildren,\n\t\t\t\t$$slots: { default: true }\n\t\t\t});\n\t\t}\n\t\t$$renderer.push(`<!----></aside></div></section>`);\n\t});\n}\n//#endregion\nexport { _page as default };\n"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { s as store_get, x as head, b as attr_class, c as escape_html, a as attr, e as ensure_array_like, d as attr_style, u as unsubscribe_stores, g as derived, f as stringify } from './dev-BNpEUZI3.js';
|
|
2
2
|
import 'node:module';
|
|
3
3
|
import { x as TASK_STATUSES } from './paths-CV7S5-Zm.js';
|
|
4
|
-
import { p as page } from './stores-
|
|
5
|
-
import './client-
|
|
4
|
+
import { p as page } from './stores-BcV2X8z1.js';
|
|
5
|
+
import './client-2rpcRzcr.js';
|
|
6
6
|
import { T as TaskSearchBox, F as FilterChipGroup, L as LabelsFilter, H as HierarchyTab, G as GraphTab, K as KanbanTab, E as EpicProgressCard, R as RecentActivityFeed, D as DetailDrawer } from './tasks2-Bf9VHrv-.js';
|
|
7
7
|
import 'node:fs';
|
|
8
8
|
import 'node:path';
|
|
@@ -23,7 +23,7 @@ import 'node:child_process';
|
|
|
23
23
|
import 'node:crypto';
|
|
24
24
|
import 'node:process';
|
|
25
25
|
import 'node:async_hooks';
|
|
26
|
-
import './internal-
|
|
26
|
+
import './internal-xyE_opYp.js';
|
|
27
27
|
import '@sveltejs/kit/internal';
|
|
28
28
|
import './index-server-DocJvixA.js';
|
|
29
29
|
import './chunk-DDP5xfzh.js';
|
|
@@ -529,4 +529,4 @@ function _page($$renderer, $$props) {
|
|
|
529
529
|
}
|
|
530
530
|
|
|
531
531
|
export { _page as default };
|
|
532
|
-
//# sourceMappingURL=_page.svelte-
|
|
532
|
+
//# sourceMappingURL=_page.svelte-BdTlq0Gh.js.map
|