Kukulkan Pure Package Rewrite
Milestone 11 defines the package-owned Kukulkan surfaces that can be validated
without live runtime effects. These surfaces are intentionally data-shaped:
runtime packages can consume the same constructors later, while this milestone
keeps the check path deterministic and single-process.
Surfaces
jmp0x1b_kukulkan_api_contract: route contracts, request schemas, response
schemas, serde round trips, and compatibility snapshots.
jmp0x1b_kukulkan_client: client request construction, idempotency keys, and
request signature envelopes.
jmp0x1b_kukulkan_events: event envelopes, append requests, and decoding
boundaries.
kukulkan_compliance_domain: supplier compliance, audit, QMS, requirement
trace, evidence, NCR/CAPA, document-control, onboarding, and deterministic
error records.
kukulkan_geospatial_domain: AOI, raster, vector, STAC, EO ingest,
hydromet, risk, alert, drone artifact, change detection, geostats, and
timeseries contracts.
kukulkan_service_stack: auth, workflow, event bus, rate limit, TLS,
metrics, logging, health, scheduler, retry, provenance, secrets, tracing,
OIDC, object store, search, notify, job runtime, observability, backup/restore,
and fake adapter plans.
kukulkan_saas_orchestration: tenant, workspace, membership, and
tenant/workspace orchestration records.
Gates
Run the pure package checks individually while working on a domain:
make kukulkan-contracts-check
make kukulkan-compliance-check
make kukulkan-geospatial-check
make kukulkan-service-core-check
The parent gate is:
make kukulkan-pure-check
The geospatial pure gate rejects provider URLs and network runtime capability
usage in the pure package source. Provider calls belong in later runtime
milestones.