Masterbelt

masterbelt/masterbelt

Specifications

Synced from main@9490864MarkdownSource

#Specifications

This directory defines the user-visible contracts for Masterbelt. Implementation packages under internal/ must implement these specifications, not replace them.

#Specification Boundaries

  • language/: Masterbelt lexical structure, syntax, semantics, modules, names, types, built-ins, standard library, evaluation, and diagnostics.
  • masterdata/: master data schema, keys, relations, validation, query behavior, imports, and exports.
  • codegen/: generation model, runtime requirements, and target-language generation.
  • tooling/: project configuration, CLI, syntax highlighting, symbol tags, formatter, linter, LSP, and developer experience.
  • compatibility.md: compatibility, versioning, and deprecation policy.

masterdata/query describes user-visible query behavior over master data collections. The expression language used inside queries belongs to language/evaluation.

#Dependency Shape

The graph uses one arrow meaning only: A --> B means specification A depends on terms or behavior defined by specification B. It is not a runtime data-flow graph.

Mermaid150%

#Authoring Rules

  • Specify behavior before implementing it under internal/.
  • Keep specifications focused on user-visible behavior and compatibility.
  • Do not use implementation package names as specification boundaries unless the name is also a user-visible concept.
Specification