Labs

Areas of exploration

The themes I keep returning to, and the experiments behind the finished work. Some of this hardens into Projects; the rest is the digging that makes the good stuff possible.

apo@anubis cat focus.md
# two obsessions, one principle
1. intelligence you can trust — evidence over vibes
2. tools that give independent operators leverage
principle: deterministic, self-hosted, owned by the user

still digging

Focus areas

Focus · Intelligence
OSINT & evidence-grade analysis
Deterministic systems for collecting, versioning, and analyzing public information over time — no LLMs, no black boxes. 140 collectors and counting — social, developer, creative, and infrastructure/OSINT sources — feed immutable, SHA‑256–hashed, timestamped observations; snapshots track change over time and a Neo4j graph maps how identities and accounts connect. Every conclusion traces back to the evidence. This is the engine behind Chronicle.
Focus · Right to repair
Software for independent mechanics
Giving small shops and mobile mechanics the tools normally locked behind dealerships and big platforms — invoicing, OEM data access, and parts sourcing. Ownership over rent-seeking.
Focus · Automation
Background systems & orchestration
The unglamorous middle: job queues, schedulers, worker health, and backpressure that hold up under real load. Celery/Redis pipelines feeding Postgres, a Neo4j graph, OpenSearch and a MinIO evidence store — the whole stack self-hosted behind Docker Compose, hardened for the production nobody ever sees.
Focus · Applied AI
Trustworthy interfaces
Where models earn their place — VIN-based compatibility checks, AR-assisted diagnostics, and interfaces that make output verifiable instead of magical. Intelligence you can audit.

The road to Chronicle

Nothing ships fully formed. Behind Chronicle is a trail of full rebuilds and isolated research labs — each lab a self-contained experiment that de-risked one hard problem before any of it touched the platform.

Three successive full rebuilds of the collection platform — each one kept what earned its place and threw the rest out.
Can the hash pipeline tell an externally observed change from an extractor change? A repo-wide inventory of 140 collectors and 1,416 normalized keys, classified by a provenance-tracking scanner. Verdict: the observation/derivation boundary was undeclared — one hash conflated “the subject changed” with “our code changed.”
The smallest plugin-contract that preserves observed / derived / operational pedigree, tested across three competing models with an adversarial suite. Verdict: the semantic-leaf pedigree contract survives.
Turning an investigative conclusion into a frozen, auditable plan — hypothesis → required observations → sensor capabilities → outcome, with no analytic inference by the sensors themselves.
The platform. Everything that survived — 140 collectors, evidence hashing, snapshots and the relationship graph. Phases 1–4 shipped; plugin SDK and release next.

Follow the day-to-day in the Devlog.