# MoonAtlas Data Quality

Snapshot source: `poc/data/snapshot-2026-08-20-all.json`

The filename uses the UTC fetch date. The audit ran on 2026-08-21 in
Asia/Shanghai. Every snapshot record retains fetch timestamp, endpoint,
coordinate, HTTP status, attempt count, raw manifest payload and raw dependency
values.

## Staged results

| Metric | Stage A | Stage B | Full |
| --- | ---: | ---: | ---: |
| Requested manifests | 100 | 500 | 2,062 |
| Successful manifests | 100 | 500 | 2,062 |
| Failed manifests | 0 | 0 | 0 |
| Manifests with non-empty deps | 32 | 204 | 989 |
| Empty or missing deps | 68 | 296 | 1,073 |
| Invalid dependency coordinates | 0 | 3 | 4 |
| Graph nodes | 112 | 553 | 2,062 |
| Unique valid edges | 59 | 473 | 2,512 |
| Fetch success rate | 100% | 100% | 100% |
| Deps presence rate | 32.0% | 40.8% | 47.96% |
| Edge density | 0.004746 | 0.001550 | 0.000591 |

The decreasing density is expected for a sparse package graph and is not by
itself a failure. The stronger evidence is that the full graph contains 2,512
edges, a 1,145-node largest weak component, deep reverse-reachability chains,
and reproducible structural rankings.

## Invalid dependencies

The four rejected dependency keys all point to `Yoorkin/example/list@0.1.4`
from:

- `FreeFoots/mooncake_hello`
- `Lalenture/hello`
- `NerdyLee/newcake_ls`
- `Yoorkin/hello`

`Yoorkin/example/list` is not a current registry module coordinate. These rows
remain in raw snapshot evidence and are reported as invalid rather than turned
into invented nodes.

## Data Gate

**PASS**.

The graph is obtainable without HTML scraping, all live manifests succeeded,
99.84% of observed dependency keys were valid registry coordinates
(2,512 / 2,516), and the resulting graph is large enough to expose transitive
structure. Object-valued dependency constraints and case-sensitive coordinates
must be supported by the production snapshot parser.
