# DL48 Code Atlas

This package contains 17 source-frozen Graphify views plus a small, source-backed cross-repository runtime/build map. It does not contain private source files. Graph JSON exposes symbols, portable repository-relative paths, links, and cluster assignments.

## Open it

From this directory:

```sh
python3 -m http.server 8080 --bind 127.0.0.1
```

Open `http://127.0.0.1:8080/`. Serving over HTTP avoids browser restrictions on local script and JSON loading.

## System shape

- SoC1 owns the browser GUI/control service path, mixer-osc, media/file work, and MTP/player responsibilities.
- SoC2 owns Dante DEP. Project architecture places UAC2 there, but this corpus only proves a generic UAC2 kernel surface from the current SB24 branch; it does not prove DL48 SoC2 startup or deployment.
- SoC3 runs `dsp-stack-ng`.
- Endpoint audio must cross the internal `10.10.10.x` Ethernet plane between SoC2 and SoC3; those bridges remain explicit incomplete boundaries in the curated map.
- The RT1021 fader board exchanges JSON/UART state with web-key-server.
- Yocto package contents and `per-soc-init` runtime ownership are shown separately; one does not prove the other.
- The exact kernel snapshot is the current SB24 branch. SB24 is a separate no-GUI, single-ARM Dante + I/O product; no edge presents DL48 U-Boot as booting that branch or connects it to the DL48 three-SoC runtime.

## Package layout

- `index.html` — landing page, architecture map, graph navigation, hubs, statistics, limitations.
- `graphs/<view>/` — Graphify force graph (where below threshold), tree, report, and graph JSON.
- `evidence/` — exact source manifest and graph index.
- `data/` — small machine-readable landing-page data and the curated cross-repository graph.
- `vendor/` — local D3 and vis-network runtimes plus licenses.
- `SOURCE-SNAPSHOT.json` — concise repository URLs, exact branches/HEADs, selection counts, and path-list pointers.
- `INTEGRAT...[truncated]
- `VERIFY.md` and `verification.json` — real checks and browser results.

## Extraction boundary

Graphify 0.9.29 ran with `--code-only --no-embed` inside an environment with no API credentials. No LLM or external model processed source. The static graphs are navigation aids, not proof of runtime behavior. The curated system map uses portable source citations and marks inferred architecture edges with `_origin: curated_architecture`.

## Reproduction

`SOURCE-SNAPSHOT.json` names each credential-free repository URL and exact Git HEAD. `evidence/corpus-manifest.json` records every included and excluded tracked path. Rebuild snapshots with `git archive <HEAD> -- <included paths>` while lazy fetching is disabled, then run:

```sh
graphify extract <partition> --code-only --no-embed --max-workers 2 --out <output>
graphify cluster-only <output> --no-label
(cd <output> && graphify tree)
```

Force layouts are intentionally absent for views at or above 2,000 nodes after a 3,075-node page took about 19 seconds to load on the validation host. Every such view retains its interactive tree, report, and graph JSON; the complete audio source is also split into runtime, block, platform, tool, and FX views.
