code-data-ark 2.0.10__tar.gz → 2.0.11__tar.gz
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.
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/PKG-INFO +1 -1
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/cda/__init__.py +1 -1
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/cda/ui/web.py +27 -27
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/pyproject.toml +1 -1
- code_data_ark-2.0.11/version +1 -0
- code_data_ark-2.0.10/version +0 -1
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/.flake8 +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/.github/workflows/ci.yml +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/.gitignore +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/bin/release.py +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/cda/__main__.py +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/cda/kernel/__init__.py +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/cda/kernel/control_db.py +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/cda/kernel/paths.py +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/cda/kernel/pmf_kernel.py +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/cda/kernel/selfcheck.py +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/cda/pipeline/__init__.py +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/cda/pipeline/embed.py +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/cda/pipeline/extract.py +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/cda/pipeline/ingest.py +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/cda/pipeline/parse_edits.py +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/cda/pipeline/reconstruct.py +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/cda/pipeline/watcher.py +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/cda/ui/__init__.py +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/cda/ui/cli.py +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/changelog.md +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/contributing.md +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/docs/architecture.md +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/docs/examples/usage.md +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/docs/pmf_kernel.md +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/docs/roadmap.md +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/license +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/makefile +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/readme.md +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/tests/test_basic.py +0 -0
- {code_data_ark-2.0.10 → code_data_ark-2.0.11}/tests/test_selfcheck.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: code-data-ark
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.11
|
|
4
4
|
Summary: Code Data Ark — local observability and intelligence platform for VS Code + Copilot Chat sessions
|
|
5
5
|
Project-URL: Homepage, https://github.com/goCosmix/cda
|
|
6
6
|
Project-URL: Repository, https://github.com/goCosmix/cda.git
|
|
@@ -1474,38 +1474,38 @@ INDEX_HTML = """
|
|
|
1474
1474
|
|
|
1475
1475
|
<div class="nav-group">
|
|
1476
1476
|
<div class="nav-group-title">Core</div>
|
|
1477
|
-
<div class="nav-item active" data-page="dashboard"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect x="3" y="3" width="7" height="8" rx="1"/><rect x="14" y="3" width="7" height="5" rx="1"/><rect x="14" y="12" width="7" height="9" rx="1"/><rect x="3" y="14" width="7" height="6" rx="1"/></svg>Dashboard</div>
|
|
1478
|
-
<div class="nav-item" data-page="sessions"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><line x1="16" y1="13" x2="8" y2="13"/><line x1="16" y1="17" x2="8" y2="17"/><line x1="10" y1="9" x2="8" y2="9"/></svg>Sessions</div>
|
|
1479
|
-
<div class="nav-item" data-page="search"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><circle cx="11" cy="11" r="8"/><line x1="21" y1="21" x2="16.65" y2="16.65"/></svg>Search</div>
|
|
1477
|
+
<div class="nav-item active" data-page="dashboard"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><rect x="3" y="3" width="7" height="8" rx="1"/><rect x="14" y="3" width="7" height="5" rx="1"/><rect x="14" y="12" width="7" height="9" rx="1"/><rect x="3" y="14" width="7" height="6" rx="1"/></svg>Dashboard</div>
|
|
1478
|
+
<div class="nav-item" data-page="sessions"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><line x1="16" y1="13" x2="8" y2="13"/><line x1="16" y1="17" x2="8" y2="17"/><line x1="10" y1="9" x2="8" y2="9"/></svg>Sessions</div>
|
|
1479
|
+
<div class="nav-item" data-page="search"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><circle cx="11" cy="11" r="8"/><line x1="21" y1="21" x2="16.65" y2="16.65"/></svg>Search</div>
|
|
1480
1480
|
</div>
|
|
1481
1481
|
|
|
1482
1482
|
<div class="nav-group">
|
|
1483
1483
|
<div class="nav-group-title">Analysis</div>
|
|
1484
|
-
<div class="nav-item" data-page="heat"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M8 14.5a4 4 0 0 1 8 0c0 2.2-2.5 5.5-4 7.5-1.5-2-4-5.3-4-7.5z"/><path d="M12 2.5c0 4.5-2 7.5-2 10.5a4 4 0 0 0 4 4c1.5 0 2-1 2-1s2 1 2-2c0-5-5-8-6-11.5z"/></svg>Heat Analysis</div>
|
|
1485
|
-
<div class="nav-item" data-page="keywords"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M20.59 13.41 13.41 20.59a2 2 0 0 1-2.83 0L3.59 13.6a2 2 0 0 1 0-2.83L10.77 3.59a2 2 0 0 1 2.83 0l7.17 7.17a2 2 0 0 1 0 2.83z"/><path d="M7 7h.01"/></svg>Keywords</div>
|
|
1486
|
-
<div class="nav-item" data-page="signals"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M5 12.55a11 11 0 0 1 14.08 0"/><path d="M8.5 16.5a6 6 0 0 1 7 0"/><path d="M12 20a2 2 0 0 1 2-2 2 2 0 0 1 2 2"/></svg>Signals</div>
|
|
1487
|
-
<div class="nav-item" data-page="behavior"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M12 22a4 4 0 0 0 4-4v-1.5a3.5 3.5 0 0 0-3.5-3.5H11.5A3.5 3.5 0 0 0 8 16.5V18a4 4 0 0 0 4 4z"/><path d="M8 2c-1.11 0-2 .9-2 2v3h12V4c0-1.1-.89-2-2-2H8z"/></svg>Behavior</div>
|
|
1484
|
+
<div class="nav-item" data-page="heat"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M8 14.5a4 4 0 0 1 8 0c0 2.2-2.5 5.5-4 7.5-1.5-2-4-5.3-4-7.5z"/><path d="M12 2.5c0 4.5-2 7.5-2 10.5a4 4 0 0 0 4 4c1.5 0 2-1 2-1s2 1 2-2c0-5-5-8-6-11.5z"/></svg>Heat Analysis</div>
|
|
1485
|
+
<div class="nav-item" data-page="keywords"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M20.59 13.41 13.41 20.59a2 2 0 0 1-2.83 0L3.59 13.6a2 2 0 0 1 0-2.83L10.77 3.59a2 2 0 0 1 2.83 0l7.17 7.17a2 2 0 0 1 0 2.83z"/><path d="M7 7h.01"/></svg>Keywords</div>
|
|
1486
|
+
<div class="nav-item" data-page="signals"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M5 12.55a11 11 0 0 1 14.08 0"/><path d="M8.5 16.5a6 6 0 0 1 7 0"/><path d="M12 20a2 2 0 0 1 2-2 2 2 0 0 1 2 2"/></svg>Signals</div>
|
|
1487
|
+
<div class="nav-item" data-page="behavior"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M12 22a4 4 0 0 0 4-4v-1.5a3.5 3.5 0 0 0-3.5-3.5H11.5A3.5 3.5 0 0 0 8 16.5V18a4 4 0 0 0 4 4z"/><path d="M8 2c-1.11 0-2 .9-2 2v3h12V4c0-1.1-.89-2-2-2H8z"/></svg>Behavior</div>
|
|
1488
1488
|
</div>
|
|
1489
1489
|
|
|
1490
1490
|
<div class="nav-group">
|
|
1491
1491
|
<div class="nav-group-title">Navigation</div>
|
|
1492
|
-
<div class="nav-item" data-page="workspaces"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M4 5a2 2 0 0 1 2-2h4l2 2h8a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2Z"/></svg>Workspaces</div>
|
|
1493
|
-
<div class="nav-item" data-page="tools"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14.7 10.3 13.4 11.6 14.1 12.3a2 2 0 0 1 0 2.83l-5.7 5.7a2 2 0 0 1-2.83 0L3.4 17.7a2 2 0 0 1 0-2.83l5.7-5.7a2 2 0 0 1 2.83 0l.7.7 1.3-1.3"/><path d="M9 14.6l-2-2"/></svg>Tool Calls</div>
|
|
1494
|
-
<div class="nav-item" data-page="memory"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><ellipse cx="12" cy="5" rx="8" ry="3"/><path d="M4 5v6c0 1.66 3.58 3 8 3s8-1.34 8-3V5"/><path d="M4 11v6c0 1.66 3.58 3 8 3s8-1.34 8-3v-6"/></svg>Memory</div>
|
|
1495
|
-
<div class="nav-item" data-page="tokens"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M7 12h10"/><path d="M8 8h8"/><path d="M8 16h8"/><path d="M12 4v16"/></svg>Tokens</div>
|
|
1492
|
+
<div class="nav-item" data-page="workspaces"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M4 5a2 2 0 0 1 2-2h4l2 2h8a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2Z"/></svg>Workspaces</div>
|
|
1493
|
+
<div class="nav-item" data-page="tools"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M14.7 10.3 13.4 11.6 14.1 12.3a2 2 0 0 1 0 2.83l-5.7 5.7a2 2 0 0 1-2.83 0L3.4 17.7a2 2 0 0 1 0-2.83l5.7-5.7a2 2 0 0 1 2.83 0l.7.7 1.3-1.3"/><path d="M9 14.6l-2-2"/></svg>Tool Calls</div>
|
|
1494
|
+
<div class="nav-item" data-page="memory"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><ellipse cx="12" cy="5" rx="8" ry="3"/><path d="M4 5v6c0 1.66 3.58 3 8 3s8-1.34 8-3V5"/><path d="M4 11v6c0 1.66 3.58 3 8 3s8-1.34 8-3v-6"/></svg>Memory</div>
|
|
1495
|
+
<div class="nav-item" data-page="tokens"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M7 12h10"/><path d="M8 8h8"/><path d="M8 16h8"/><path d="M12 4v16"/></svg>Tokens</div>
|
|
1496
1496
|
</div>
|
|
1497
1497
|
|
|
1498
1498
|
<div class="nav-group">
|
|
1499
1499
|
<div class="nav-group-title">Intelligence</div>
|
|
1500
|
-
<div class="nav-item" data-page="alerts"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"/><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/></svg>Alerts</div>
|
|
1501
|
-
<div class="nav-item" data-page="recommendations"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M9 18h6"/><path d="M10 22h4"/><path d="M9 9a3 3 0 0 1 6 0c0 1.38-.56 2.63-1.5 3.5A3 3 0 0 0 12 17a3 3 0 0 0-1.5-4.5C9.56 11.63 9 10.38 9 9z"/></svg>Recommendations</div>
|
|
1502
|
-
<div class="nav-item" data-page="topics"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M12 2 2 7l10 5 10-5-10-5z"/><path d="M2 17l10 5 10-5"/><path d="M2 12l10 5 10-5"/></svg>Topics</div>
|
|
1500
|
+
<div class="nav-item" data-page="alerts"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"/><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/></svg>Alerts</div>
|
|
1501
|
+
<div class="nav-item" data-page="recommendations"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M9 18h6"/><path d="M10 22h4"/><path d="M9 9a3 3 0 0 1 6 0c0 1.38-.56 2.63-1.5 3.5A3 3 0 0 0 12 17a3 3 0 0 0-1.5-4.5C9.56 11.63 9 10.38 9 9z"/></svg>Recommendations</div>
|
|
1502
|
+
<div class="nav-item" data-page="topics"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M12 2 2 7l10 5 10-5-10-5z"/><path d="M2 17l10 5 10-5"/><path d="M2 12l10 5 10-5"/></svg>Topics</div>
|
|
1503
1503
|
</div>
|
|
1504
1504
|
|
|
1505
1505
|
<div class="nav-group">
|
|
1506
1506
|
<div class="nav-group-title">System</div>
|
|
1507
|
-
<div class="nav-item" data-page="pipeline"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><circle cx="6" cy="18" r="3"/><circle cx="6" cy="6" r="3"/><circle cx="18" cy="6" r="3"/><path d="M6 9v6h12"/></svg>Pipeline</div>
|
|
1508
|
-
<div class="nav-item" data-page="query"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="m8 9 4-4 4 4"/><path d="m8 15 4-4 4 4"/></svg>Raw Query</div>
|
|
1507
|
+
<div class="nav-item" data-page="pipeline"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><circle cx="6" cy="18" r="3"/><circle cx="6" cy="6" r="3"/><circle cx="18" cy="6" r="3"/><path d="M6 9v6h12"/></svg>Pipeline</div>
|
|
1508
|
+
<div class="nav-item" data-page="query"><svg class="icon" viewBox="0 0 24 24" aria-hidden="true"><path d="m8 9 4-4 4 4"/><path d="m8 15 4-4 4 4"/></svg>Raw Query</div>
|
|
1509
1509
|
</div>
|
|
1510
1510
|
</div>
|
|
1511
1511
|
|
|
@@ -2086,7 +2086,7 @@ function openSessionDrawer(sessionId) {
|
|
|
2086
2086
|
window.currentSessionDetail = data;
|
|
2087
2087
|
|
|
2088
2088
|
titleEl.textContent = session.title || `Session ${session.session_id || sessionId}`;
|
|
2089
|
-
subtitleEl.textContent = `Workspace ${session.workspace_id || '—'} · ${session.created_at ? new Date(session.created_at).toLocaleString() : 'Unknown date'}`;
|
|
2089
|
+
subtitleEl.textContent = `Workspace ${session.workspace_id || '—'} · ${session.created_at ? new Date(session.created_at).toLocaleString() : 'Unknown date'}`;
|
|
2090
2090
|
|
|
2091
2091
|
body.innerHTML = renderDrawerTabContent('overview', window.currentSessionDetail);
|
|
2092
2092
|
}).catch(err => {
|
|
@@ -2129,7 +2129,7 @@ function renderDrawerTabContent(tab, data) {
|
|
|
2129
2129
|
['Requests', session.request_count || '—'],
|
|
2130
2130
|
['State', session.response_state || '—'],
|
|
2131
2131
|
['Location', session.initial_location || '—'],
|
|
2132
|
-
['Heat Score', `<span style="color: ${heatScore !== 'N/A' && heatScore >= 50 ? 'var(--danger)' : 'var(--accent)'};">${heatScore}</span>`],
|
|
2132
|
+
['Heat Score', `<span style="color: ${heatScore !== 'N/A' && heatScore >= 50 ? 'var(--danger)' : 'var(--accent)'};">${heatScore}</span>`],
|
|
2133
2133
|
['Created At', session.created_at ? new Date(session.created_at).toLocaleString() : 'Unknown']
|
|
2134
2134
|
].map(([label, value]) => `
|
|
2135
2135
|
<div class="data-row">
|
|
@@ -2143,7 +2143,7 @@ function renderDrawerTabContent(tab, data) {
|
|
|
2143
2143
|
|
|
2144
2144
|
const sanitize = text => String(text || '').replace(/</g, '<').replace(/>/g, '>');
|
|
2145
2145
|
const sessionSummary = sanitize(session.summary || analysis.summary || '');
|
|
2146
|
-
const turnPoint = analysis.turning_point_text ? sanitize(analysis.turning_point_text.substring(0, 300)) + (analysis.turning_point_text.length > 300 ? '…' : '') : '';
|
|
2146
|
+
const turnPoint = analysis.turning_point_text ? sanitize(analysis.turning_point_text.substring(0, 300)) + (analysis.turning_point_text.length > 300 ? '…' : '') : '';
|
|
2147
2147
|
|
|
2148
2148
|
if (tab === 'overview') {
|
|
2149
2149
|
const chatCount = exchanges.length;
|
|
@@ -2257,7 +2257,7 @@ function renderDrawerTabContent(tab, data) {
|
|
|
2257
2257
|
}
|
|
2258
2258
|
});
|
|
2259
2259
|
const allToolCalls = toolCalls.length ? toolCalls : embeddedCalls;
|
|
2260
|
-
const toolsHtml = allToolCalls.length ? `<table class="table"><thead><tr><th>#</th><th>Tool</th><th>Exchange</th><th>When</th></tr></thead><tbody>${allToolCalls.map((call, i) => `<tr><td>${i + 1}</td><td>${call.tool_name || call.name || 'Tool'}</td><td>${call.exchange_index || ''}</td><td>${call.created_at ? new Date(call.created_at).toLocaleString() : ''}</td></tr><tr><td colspan="4"><div class="code-block" style="margin: 0; padding: 12px;">${(call.arguments_json || call.arguments || call.args || 'No arguments').replace(/</g, '<').replace(/>/g, '>')}</div></td></tr>`).join('')}</tbody></table>` : '<div class="alert alert-info">No tool calls recorded for this session.</div>';
|
|
2260
|
+
const toolsHtml = allToolCalls.length ? `<table class="table"><thead><tr><th>#</th><th>Tool</th><th>Exchange</th><th>When</th></tr></thead><tbody>${allToolCalls.map((call, i) => `<tr><td>${i + 1}</td><td>${call.tool_name || call.name || 'Tool'}</td><td>${call.exchange_index || ''}</td><td>${call.created_at ? new Date(call.created_at).toLocaleString() : ''}</td></tr><tr><td colspan="4"><div class="code-block" style="margin: 0; padding: 12px;">${(call.arguments_json || call.arguments || call.args || 'No arguments').replace(/</g, '<').replace(/>/g, '>')}</div></td></tr>`).join('')}</tbody></table>` : '<div class="alert alert-info">No tool calls recorded for this session.</div>';
|
|
2261
2261
|
return `
|
|
2262
2262
|
${metadataSection}
|
|
2263
2263
|
<div class="drawer-section">
|
|
@@ -2281,7 +2281,7 @@ function renderDrawerTabContent(tab, data) {
|
|
|
2281
2281
|
</table>
|
|
2282
2282
|
</div>
|
|
2283
2283
|
` : '';
|
|
2284
|
-
const signalsHtml = signals.length ? `<table class="table"><thead><tr><th>#</th><th>Signal</th><th>Created</th><th>Details</th></tr></thead><tbody>${signals.map((s, i) => `<tr><td>${i + 1}</td><td>${s.signal_type || s.matched_keyword || 'Signal'}</td><td>${s.created_at ? new Date(s.created_at).toLocaleString() : ''}</td><td>${(s.signal_text || s.user_message || s.matched_keyword || '').replace(/</g, '<').replace(/>/g, '>')}</td></tr>`).join('')}</tbody></table>` : '<div class="alert alert-info">No exchange signals available.</div>';
|
|
2284
|
+
const signalsHtml = signals.length ? `<table class="table"><thead><tr><th>#</th><th>Signal</th><th>Created</th><th>Details</th></tr></thead><tbody>${signals.map((s, i) => `<tr><td>${i + 1}</td><td>${s.signal_type || s.matched_keyword || 'Signal'}</td><td>${s.created_at ? new Date(s.created_at).toLocaleString() : ''}</td><td>${(s.signal_text || s.user_message || s.matched_keyword || '').replace(/</g, '<').replace(/>/g, '>')}</td></tr>`).join('')}</tbody></table>` : '<div class="alert alert-info">No exchange signals available.</div>';
|
|
2285
2285
|
return `
|
|
2286
2286
|
${metadataSection}
|
|
2287
2287
|
${summaryHtml}
|
|
@@ -2293,7 +2293,7 @@ function renderDrawerTabContent(tab, data) {
|
|
|
2293
2293
|
}
|
|
2294
2294
|
|
|
2295
2295
|
if (tab === 'files') {
|
|
2296
|
-
const fileHtml = vfsEntries.length ? `<table class="table"><thead><tr><th>#</th><th>File</th><th>Type</th><th>Size</th><th>Path</th></tr></thead><tbody>${vfsEntries.map((file, i) => `<tr><td>${i + 1}</td><td>${file.filename || file.source_path || file.source_type}</td><td>${file.content_type || 'unknown'}</td><td>${file.size_bytes ? (file.size_bytes / 1024).toFixed(2) + ' KB' : 'unknown'}</td><td class="truncate">${file.source_path || ''}</td></tr>`).join('')}</tbody></table>` : '<div class="alert alert-info">No session files found.</div>';
|
|
2296
|
+
const fileHtml = vfsEntries.length ? `<table class="table"><thead><tr><th>#</th><th>File</th><th>Type</th><th>Size</th><th>Path</th></tr></thead><tbody>${vfsEntries.map((file, i) => `<tr><td>${i + 1}</td><td>${file.filename || file.source_path || file.source_type}</td><td>${file.content_type || 'unknown'}</td><td>${file.size_bytes ? (file.size_bytes / 1024).toFixed(2) + ' KB' : 'unknown'}</td><td class="truncate">${file.source_path || ''}</td></tr>`).join('')}</tbody></table>` : '<div class="alert alert-info">No session files found.</div>';
|
|
2297
2297
|
return `
|
|
2298
2298
|
${metadataSection}
|
|
2299
2299
|
<div class="drawer-section">
|
|
@@ -2304,7 +2304,7 @@ function renderDrawerTabContent(tab, data) {
|
|
|
2304
2304
|
}
|
|
2305
2305
|
|
|
2306
2306
|
if (tab === 'alerts') {
|
|
2307
|
-
const alertsHtml = alerts.length ? `<table class="table"><thead><tr><th>#</th><th>Alert</th><th>Severity</th><th>Created</th></tr></thead><tbody>${alerts.map((alert, i) => `<tr><td>${i + 1}</td><td>${alert.alert_type || 'Alert'}<div class="alert-text">${(alert.message || '').replace(/</g, '<').replace(/>/g, '>')}</div></td><td>${alert.severity || 'unknown'}</td><td>${alert.created_at ? new Date(alert.created_at).toLocaleString() : ''}</td></tr>`).join('')}</tbody></table>` : '<div class="alert alert-info">No alerts recorded for this session.</div>';
|
|
2307
|
+
const alertsHtml = alerts.length ? `<table class="table"><thead><tr><th>#</th><th>Alert</th><th>Severity</th><th>Created</th></tr></thead><tbody>${alerts.map((alert, i) => `<tr><td>${i + 1}</td><td>${alert.alert_type || 'Alert'}<div class="alert-text">${(alert.message || '').replace(/</g, '<').replace(/>/g, '>')}</div></td><td>${alert.severity || 'unknown'}</td><td>${alert.created_at ? new Date(alert.created_at).toLocaleString() : ''}</td></tr>`).join('')}</tbody></table>` : '<div class="alert alert-info">No alerts recorded for this session.</div>';
|
|
2308
2308
|
return `
|
|
2309
2309
|
${metadataSection}
|
|
2310
2310
|
<div class="drawer-section">
|
|
@@ -2554,14 +2554,14 @@ function initPipeline() {
|
|
|
2554
2554
|
<tbody>
|
|
2555
2555
|
${data.services.map(s => `
|
|
2556
2556
|
<tr>
|
|
2557
|
-
<td><strong>${s.label}</strong><div class="truncate" style="font-size:12px;color:var(--text-tertiary);">${s.description}</div></td>
|
|
2557
|
+
<td><strong>${s.label}</strong><div class="truncate" style="font-size:12px;color:var(--text-tertiary);">${s.description}</div></td>
|
|
2558
2558
|
<td>${s.status}</td>
|
|
2559
2559
|
<td>${s.pid || '—'}</td>
|
|
2560
2560
|
<td>${s.updated_at || '—'}</td>
|
|
2561
2561
|
<td>
|
|
2562
|
-
${s.allowed_actions.includes('start') ? `<button class="button button-secondary small" onclick="runPmfServiceAction('${s.service_id}','start')">Start</button>` : ''}
|
|
2563
|
-
${s.allowed_actions.includes('stop') ? `<button class="button button-secondary small" onclick="runPmfServiceAction('${s.service_id}','stop')">Stop</button>` : ''}
|
|
2564
|
-
${s.allowed_actions.includes('restart') ? `<button class="button button-secondary small" onclick="runPmfServiceAction('${s.service_id}','restart')">Restart</button>` : ''}
|
|
2562
|
+
${s.allowed_actions.includes('start') ? `<button class="button button-secondary small" onclick="runPmfServiceAction('${s.service_id}','start')">Start</button>` : ''}
|
|
2563
|
+
${s.allowed_actions.includes('stop') ? `<button class="button button-secondary small" onclick="runPmfServiceAction('${s.service_id}','stop')">Stop</button>` : ''}
|
|
2564
|
+
${s.allowed_actions.includes('restart') ? `<button class="button button-secondary small" onclick="runPmfServiceAction('${s.service_id}','restart')">Restart</button>` : ''}
|
|
2565
2565
|
</td>
|
|
2566
2566
|
</tr>
|
|
2567
2567
|
`).join('')}
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "code-data-ark"
|
|
7
|
-
version = "2.0.
|
|
7
|
+
version = "2.0.11"
|
|
8
8
|
description = "Code Data Ark — local observability and intelligence platform for VS Code + Copilot Chat sessions"
|
|
9
9
|
readme = "readme.md"
|
|
10
10
|
license = "MIT"
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
2.0.11
|
code_data_ark-2.0.10/version
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
2.0.10
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|