Skip to content

Platform Contract

The institutional grammar that every g0v.mk application must implement. Not a design system, not a component library — the set of contracts that make two applications feel like they come from the same institution.

Contract Structure

The platform contract covers 17 sections. It draws on two proven patterns from the open data world: event sourcing from OCDS (Open Contracting Data Standard) and three-stage harvest pipelines from CKAN.

§1
Trust model — Data age, confidence, provenance — three orthogonal dimensions
§2
Observation model — Immutable observations, compiled projections, per-field change history
§3
Harvest pipeline — Three-stage gather → fetch → import with per-object provenance
§4
Finding schema — Structured, citable, versionable public-interest claims
§5
Claim ladder — Seven-level inspectable evidence chain
§6
Evidence drawer — Standard side panel revealing the claim ladder for any item
§7
Entity page anatomy — Shared skeleton for domain-specific entity pages
§8
Export / share / permalink — CSV, PNG, evidence pack ZIP for every meaningful view
§9
Editorial language — Confidence-gated wording and flagging vocabulary
§10
Data quality indicators — Source registry, degradation states, circuit breaker visibility
§11
Bilingual handling — Cyrillic/Latin search, name normalization, transliteration
§12
Correction policy — Clarification, revision, withdrawal — never silent corrections
§13
Design system — Color semantics, typography, motion rules, density
§14
App shell — Shared header, navigation, independence statement, locale toggle
§15
Scope exclusions — What is explicitly app-specific (domain ontology, scoring, workspaces)
§16
Compliance checklist — 20 requirements before an app can launch under g0v.mk
§17
Reference implementations — bus.g0v.mk status against each contract element
Principles

The architecture draws on two proven patterns: event sourcing from OCDS, where every observation is an immutable release and current state is a compiled projection; and three-stage harvest pipelines from CKAN, where data ingestion decomposes into gather → fetch → import with independent failure and retry at each stage.

These are adopted as structural patterns, not dependencies. g0v.mk is not a CKAN instance, not an OCDS publisher, and not a data portal. It is an accountability platform that makes evidence-backed claims from government data.

The full platform contract is maintained at g0v.platform.contract.v1 in the project repository. It will be published here in full when the procurement observatory launches.

← Back to Methods
· ꙮ ·