mirror of
https://github.com/DeusData/codebase-memory-mcp.git
synced 2026-11-06 17:49:47 +00:00
The recorded proof runs of CodeAtlasWeb at 1825f9c850ac794066e02606012508b9d393c6aa: screenshots, contact sheets, two screen recordings and the JSON reports of every cycle's smoke run, gate run and audit (227 files, 65 MB). Bernhard Jackiewicz's work, imported unchanged. They sit in their own commit on purpose: his frozen acceptance checks read them (tests/scaffold), his help page points readers at them, and the maintainer may still decide to keep this history out of the public tree. Dropping this commit removes exactly the artifacts and nothing else; the four acceptance checks that bind the report to his repository's own commits are not part of the CI gate either way. Co-authored-by: Bernhard Jackiewicz <bj@techport.io> Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
312 lines
9.4 KiB
JSON
312 lines
9.4 KiB
JSON
{
|
|
"staticChains": 2,
|
|
"observedPathShown": true,
|
|
"observedCount": 3,
|
|
"observedLabel": "smoke-run",
|
|
"staticOnlyCount": 4,
|
|
"runtimeOnlyCount": 1,
|
|
"noTracesHonest": true,
|
|
"hopClickNavigates": true,
|
|
"port": 4271,
|
|
"leftoverProcesses": 0,
|
|
"project": "codeatlasweb-w4b",
|
|
"fixture": "fixtures/atlas-sample (Kopie in einem mkdtemp-Verzeichnis)",
|
|
"target": "createUser",
|
|
"timings": {
|
|
"buildMs": 9449,
|
|
"serverStartMs": 7076,
|
|
"totalMs": 43770
|
|
},
|
|
"generatedAt": "2026-08-28T20:34:06.221Z",
|
|
"error": null,
|
|
"extras": {
|
|
"blockedRequests": [],
|
|
"consoleErrors": [],
|
|
"pageErrors": [],
|
|
"baseCommit": "dccd2294150ef76ba57f4060a24397da3def60a6",
|
|
"indexed": {
|
|
"nodes": 76,
|
|
"edges": 178
|
|
},
|
|
"serverPort": 4270,
|
|
"beforeIngest": {
|
|
"status": "ready",
|
|
"target": "createUser",
|
|
"events": 0,
|
|
"staticPaths": 2,
|
|
"observedPaths": 0,
|
|
"staticOnly": 5,
|
|
"runtimeOnly": 0,
|
|
"staticChains": [
|
|
[
|
|
"src/server.ts",
|
|
"main",
|
|
"createApp",
|
|
"registerUserRoutes",
|
|
"createUser"
|
|
],
|
|
[
|
|
"create",
|
|
"createUser"
|
|
]
|
|
],
|
|
"observedChains": [],
|
|
"observedHops": [],
|
|
"edges": [
|
|
{
|
|
"kind": "static-only",
|
|
"from": "registerUserRoutes",
|
|
"to": "createUser",
|
|
"verdict": ""
|
|
},
|
|
{
|
|
"kind": "static-only",
|
|
"from": "createApp",
|
|
"to": "registerUserRoutes",
|
|
"verdict": ""
|
|
},
|
|
{
|
|
"kind": "static-only",
|
|
"from": "main",
|
|
"to": "createApp",
|
|
"verdict": ""
|
|
},
|
|
{
|
|
"kind": "static-only",
|
|
"from": "src/server.ts",
|
|
"to": "main",
|
|
"verdict": ""
|
|
},
|
|
{
|
|
"kind": "static-only",
|
|
"from": "create",
|
|
"to": "createUser",
|
|
"verdict": ""
|
|
}
|
|
],
|
|
"noTraces": {
|
|
"present": true,
|
|
"message": "No observed call came back for this symbol. CodeAtlas does not watch code while it runs; it reads back what somebody handed the analysis backend.",
|
|
"how": "Hand it a run with the CLI, against the same HOME the server reads. The tool is not on /rpc, so this page cannot do it for you:",
|
|
"command": "echo '{\"project\":\"codeatlasweb-w4b\",\"label\":\"my-run\",\"traces\":[{\"path\":[\"<caller qualified name>\",\"<callee qualified name>\"],\"count\":1}]}' | codebase-memory-mcp cli ingest_traces",
|
|
"format": "One entry is either {\"path\": [...]} with 2 to 256 qualified names, adjacent ones being caller and callee, or a bare {\"caller\": \"...\", \"callee\": \"...\"}. \"count\" and \"label\" are optional. Only pairs whose both ends are in the index are stored; up to ten unresolved names come back so a recorder can be fixed rather than silently losing data.",
|
|
"where": "The backend hands an observation back only where it also records the call, so a recorded call the index has no relation for is stored and cannot be read again through /api/trace or /api/flow."
|
|
},
|
|
"noDivergence": "",
|
|
"truncated": "The walk stopped after 4 hops or 6 chains with callers still to follow, so a chain shown here may be a floor rather than the whole way in."
|
|
},
|
|
"ingest": {
|
|
"status": "stored",
|
|
"label": "smoke-run",
|
|
"pairs_stored": 3,
|
|
"paths_stored": 1,
|
|
"pairs_unmatched": 0,
|
|
"unmatched_sample": [],
|
|
"pair_total": 3
|
|
},
|
|
"afterIngest": {
|
|
"status": "ready",
|
|
"target": "createUser",
|
|
"events": 2,
|
|
"staticPaths": 2,
|
|
"observedPaths": 1,
|
|
"staticOnly": 4,
|
|
"runtimeOnly": 1,
|
|
"staticChains": [
|
|
[
|
|
"src/server.ts",
|
|
"main",
|
|
"createApp",
|
|
"registerUserRoutes",
|
|
"createUser"
|
|
],
|
|
[
|
|
"create",
|
|
"createUser"
|
|
]
|
|
],
|
|
"observedChains": [
|
|
[
|
|
"registerUserRoutes",
|
|
"createUser"
|
|
]
|
|
],
|
|
"observedHops": [
|
|
{
|
|
"name": "createUser",
|
|
"count": 3,
|
|
"label": "smoke-run",
|
|
"lastSeen": "2026-08-28T20:33:54Z"
|
|
}
|
|
],
|
|
"edges": [
|
|
{
|
|
"kind": "static-only",
|
|
"from": "createApp",
|
|
"to": "registerUserRoutes",
|
|
"verdict": ""
|
|
},
|
|
{
|
|
"kind": "static-only",
|
|
"from": "main",
|
|
"to": "createApp",
|
|
"verdict": ""
|
|
},
|
|
{
|
|
"kind": "static-only",
|
|
"from": "src/server.ts",
|
|
"to": "main",
|
|
"verdict": ""
|
|
},
|
|
{
|
|
"kind": "static-only",
|
|
"from": "create",
|
|
"to": "createUser",
|
|
"verdict": ""
|
|
},
|
|
{
|
|
"kind": "runtime-only",
|
|
"from": "createUser",
|
|
"to": "validateUser",
|
|
"verdict": "the index records this call, it is simply not on a way in"
|
|
}
|
|
],
|
|
"noTraces": {
|
|
"present": false,
|
|
"message": "",
|
|
"how": "",
|
|
"command": "",
|
|
"format": "",
|
|
"where": ""
|
|
},
|
|
"noDivergence": "",
|
|
"truncated": "The walk stopped after 4 hops or 6 chains with callers still to follow, so a chain shown here may be a floor rather than the whole way in."
|
|
},
|
|
"hopClicked": {
|
|
"name": "main",
|
|
"expected": "src/server.ts",
|
|
"count": 1,
|
|
"readerAfter": "src/server.ts"
|
|
},
|
|
"gitStatus": [
|
|
"M src/services/userService.ts"
|
|
],
|
|
"reindexed": {
|
|
"nodes": 77,
|
|
"edges": 180
|
|
},
|
|
"impact": {
|
|
"status": "ready",
|
|
"mode": "worktree",
|
|
"badge": "high",
|
|
"tiles": [
|
|
{
|
|
"label": "changed files",
|
|
"value": "1"
|
|
},
|
|
{
|
|
"label": "symbols in them",
|
|
"value": "5"
|
|
},
|
|
{
|
|
"label": "one step out",
|
|
"value": "1"
|
|
},
|
|
{
|
|
"label": "2 steps out",
|
|
"value": "1"
|
|
},
|
|
{
|
|
"label": "endpoints",
|
|
"value": "2"
|
|
},
|
|
{
|
|
"label": "tests affected",
|
|
"value": "1"
|
|
},
|
|
{
|
|
"label": "untested affected",
|
|
"value": "6"
|
|
}
|
|
],
|
|
"rules": [
|
|
"2 endpoints are registered in a file this change reaches.",
|
|
"No test caller was found for 6 affected symbols."
|
|
],
|
|
"narrative": "1 file differs from the baseline, and the index places 5 symbols inside it. The analysis scoped the diff to 2 declarations, and the list below is the 5 symbols the index places inside those files. Walking the calls inwards reaches 2 further symbols within 2 steps. 2 endpoints are registered in a file this change reaches: GET /users, POST /users. No test caller was found for 6 affected symbols, so a change to them would go unnoticed by any automatic check.",
|
|
"evidence": [
|
|
{
|
|
"source": "detect_changes",
|
|
"claim": "1 file differs from the baseline, and the index places 5 symbols inside it.",
|
|
"value": "the change set the analysis reported, plus the calls into it (1 changed file, 7 symbols reported)"
|
|
},
|
|
{
|
|
"source": "detect_changes",
|
|
"claim": "The analysis scoped the diff to 2 declarations, and the list below is the 5 symbols the index places inside those files.",
|
|
"value": "the change set the analysis reported, plus the calls into it (2 seed declarations reported, 5 symbols listed)"
|
|
},
|
|
{
|
|
"source": "detect_changes",
|
|
"claim": "Walking the calls inwards reaches 2 further symbols within 2 steps.",
|
|
"value": "the change set the analysis reported, plus the calls into it (2 callers over 2 walked steps)"
|
|
},
|
|
{
|
|
"source": "architecture",
|
|
"claim": "2 endpoints are registered in a file this change reaches: GET /users, POST /users.",
|
|
"value": "the whole-project summary, including the routes CodeAtlas recovered (3 routes recovered, 2 reached)"
|
|
},
|
|
{
|
|
"source": "facts",
|
|
"claim": "No test caller was found for 6 affected symbols, so a change to them would go unnoticed by any automatic check.",
|
|
"value": "the per-symbol readings: complexity, and callers flagged as test code (7 symbols checked for test callers)"
|
|
}
|
|
],
|
|
"direct": [
|
|
"toUser",
|
|
"listUsers",
|
|
"createUser",
|
|
"create",
|
|
"countUsers"
|
|
],
|
|
"downstream": [
|
|
"registerUserRoutes",
|
|
"createApp"
|
|
],
|
|
"endpoints": [
|
|
{
|
|
"label": "GET /users",
|
|
"via": "file"
|
|
},
|
|
{
|
|
"label": "POST /users",
|
|
"via": "file"
|
|
}
|
|
],
|
|
"untested": 6,
|
|
"routeNote": "Routes were read off the text of 10 indexed source files.",
|
|
"refError": ""
|
|
},
|
|
"refCheck": {
|
|
"callsBefore": 1,
|
|
"callsAfter": 1,
|
|
"refError": "\"main..dev\" is not a usable git ref: a git ref holds no two consecutive dots. Nothing was asked of the analysis backend.",
|
|
"ref": "main..dev"
|
|
},
|
|
"apiRoutes": {
|
|
"/api/layout": 3,
|
|
"/api/tree": 21,
|
|
"/api/trace": 7,
|
|
"/api/flows": 3,
|
|
"/api/flow": 21
|
|
},
|
|
"rpcTools": {
|
|
"index_status": 3,
|
|
"search_graph": 4,
|
|
"query_graph": 82,
|
|
"get_code_snippet": 16,
|
|
"detect_changes": 1,
|
|
"get_architecture": 1
|
|
}
|
|
}
|
|
}
|