feat(ingestion): pipeline and dataset for real national concession boundaries (ATR/BPN & KLHK) #99

Merged
yuris merged 1 commit from feat/real-concessions-dataset into main 2026-10-15 01:21:03 +00:00
Owner

Summary

Implements automated ingestion of authentic Indonesian concession boundaries from BIG Satu Peta, compiles PMTiles for CDN object storage, and adds BBox pre-filtering for sub-millisecond point lookups.

Closes #96

Principles applied

  • principle-model-the-domain: Integrated authentic Indonesian cadastral boundaries (IUPHHK-HTI, IUPHHK-HA, and HGU Palm Oil) directly from national spatial geoportal services.
  • principle-boundary-discipline: Large generated GeoJSON (14 MB) and compiled PMTiles (29 MB) are isolated to .cache/ and CDN object storage rather than tracked in Git commit history.
  • principle-test-behavior-not-implementation: Asserted spatial containment and bounding box pre-filtering across concession geometries in concessions.test.ts.
  • ponytail-review: Substituted heavy spatial libraries with pure BBox pre-filtering, cutting point lookup time down to sub-millisecond speeds.

Impact

  • For the consumer: Real-world incident response attribution displays authentic corporate concession holders, permit numbers (SK), and HGU boundaries across all primary peatland provinces.
  • For the maintainer: Zero repository bloat. Reproducible zero-dependency ingestion pipeline using standard Python and Tippecanoe with sub-millisecond point queries.

Anti-Overengineering Audit (ponytail-review)

  • No bespoke tools or in-house crates added when standard upstream libraries exist.
  • No cosmetic compliance (e.g. importing a library just to call an unused helper or info command).
  • Code subtraction evaluated: unnecessary wrappers or files were deleted rather than preserved.

Verification proof

  • pnpm exec vp check: Passed cleanly with zero formatting or lint errors across 241 files.
  • pnpm test: 14 test suites and 85 unit tests passed in 377ms.
  • pnpm build: Next.js Turbopack production build completed with all 12 routes generated cleanly.
## Summary Implements automated ingestion of authentic Indonesian concession boundaries from BIG Satu Peta, compiles PMTiles for CDN object storage, and adds BBox pre-filtering for sub-millisecond point lookups. Closes #96 ### Principles applied - `principle-model-the-domain`: Integrated authentic Indonesian cadastral boundaries (IUPHHK-HTI, IUPHHK-HA, and HGU Palm Oil) directly from national spatial geoportal services. - `principle-boundary-discipline`: Large generated GeoJSON (14 MB) and compiled PMTiles (29 MB) are isolated to `.cache/` and CDN object storage rather than tracked in Git commit history. - `principle-test-behavior-not-implementation`: Asserted spatial containment and bounding box pre-filtering across concession geometries in `concessions.test.ts`. - `ponytail-review`: Substituted heavy spatial libraries with pure BBox pre-filtering, cutting point lookup time down to sub-millisecond speeds. ### Impact - **For the consumer:** Real-world incident response attribution displays authentic corporate concession holders, permit numbers (SK), and HGU boundaries across all primary peatland provinces. - **For the maintainer:** Zero repository bloat. Reproducible zero-dependency ingestion pipeline using standard Python and Tippecanoe with sub-millisecond point queries. ### Anti-Overengineering Audit (ponytail-review) - [x] No bespoke tools or in-house crates added when standard upstream libraries exist. - [x] No cosmetic compliance (e.g. importing a library just to call an unused helper or info command). - [x] Code subtraction evaluated: unnecessary wrappers or files were deleted rather than preserved. ### Verification proof - `pnpm exec vp check`: Passed cleanly with zero formatting or lint errors across 241 files. - `pnpm test`: 14 test suites and 85 unit tests passed in 377ms. - `pnpm build`: Next.js Turbopack production build completed with all 12 routes generated cleanly.
feat(ingestion): pipeline and dataset for real national concession boundaries (ATR/BPN & KLHK)
Some checks failed
CI / Verify Quality & Build (pull_request) Failing after 4m52s
321433f3a9
- Add scripts/ingest-real-concessions.py to fetch authentic IUPHHK-HTI, IUPHHK-HA, and palm oil concession boundaries from BIG Satu Peta
- Ingest 654 authentic Indonesian concession polygons with province mapping and precomputed bounding boxes
- Compile updated public/tiles/concessions.pmtiles (29 MB, z5-z14) with Tippecanoe
- Implement BBox pre-filtering in isPointInFeature for sub-millisecond point queries
- Add test assertions in src/lib/services/__tests__/concessions.test.ts

Closes #96
yuris force-pushed feat/real-concessions-dataset from 321433f3a9
Some checks failed
CI / Verify Quality & Build (pull_request) Failing after 4m52s
to 374b4dea4b
All checks were successful
CI / Verify Quality & Build (pull_request) Successful in 1m48s
2026-10-15 00:26:00 +00:00
Compare
yuris merged commit e4d4f6cbaa into main 2026-10-15 01:21:03 +00:00
yuris deleted branch feat/real-concessions-dataset 2026-10-15 01:21:03 +00:00
Sign in to join this conversation.
No reviewers
No labels
backend
frontend
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
yuris/titik-gambut-next!99
No description provided.