Project Plan¶
Day-to-day tracking lives on the public GitHub Projects board at github.com/orgs/PacketFive/projects/7. The roadmap below is rendered from that board, one lane per epic, one card per task, coloured by status. Drag to pan, scroll to zoom, and click a card to open its issue.
Planned interconnect priority¶
The Interconnect Research: CXL before UALink lane sequences planned CXL specification/profile and QEMU/Linux reuse assessment, scoped guest enumeration and memory-interaction prototyping, and reproducible acceptance evidence ahead of UALink accelerator-peer attachment research. This is development priority, not a technical dependency or a delivery-date commitment. CXL host/device coherent-memory interconnect work and UALink are both outside the current implemented Cnuas surface and distinct from the existing CnuasLink fabric. See the roadmap scope and acceptance gates for the revision/profile decision and unsupported coherence/physical-fidelity boundaries.
Berkeley UCCL integration gates¶
Berkeley UCCL is tracked in the
CnuasNIC lane using the existing
P2P #25 and
AllReduce #26 tasks on
Project 7. Both remain
Blocked in the roadmap and Todo on the board. Their initial issue records
did not specify a failure or dependency; the expanded checklists now require
a pinned upstream/provider compatibility assessment, a bounded RoCEv2 RC
host-memory P2P smoke, then host-memory AllReduce correctness and reproducible
evidence. Assessment stays within these tasks; there is no new epic or schedule.
See the UCCL scope and acceptance gates for the pinned assessment baseline, required verbs, GPU-oriented upstream harness constraints and unsupported surfaces. UCCL is not implemented CnuasCCL or CnuasLink: neither existing component proves UCCL support, GPU compatibility, or real-hardware performance from emulation.
How the graphic is produced¶
scripts/roadmap/export_project_plan.py reads the board through the gh CLI
for statuses and issue links, and reads scripts/roadmap/roadmap.csv for task
membership, epic lanes and reading order. It writes three files that the page
and the download share:
| File | Purpose |
|---|---|
docs/assets/roadmap/cnuas-project-plan.svg |
The graphic embedded above |
docs/assets/roadmap/cnuas-project-plan.pdf |
The download, converted from the same SVG |
docs/assets/roadmap/cnuas-project-plan.json |
Timestamp, source and per-status counts |
Because the PDF is a conversion of the embedded SVG rather than a second drawing, the download and the graphic on screen cannot drift apart. The timestamp is the moment the data was last exported, not the moment the site was built, so it means what it says.
# Refresh from the board
python scripts/roadmap/export_project_plan.py --owner PacketFive
# Refresh from the checked-in CSV, no network
python scripts/roadmap/export_project_plan.py --offline
If the board cannot be reached, the exporter falls back to
scripts/roadmap/roadmap.csv, which is the checked-in source of truth that
seeds the board in the first place, and it records which of the two it used in
the JSON and in the caption on the graphic. A documentation build therefore
never requires network access, and a throttled API can never be mistaken for an
empty roadmap.
Status vocabulary¶
| Board column | Roadmap status | Meaning |
|---|---|---|
| Done | Available | Implemented and exercised |
| In Progress | In Progress | Being worked on now |
| Todo | Planned | Specified, not implemented |
| Todo | Blocked | Waiting on another task |
The Cnuas Roadmap carries the same tasks as prose, with the reasoning behind each epic and the milestones the tasks belong to.