The Three-Axis Model

**Three orthogonal axes decompose all HAAK activity: method (what you do), domain (where and for whom), and engagement (toward what end). Within axes, things inherit — downward, monotonically. Across…

Three orthogonal axes decompose all HAAK activity: method (what you do), domain (where and for whom), and engagement (toward what end). Within axes, things inherit — downward, monotonically. Across axes, things compose — a work point is the intersection of one position on each axis. This grammar structures the entire system.

#Intuition

Every piece of work answers three questions:

  1. What are you doing? — reviewing, searching, writing, sweeping (the method)
  2. In what context? — the mainen lab, for a journal, on HAAK itself (the domain)
  3. Toward what end? — the face-states manuscript, the INDP admissions (the engagement)

These are orthogonal. The same method (review) applies in different domains (my lab, an external journal) on different engagements (the shadow-ecosystem paper, a grant). Changing one doesn't force a change in the others.

#Method axis — what you do

Two graph structures over the same nodes.

#The level hierarchy

HAAK's process stack arranges knowledge by abstraction:

foundations → architecture → policies → methods → skills

A refinable total order: new levels can be inserted between any two adjacent elements. The current five are one instantiation — if we need "conventions" between policies and methods, we insert it. Float ranks make insertion trivial.

Inheritance is downward. Each level constrains those below. Foundations inform architecture; architecture informs policies; policies constrain methods; methods specify what skills execute. Transitive: a method cannot violate a policy's parent architecture decision.

LevelContainsRole
FoundationsConceptual positionsWhy the system exists
ArchitectureStructural decisionsHow it's built
PoliciesGovernance constraintsWhat must be true
MethodsDocumented proceduresWhat agents do
SkillsExecutable primitivesWhat agents run

#The composition graph

Methods also compose laterally. Review invokes search; search invokes persona; persona invokes review. A directed graph G_M with labeled edges (step, reason). Cycles exist — the composition graph is not a DAG. Termination is by convergence or depth limit, not by structure.

Why two structures? The hierarchy governs authority (who constrains whom). The composition graph governs operation (who invokes whom). A method composes peers operationally while being constrained by policies above. These are distinct relationships: hierarchy is vertical, composition is lateral.

#Domain axis — where you work

A domain is a scope — an organizational, topical, or disciplinary context where specific constraints, resources, and quality criteria apply.

#Domain kinds

KindWhat it scopesExamples
OrganizationalWhere the work lives sociallymainen-lab, champalimaud, cosyne
TopicalWhat the work is aboutface-perception, serotonin, peer-review-reform
DisciplinaryWhat field's standards applyneuroscience, AI/ML, science-of-science
MetaWork on HAAK itselfhaak-design, haak-infrastructure

#Graph structure — a rooted forest

Domains form a disjoint union of rooted trees. Each tree has a root category (organizational, topical, ...). Nodes within a tree are related by subsumption: bhatt-collab ⊂ mainen-lab. Trees are independent — no subsumption between mainen-lab and neuroscience. Cross-tree intersection happens only through cross-axis composition.

Why a forest, not a lattice? Each domain has exactly one parent within its tree, giving unique inheritance paths. A collaboration spanning two labs composes domains from different trees (or is an engagement across multiple domain scopes), rather than sitting under both.

#What a domain provides

Not just constraints — a domain scopes three things:

ProvidesExample
Constraints (policies)mainen-lab → data-sharing requirements
Resources (tools, context, personas)neuroscience → relevant persona pool
Quality criteria (what "good" means here)AI/ML → reproducibility standards

#Engagement axis — work over time

An engagement is a sustained campaign toward a goal. It corresponds to what HAAK calls a project — a manuscript, a review cycle, a grant proposal, an admissions round.

#Phase graphs

An engagement's phases form a directed graph with cycles. The cycle review → revise → submit → review may execute multiple times. Termination is by external decision (accept, reject, withdraw), not by graph structure. A particular execution traces a walk through the phase graph — revisiting nodes is expected.

#Engagement hierarchy

Engagements nest. A "face-states research program" contains sub-engagements: literature review, drafting, R1, revision, R2. Each sub-engagement inherits the parent's domain scope and adds its own phase structure.

#Engagements vs. methods

A method is what you do — stateless, reusable, defined once. An engagement is the doing of it — stateful, particular, tied to time and context. The review method exists once; each manuscript review is an engagement that instantiates that method in a domain.

#Inheritance

Inheritance flows strictly within a single axis. There is no cross-axis inheritance.

  • Method axis: downward through levels. Foundations → architecture → policies → methods → skills. Laterally, within the composition graph, domain sets union.
  • Domain axis: downward through the tree. A child inherits every constraint, resource, and quality criterion of its parent. Monotonic — constraint sets only grow.
  • Engagement axis: parent to child. A sub-engagement inherits its parent's domain set.

Inheritance is not overriding. Unlike OOP, a child cannot override a parent constraint. Constraints accumulate. To relax a constraint, operate in a different domain.

#Composition — the work point

Composition is across axes. A concrete unit of work — a work point — is the intersection:

work point = method × domain × engagement
Work pointMethodDomainEngagement
Review Araújo's paperreviewmainen-lab ∩ neurosciencerv-araujo-dopamine
Sweep architecture indicessweephaak-designhaak-infrastructure
Write grant rebuttalwritemainen-lab ∩ neurosciencepr-gong-fct

#Governance at a work point

The constraint set combines by union:

  1. Method constraints — policies from the method's domains: declarations
  2. Domain constraints — policies from each active domain, including inherited ancestor policies
  3. Engagement constraints — engagement-specific rules (deadlines, format, journal guidelines)

When constraints tension, the PI resolves (per the constitution).

#Types and tokens

Each axis admits a type/token distinction with characteristic persistence:

AxisType exampleToken examplePersistence
Methodreview (the procedure)This review at this work pointTransient — exists during execution
Domainpaper (the kind)face-states (this paper)Persistent — endures across engagements
Engagementmanuscript-lifecycle (the template)ms-face-states (this manuscript)Temporal — has lifecycle: proposed → active → completed → archived

These persistence modes reflect ontological character: methods are activities, domains are contexts, engagements are campaigns.

What counts as creation vs. use: Starting a new review (instantiating a method token) is using the review type. Starting a new paper project (instantiating a domain token) is creating a persistent entity. The governance appropriate to each differs because persistence differs.

#Where it lives in HAAK

AxisLocationRepresentation
Methodpatterns/ (foundations → architecture → policies → methods); .claude/skills/Level hierarchy = directory structure; composition = domains: frontmatter
Domainpatterns/policies/01-constitution.md § domainsDomain tags in frontmatter; forest implicit (not yet reified as tree)
Engagementprojects/ (each directory = an engagement)Phase graph implicit in directory structure; lifecycle = status: frontmatter

What's reified vs. implicit: Method composition is reified (15-method-composability.md). Domain hierarchy and engagement phases are implicit — the three-axis alignment plan (strategy/) addresses this gap.

#Full formal treatment

The complete formalization — planning sketches, type definitions, and graph construction code — is preserved in v1/14-three-axis-model.md. This document states the principles; the v1 document provides the mathematical detail and Python dataclass definitions.


haak · foundation · 2026-02-24 · zach + claude

Foundations 06 — The Three-Axis Model — 2026 — Zachary F. Mainen / HAAK