Skip to content

Conventions

EIDOS.md closes with twenty-two rules. Here they are grouped by what they govern, each with a pointer to the page that explains it. Cite what a rule says, not its number; the numbering moves between versions.

  • The frontmatter is the agreement; the body is guidance. Properties are checked. Sections are recommended.
  • Validation is framework-defined. A check enforces that framework’s Properties table, nothing hardcoded.
  • Surface, never refuse. A missing property is added with a note; a missing section is offered. Never refuse the file. A validator that refuses files gets bypassed. →
  • The root owns its framework. A tool reads the framework from the root it is in, never from a copy of its own. →
  • Everything at the root is declared. Every folder and every file has an entry, and nothing is declared that isn’t there. →
  • A folder is its owner’s. The standard’s rules reach @eidos/collections and no further; a tool’s folder is that tool’s, and an unowned one is the person’s. →
  • A region is a tool’s, by name. Inside is the tool’s; outside is the person’s. →
  • The Eidos version is a framework fact, in eidos_version, never on a blueprint. →
  • One template family per collection, as variants. What flexes is which sections appear; never their order or names. →
  • A template names its own stable part. If it changes substantially, ask whether this is a different blueprint. →
  • Non-goals carry the most weight. Where a template has a section for what a blueprint will not do, that section is its strongest. →
  • A template documents its own conventions. The standard governs folders, templates, variants, and properties; never a section.
  • A collection’s grouping is its own. Every sub-folder is a declared group; a group holds blueprints and nothing deeper. →
  • Every property has a type, a meaning, and an owner. Frontmatter is generated from the required ones, so a new blueprint is born conforming. →
  • Soft labels are views, not structure. A category property drives filtering, never structure. variant carries the structural choice.
  • No work-tracking fields. No sprint, estimate, or assignee; bridge to a tracker with a link. Intent, never progress. →
  • Write it like a human would read it. If it reads like filled-in boilerplate, reshape it.
  • Reference blueprints with links, not bare names, in prose and properties alike. →
  • Loose prose is revised in place. That is revision, not work status.
  • A declared term is the word. A near-miss is flagged, never swapped silently. →
  • The human authors; the agent facilitates. Intent, scope, and decisions stay with the person. →
  • Read me.md before acting, then the role it names. Blank means full facilitation. →