diff --git a/README.md b/README.md index 88886b0..e9ec382 100644 --- a/README.md +++ b/README.md @@ -28,6 +28,9 @@ stable `GEOxxx` diagnostics with explicit evidence. No LLM in the core. No silent CRS guessing. No automatic "fix everything." +

+ GeoDebug architecture, diagnostic scopes, rule families, and CLI example +

## What it catches diff --git a/assets/geodebug-overview.svg b/assets/geodebug-overview.svg new file mode 100644 index 0000000..c43ed56 --- /dev/null +++ b/assets/geodebug-overview.svg @@ -0,0 +1,147 @@ + + GeoDebug — deterministic diagnostics for geospatial data and workflows + GeoDebug architecture from source through adapter, facts, rules, diagnostics, and report, with dataset, relation, and operation rule scopes. + + + + + + + + + + + + + + + GeoDebug + Find the geographic bug, not just the code bug. + + deterministic diagnostics for + geospatial data + workflows + CRS · VECTOR · RASTER · RELATIONS · OPERATIONS + + + + + + + + + + + + + + + + + + + source + your geodata + vector · raster · … + + adapter + read + normalize + format-specific I/O + + facts + CRS · bounds · grid + geometry · metadata + + rules + spatial invariants + explicit evidence + + diagnostics + stable GEOxxx IDs + error · warn · note + + report + terminal + JSON + CI-ready output + + + + + + + + + + + + + dataset + one dataset + relation + datasets together + operation + before execution + + + + + what GeoDebug catches + COMMON SPATIAL BUGS · CAUGHT EARLY + + + + CRS + • missing CRS + • coordinate range + • area of use + + VECTOR + • invalid geometry + + RASTER + • affine transform + • NoData / mask + + RELATIONS + • spatial overlap + • grid alignment + + OPERATIONS + • buffer + • area + • distance + + + + + design principles + 01 deterministic diagnostics + same facts → same result + 02 explicit evidence + findings explain why + UNKNOWN + beats an unsupported + conclusion + + + + + + + $ geodebug preflight roads.geojson --operation buffer --distance 500 + ERROR GEO501 + buffer distance is interpreted in angular coordinate units + \ No newline at end of file