Skip to content

ontometrics/intratom

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

intratom

Risk assessment for codebases using theory of mind.

intratom occupies the interpretive space between user and machine — the place Norbert Wiener spent his career mapping in Cybernetics. Every interface is an interpreter. intratom asks, for each interpretation site in your code: does this surface keep its commitments to the user, and where could it quietly fail to?

What it does

intratom walks a codebase, picks out the places where the system commits to telling a user something or doing something on their behalf, and scores each of them along five failure modes:

# Mode What it means
1 Crash The program terminates abnormally.
2 Hang The program stops making progress without exiting.
3 Silently disappear The system appears to work while the underlying state has stopped advancing. The user only finds out later.
4 Mislead The interface asserts something it has no right to assert.
5 Fail to show A feature exists; the surface fails to expose it to the user who needs it.

Modes 1 and 2 are easy — crashes and hangs self-report. Modes 3, 4, and 5 are where intratom earns its keep. They are anti-correlated with crash reporting; conventional static analysis cannot see them. Detecting them needs reading, with theory of mind for the user.

Architecture

intratom is radically functional. Every stage of the pipeline is a function, and pipelines are composed by passing functions to other functions — Volterra-style. You add new failure modes, new selectors, new scoring backends by composing in new functions, not by editing the engine.

Codebase
  |> Selector       (pick interpretation sites)
  |> Refiner        (filter / enrich / add context)
  |> ModeScorer*    (one per failure mode you care about)
  |> Scorer         (combine via a backend — Claude, Gemini, local, hybrid)
  |> Aggregator     (roll up to file / module / repo)
                    => Report

Every arrow is Fn(...) -> .... No hidden state. No mutation. New modes slot in. New backends slot in. The pipeline is itself a value you can pass around.

Status

v0 — the trait scaffold is in. The Claude backend is stubbed; selectors and refiners are minimal. The smoke binary walks a codebase and counts files. Real selection, scoring, and aggregation land in the next commits.

Build

cargo build
cargo run -- --root /path/to/codebase

Etymology

intra + tom. intra because we occupy the interpretive space rather than observe it from outside (inter); tom for theory of mind. The work happens inside the interpretation gap between user and machine, which is where the failures live.

License

Dual-licensed under MIT or Apache-2.0 at your option.

About

Risk assessment for codebases using theory of mind. A radically functional pipeline — selectors, refiners, mode-scorers, scorer backends, aggregators — that finds where interfaces silently fail their users.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages