Skip to content

[codex] Add ACLED DRC historic events asset#120

Merged
jonaraphael merged 1 commit into
mainfrom
codex/acled-drc-historic-events
Jul 6, 2026
Merged

[codex] Add ACLED DRC historic events asset#120
jonaraphael merged 1 commit into
mainfrom
codex/acled-drc-historic-events

Conversation

@jonaraphael

Copy link
Copy Markdown
Contributor

Summary

Adds the acled-drc-historic-events private shared dataset asset for DRC ACLED event records through 2026-06-29.

This PR documents the asset, regenerates the catalog CSV, and stages reviewed publish candidates under _scratch/pending-publishes/ for protected promotion after merge.

Data Preparation

  • Combined /Users/jonathanraphael/Downloads/ACLED Data DRC 2014-2025.csv with DRC rows extracted from /Users/jonathanraphael/Downloads/ACLED_Dataset_Sub-SaharanAfrica 2026.xlsx.
  • Historical CSV input: 34,279 rows, all DRC.
  • 2026 Sub-Saharan Africa input: 47,937 rows, 4,481 DRC rows extracted.
  • Combined all rows first, de-duplicated by event_id_cnty while preferring the 2026 workbook, then filtered to DRC.
  • Final DRC canonical rows: 38,682.
  • Final date range: 2014-01-01 through 2026-06-29.
  • Cross-source overlapping event IDs: 78; no normalized overlap row changes.
  • feature_id is copied from event_id_cnty, which is unique and nonblank.
  • No localized metadata sidecars are included.

Admission Evidence

  • Source/license/citation: ACLED Data Export Tool, under ACLED Terms and Conditions; private internal shared-datasets use confirmed by SkyTruth authorization on 2026-05-08.
  • Named steward: SkyTruth.
  • Intended consumers: SkyTruth internal conflict/event analysis workflows needing a reusable DRC ACLED baseline.
  • Shared-datasets rationale: avoids reprocessing the same ACLED DRC merge/dedupe/filter logic across projects.
  • Alternatives considered: direct ACLED export access in each consumer project; rejected because it repeats source normalization and feature identity decisions.
  • Update expectation: manual refresh when updated ACLED exports are supplied.
  • Deprecation/exit policy: deprecate or supersede if ACLED licensing or an authoritative replacement changes consumer guidance.
  • Estimated published footprint: 0.12 GB, below the 10 GB large-data exception threshold.

Validation

  • scripts/vector_asset.py validate --fgb ... --pmtiles ... --metadata-lookup
  • ogrinfo -ro -al -so confirmed 38,682 Multi Point features and DRC bounds.
  • Metadata sidecar/schema/manifest validation passed with 38,682 records and no duplicate feature IDs.
  • scripts/catalog_docs.py check
  • scripts/catalog_site.py --out /private/tmp/shared-datasets-1/catalog-web
  • scripts/dataset_alerts.py check-schema-compatibility --asset-slug acled-drc-historic-events --dataset-path .../acled-drc-historic-events.fgb

Toolchain

  • GDAL/ogr2ogr: /Users/jonathanraphael/miniforge3/bin/ogr2ogr, GDAL 3.6.2.
  • Tippecanoe: /usr/local/bin/tippecanoe, v2.79.0.
  • PMTiles: /usr/local/bin/pmtiles, pmtiles dev, commit none, built at unknown.

Staged Source Objects

  • gs://skytruth-shared-datasets-1/_scratch/pending-publishes/acled-drc-historic-events/acled-drc-historic-events-20260706T164905Z/README.md generation 1783357857788573
  • gs://skytruth-shared-datasets-1/_scratch/pending-publishes/acled-drc-historic-events/acled-drc-historic-events-20260706T164905Z/acled-drc-historic-events.fgb generation 1783357822333875
  • gs://skytruth-shared-datasets-1/_scratch/pending-publishes/acled-drc-historic-events/acled-drc-historic-events-20260706T164905Z/acled-drc-historic-events.pmtiles generation 1783357856942571
  • gs://skytruth-shared-datasets-1/_scratch/pending-publishes/acled-drc-historic-events/acled-drc-historic-events-20260706T164905Z/acled-drc-historic-events.metadata.ndjson.gz generation 1783357859316313
  • gs://skytruth-shared-datasets-1/_scratch/pending-publishes/acled-drc-historic-events/acled-drc-historic-events-20260706T164905Z/acled-drc-historic-events.schema.json generation 1783357857818020
  • gs://skytruth-shared-datasets-1/_scratch/pending-publishes/acled-drc-historic-events/acled-drc-historic-events-20260706T164905Z/acled-drc-historic-events.manifest.json generation 1783357857939904

Review Notes

The destination prefix is currently empty, so every publish-plan destination_generation is intentionally blank for no-clobber canonical creation. Because the PR author is jonaraphael, GitHub may block requesting jonaraphael as reviewer; this should be treated as the documented restricted self-acceptance path if merged by jonaraphael.

Dataset upload announcement was not sent before this PR because the canonical publish has not run yet.

{
  "asset_slug": "acled-drc-historic-events",
  "proposal_id": "acled-drc-historic-events-20260706T164905Z",
  "release_index_asset_slugs": [
    "acled-drc-historic-events"
  ],
  "promotions": [
    {
      "source_uri": "gs://skytruth-shared-datasets-1/_scratch/pending-publishes/acled-drc-historic-events/acled-drc-historic-events-20260706T164905Z/README.md",
      "destination_uri": "gs://skytruth-shared-datasets-1/400-events-observations/430-alerts-notices/acled-drc-historic-events/README.md",
      "source_generation": "1783357857788573",
      "destination_generation": "",
      "content_type": "text/markdown",
      "cache_control": ""
    },
    {
      "source_uri": "gs://skytruth-shared-datasets-1/_scratch/pending-publishes/acled-drc-historic-events/acled-drc-historic-events-20260706T164905Z/acled-drc-historic-events.fgb",
      "destination_uri": "gs://skytruth-shared-datasets-1/400-events-observations/430-alerts-notices/acled-drc-historic-events/releases/2026-06-29/acled-drc-historic-events.fgb",
      "source_generation": "1783357822333875",
      "destination_generation": "",
      "content_type": "application/octet-stream",
      "cache_control": ""
    },
    {
      "source_uri": "gs://skytruth-shared-datasets-1/_scratch/pending-publishes/acled-drc-historic-events/acled-drc-historic-events-20260706T164905Z/acled-drc-historic-events.pmtiles",
      "destination_uri": "gs://skytruth-shared-datasets-1/400-events-observations/430-alerts-notices/acled-drc-historic-events/releases/2026-06-29/acled-drc-historic-events.pmtiles",
      "source_generation": "1783357856942571",
      "destination_generation": "",
      "content_type": "application/vnd.pmtiles",
      "cache_control": "no-cache, max-age=0, must-revalidate"
    },
    {
      "source_uri": "gs://skytruth-shared-datasets-1/_scratch/pending-publishes/acled-drc-historic-events/acled-drc-historic-events-20260706T164905Z/acled-drc-historic-events.metadata.ndjson.gz",
      "destination_uri": "gs://skytruth-shared-datasets-1/400-events-observations/430-alerts-notices/acled-drc-historic-events/releases/2026-06-29/acled-drc-historic-events.metadata.ndjson.gz",
      "source_generation": "1783357859316313",
      "destination_generation": "",
      "content_type": "application/x-ndjson",
      "cache_control": ""
    },
    {
      "source_uri": "gs://skytruth-shared-datasets-1/_scratch/pending-publishes/acled-drc-historic-events/acled-drc-historic-events-20260706T164905Z/acled-drc-historic-events.schema.json",
      "destination_uri": "gs://skytruth-shared-datasets-1/400-events-observations/430-alerts-notices/acled-drc-historic-events/releases/2026-06-29/acled-drc-historic-events.schema.json",
      "source_generation": "1783357857818020",
      "destination_generation": "",
      "content_type": "application/json",
      "cache_control": ""
    },
    {
      "source_uri": "gs://skytruth-shared-datasets-1/_scratch/pending-publishes/acled-drc-historic-events/acled-drc-historic-events-20260706T164905Z/acled-drc-historic-events.manifest.json",
      "destination_uri": "gs://skytruth-shared-datasets-1/400-events-observations/430-alerts-notices/acled-drc-historic-events/releases/2026-06-29/acled-drc-historic-events.manifest.json",
      "source_generation": "1783357857939904",
      "destination_generation": "",
      "content_type": "application/json",
      "cache_control": ""
    },
    {
      "source_uri": "gs://skytruth-shared-datasets-1/_scratch/pending-publishes/acled-drc-historic-events/acled-drc-historic-events-20260706T164905Z/acled-drc-historic-events.fgb",
      "destination_uri": "gs://skytruth-shared-datasets-1/400-events-observations/430-alerts-notices/acled-drc-historic-events/latest/acled-drc-historic-events.fgb",
      "source_generation": "1783357822333875",
      "destination_generation": "",
      "content_type": "application/octet-stream",
      "cache_control": ""
    },
    {
      "source_uri": "gs://skytruth-shared-datasets-1/_scratch/pending-publishes/acled-drc-historic-events/acled-drc-historic-events-20260706T164905Z/acled-drc-historic-events.pmtiles",
      "destination_uri": "gs://skytruth-shared-datasets-1/400-events-observations/430-alerts-notices/acled-drc-historic-events/latest/acled-drc-historic-events.pmtiles",
      "source_generation": "1783357856942571",
      "destination_generation": "",
      "content_type": "application/vnd.pmtiles",
      "cache_control": "no-cache, max-age=0, must-revalidate"
    },
    {
      "source_uri": "gs://skytruth-shared-datasets-1/_scratch/pending-publishes/acled-drc-historic-events/acled-drc-historic-events-20260706T164905Z/acled-drc-historic-events.metadata.ndjson.gz",
      "destination_uri": "gs://skytruth-shared-datasets-1/400-events-observations/430-alerts-notices/acled-drc-historic-events/latest/acled-drc-historic-events.metadata.ndjson.gz",
      "source_generation": "1783357859316313",
      "destination_generation": "",
      "content_type": "application/x-ndjson",
      "cache_control": ""
    },
    {
      "source_uri": "gs://skytruth-shared-datasets-1/_scratch/pending-publishes/acled-drc-historic-events/acled-drc-historic-events-20260706T164905Z/acled-drc-historic-events.schema.json",
      "destination_uri": "gs://skytruth-shared-datasets-1/400-events-observations/430-alerts-notices/acled-drc-historic-events/latest/acled-drc-historic-events.schema.json",
      "source_generation": "1783357857818020",
      "destination_generation": "",
      "content_type": "application/json",
      "cache_control": ""
    },
    {
      "source_uri": "gs://skytruth-shared-datasets-1/_scratch/pending-publishes/acled-drc-historic-events/acled-drc-historic-events-20260706T164905Z/acled-drc-historic-events.manifest.json",
      "destination_uri": "gs://skytruth-shared-datasets-1/400-events-observations/430-alerts-notices/acled-drc-historic-events/latest/acled-drc-historic-events.manifest.json",
      "source_generation": "1783357857939904",
      "destination_generation": "",
      "content_type": "application/json",
      "cache_control": ""
    }
  ],
  "breaking_changes": []
}

@jonaraphael jonaraphael marked this pull request as ready for review July 6, 2026 17:18
@jonaraphael jonaraphael merged commit 5f46f61 into main Jul 6, 2026
8 checks passed
@jonaraphael jonaraphael deleted the codex/acled-drc-historic-events branch July 6, 2026 17:18
@jonaraphael jonaraphael temporarily deployed to shared-datasets-production July 6, 2026 17:19 — with GitHub Actions Inactive
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant