Portable collection semantics

Contracts and type packs

Contracts give applications a small, shared vocabulary without forcing every collection to use the same field names or storage format. Type packs install a contract and a friendly editable type together.

Local notes, shared meaning

A type remains the source of truth for what your Markdown records store. Its implements entries explain how compatible applications should read those fields.

  1. 1
    Your type

    Uses familiar local names such as email or stage.

  2. 2
    Field mapping

    Connects local fields to a compact contract vocabulary such as primary_email or status.

  3. 3
    Contract settings

    Optionally describe behavior, such as which status values mean complete, using another JSON Schema.

One type can implement several contracts, and any number of applications can consume the same contract. Interchange formats such as JSContact and vCard belong in import and export adapters unless a collection intentionally stores that wire format.

Published contracts

ContractVersionShared semanticsArtifact
Contact
mdbase.contact
1.0.0A compact application-facing view of a person or organisation.Markdown
Record created
mdbase.record.created
1.0.0Published after a record is created and derived collection state is consistent.Markdown
Record deleted
mdbase.record.deleted
1.0.0Published after a record is deleted and derived collection state is consistent.Markdown
Record modified
mdbase.record.modified
1.0.0Published after a record is modified and derived collection state is consistent.Markdown
Record renamed
mdbase.record.renamed
1.0.0Published after a record is renamed and derived collection state is consistent.Markdown
Durable action attempt
mdbase.runtime.action-attempt
1.0.0Durable invocation intent and outcome evidence using the shared interoperability envelope.Markdown
Capability grant evidence
mdbase.runtime.capability-grant
1.0.0A materialized authorization grant scoped independently from contract conformance.Markdown
Runtime checkpoint
mdbase.runtime.checkpoint
1.0.0A durable, lease-safe workflow continuation.Markdown
Runtime dead letter
mdbase.runtime.dead-letter
1.0.0Retained event or action evidence that cannot be processed safely.Markdown
Runtime diagnostic
mdbase.runtime.diagnostic
1.0.0A machine-readable durable runtime diagnostic.Markdown
Runtime policy
mdbase.runtime.policy
1.0.0Local authorization, executor, limit, and provider-selection policy.Markdown
Provider registration evidence
mdbase.runtime.provider-registration
1.0.0An optional audit snapshot of a verified interoperability declaration; it never activates code.Markdown
Cancel durable runtime run
mdbase.runtime.run.cancel
1.0.0Request cooperative cancellation of one durable runtime run.Markdown
Durable run
mdbase.runtime.run
1.0.0The durable state and immutable admitted plan for one workflow execution.Markdown
Runtime timer fired
mdbase.runtime.timer.fired
1.0.0Published with scheduling evidence and opaque application data when the current generation of a durable timer fires.Markdown
Runtime timer
mdbase.runtime.timer
1.0.0A generation-safe one-shot timer that publishes through the interoperability profile.Markdown
Durable workflow
mdbase.runtime.workflow
1.0.0A portable workflow whose event and action references are resolved and pinned at admission.Markdown

Ready-made types

Add these from Types → Add a type in mdbase-editor. Each pack creates a local, editable type with its portable contract and initial field mapping. You can rename fields later; the editor keeps the mapping visible and aligned.

Contact

Keep people and organisations with familiar names, email addresses, phone numbers, and birthdays.

1 type
Portable contact semantics
Technical details

mdbase.contact@1.0.0

1 contract · 3 resources

View pack JSON
Developer and infrastructure packsFor integrations and specialised setups1

Runtime standard library

Internal records and contracts for durable workflows, runs, timers, and diagnostics.

10 types

Most collections do not need this pack. Install it only when a runtime integration asks you to.

Technical details

mdbase.runtime.standard@0.2.0

10 contracts · 43 resources

View pack JSON
Published versions are immutable.

Catalog discovery may move forward, but an installation always selects one exact pack version and verifies every embedded resource digest before changing the collection.