You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hamma's public and agent-facing architecture guides describe a different crate and cryptographic/configuration topology from the code that exists.
The generated Phase A dependency blocks are now authoritative and consistent; this finding excludes them. The remaining hand-maintained orientation prose still assigns capabilities to mitos that live in dictyon or do not exist, describes an Ed25519 identity layer absent from the workspace, and directs agents to a Figment configuration cascade that is not implemented.
Verified against main9aa9a56223afdd47d7723104cd16a5c07d5fc722.
Evidence
Crate ownership
README.md:40-48, AGENTS.md:39-47, CLAUDE.md:34-45, and _llm/architecture.toml:22-29 describe mitos as owning Noise framing and ACL types.
crates/mitos/src/lib.rs:1-17 still titles itself “Hamma Core” and claims Noise framing, WireGuard key wrappers, peer identity, ACL representations, and protocol constants, but exports only capability, config, keys, and types.
_llm/architecture.toml declares generated = false and includes histos and hamma-derp as [[architecture.crates]] with paths that do not exist. README/AGENTS correctly call them planned, but the machine-oriented architecture inventory does not distinguish live workspace members from future destinations structurally.
Identity model
CLAUDE.md:70 says node identity is Ed25519, WireGuard tunnel keys are Curve25519, and Noise uses X25519, with each represented by a distinct newtype.
crates/mitos/src/keys.rs:1-12,205-237 says all current key families are Curve25519/X25519 wrappers. NodePrivate is explicitly the WireGuard identity; no Ed25519 dependency or identity type exists anywhere in the workspace.
Configuration model
CLAUDE.md:71 says TOML configuration is parsed through Figment with an environment-variable override cascade.
Root Cargo.toml contains no figment dependency, and a workspace source inventory finds no Figment use or TOML/env configuration loader. mitos::Config is currently a typed/default/validation structure passed directly by callers.
#118 owns the separate public Phase A order and Kanon-consumption contract. This issue does not reopen or duplicate that generated block.
Why this matters
These files are the dispatch surface for agents. Following them can lead an implementation to:
design around a nonexistent Ed25519 identity authority;
search for or extend a configuration cascade that has never been built; or
treat planned crates as current dependency owners.
That is more than stale prose. It creates competing architecture authorities around security-critical boundaries where type identity and crate ownership are intended to prevent accidental mixing.
Desired correction
Rebuild the hand-maintained architecture guidance from the live workspace and explicitly separate three states:
implemented ownership;
approved but blocked/planned capability; and
speculative future destination.
Make mitos documentation name only the vocabulary it actually owns today. Route Noise framing to dictyon; link ACL claims to #67 until the types and state exist. Correct the identity description to the implemented Curve25519/X25519 hierarchy, or add a separately justified Ed25519 authority only when a real consumer requires it. Describe configuration as direct typed config unless/until a real loader lands.
Derive workspace-member/path inventory mechanically while retaining human-owned role descriptions.
Done when:
every live crate is represented exactly once and planned crates cannot appear as existing paths;
mitos docs and exports agree on its current responsibility;
Noise, ACL, identity, and configuration guidance matches executable ownership;
no guide claims an Ed25519 or Figment surface absent from dependencies/source;
adding/removing/renaming a workspace crate makes the architecture inventory check fail; and
the Phase A generated contract remains unchanged and authoritative for sequencing.
Finding
Hamma's public and agent-facing architecture guides describe a different crate and cryptographic/configuration topology from the code that exists.
The generated Phase A dependency blocks are now authoritative and consistent; this finding excludes them. The remaining hand-maintained orientation prose still assigns capabilities to
mitosthat live indictyonor do not exist, describes an Ed25519 identity layer absent from the workspace, and directs agents to a Figment configuration cascade that is not implemented.Verified against
main9aa9a56223afdd47d7723104cd16a5c07d5fc722.Evidence
Crate ownership
README.md:40-48,AGENTS.md:39-47,CLAUDE.md:34-45, and_llm/architecture.toml:22-29describemitosas owning Noise framing and ACL types.crates/mitos/src/lib.rs:1-17still titles itself “Hamma Core” and claims Noise framing, WireGuard key wrappers, peer identity, ACL representations, and protocol constants, but exports onlycapability,config,keys, andtypes.crates/dictyon/src/{noise,transport,wire}. No effective ACL representation/state exists inmitos; open Build authoritative ACL policy state before advertising or activating the data plane #67 owns building that capability before data-plane activation._llm/architecture.tomldeclaresgenerated = falseand includeshistosandhamma-derpas[[architecture.crates]]with paths that do not exist. README/AGENTS correctly call them planned, but the machine-oriented architecture inventory does not distinguish live workspace members from future destinations structurally.Identity model
CLAUDE.md:70says node identity is Ed25519, WireGuard tunnel keys are Curve25519, and Noise uses X25519, with each represented by a distinct newtype.crates/mitos/src/keys.rs:1-12,205-237says all current key families are Curve25519/X25519 wrappers.NodePrivateis explicitly the WireGuard identity; no Ed25519 dependency or identity type exists anywhere in the workspace.Configuration model
CLAUDE.md:71says TOML configuration is parsed through Figment with an environment-variable override cascade.Cargo.tomlcontains nofigmentdependency, and a workspace source inventory finds no Figment use or TOML/env configuration loader.mitos::Configis currently a typed/default/validation structure passed directly by callers.#118 owns the separate public Phase A order and Kanon-consumption contract. This issue does not reopen or duplicate that generated block.
Why this matters
These files are the dispatch surface for agents. Following them can lead an implementation to:
That is more than stale prose. It creates competing architecture authorities around security-critical boundaries where type identity and crate ownership are intended to prevent accidental mixing.
Desired correction
Rebuild the hand-maintained architecture guidance from the live workspace and explicitly separate three states:
Make
mitosdocumentation name only the vocabulary it actually owns today. Route Noise framing todictyon; link ACL claims to #67 until the types and state exist. Correct the identity description to the implemented Curve25519/X25519 hierarchy, or add a separately justified Ed25519 authority only when a real consumer requires it. Describe configuration as direct typed config unless/until a real loader lands.Derive workspace-member/path inventory mechanically while retaining human-owned role descriptions.
Done when:
mitosdocs and exports agree on its current responsibility;