Skip to content

Heimdall v0.5.0 — ACH Workbench + Multi-Format Export

Choose a tag to compare

@ankurCES ankurCES released this 15 Apr 22:13
· 82 commits to main since this release

Highlights

v0.5.0 closes the loop from collection to publishable analytical product. Two major Phase 1 features land: an ACH (Analysis of Competing Hypotheses) workbench that implements Heuer's gold-standard methodology end-to-end, and a multi-format export funnel that turns any analytical product into PDF, Markdown, JSON, NATO INTREP, or AES-encrypted bundle. Combined with v0.4's tradecraft foundation, Heimdall is now the most methodologically rigorous open-source intel platform you can put on an analyst's desk.

ACH Hypothesis Workbench

Implements the full Heuer methodology, the same one taught at the Sherman Kent School and used by every Western intel service:

  1. Define 3–5 mutually exclusive hypotheses
  2. List every relevant piece of evidence
  3. Score each piece against each hypothesis (CC / C / N / I / II)
  4. Pick the hypothesis with the LEAST disconfirming evidence (NOT the most confirming) — Heuer's most counterintuitive but methodologically critical principle
  5. Identify "diagnostic" evidence — pieces with high score variance across hypotheses

New sidebar entry under Intelligence (/ach). Two-pane layout: sessions list left, scoring matrix right. Click any cell to cycle through CC / C / N / I / II. Live analysis card surfaces:

  • Total counts + scoring progress
  • The leading hypothesis (Heuer principle, weighted by evidence credibility)
  • Count of diagnostic evidence pieces
  • Per-hypothesis weighted +/− totals shown in column headers

AI-powered hypothesis generator — "Suggest 3" button calls the LLM with an explicit adversarial-framing prompt that demands MUTUALLY EXCLUSIVE hypotheses (not variations). Output marked with source: 'agent' so analyst-authored vs AI-suggested are distinguishable.

Migration 017 adds 4 new tables: ach_sessions, ach_hypotheses, ach_evidence, ach_scores. Every create/delete/score-change is hash-chain audited.

Multi-format Export

Single audit-funneled IPC channel exports any artifact (DPB brief, ACH session, preliminary report, HUMINT report, raw intel) in five formats:

Format Purpose
PDF Printable, classification-banner-wrapped (top + bottom). Renders via Electron's built-in webContents.printToPDF — no native deps, no puppeteer
Markdown Raw source for Obsidian re-edit / archive
JSON Structured payload for downstream tools
NATO INTREP Human-readable approximation of STANAG 5500/4774 INTREP/INTSUM with proper FM/TO/BT framing, NATO Date-Time Group, classification line, SUBJ/SCEN/CLAS/GENTEXT structure
Encrypted Bundle AES-256-GCM-encrypted blob (scrypt-derived key, salt + IV + GCM tag + ciphertext) containing markdown + JSON + INTREP + manifest. Heimdall imports its own format on the receiving side

Wired into:

  • Dashboard → Daily Brief modal (top-right Export menu)
  • ACH session header
  • Intel Feed detail pane (alongside Open Source / Mark Reviewed)

Every export funnels through ExportService.export() → one export.write row in the tamper-evident audit chain per write. Filenames auto-suggested as heimdall-<kind>-<YYYY-MM-DD>-<title-slug>.<ext>.

Phase 1 status — 8 of 9 themes done

  • ✓ STANAG 2511 source rating + ICD 203 estimative language (v0.4)
  • ✓ Classification levels + hash-chained audit chain (v0.4)
  • ✓ Multi-Agent Analyst Council (v0.4)
  • ✓ I&W Workbench + DPB generator (v0.4)
  • ✓ ACH Hypothesis Workbench (v0.5)
  • ✓ Multi-format export — PDF / Markdown / JSON / NATO INTREP / Encrypted bundle (v0.5)
  • ⏳ Compartmentalization + SQLCipher encryption (Phase 1's last unimplemented theme)

Migrations applied automatically

017 ach_workbench. Pre-migration backup created automatically, no destructive changes.

Downloads

  • Intel Mac: Heimdall-0.5.0.dmg (167 MB)
  • Apple Silicon: Heimdall-0.5.0-arm64.dmg (162 MB)

Unsigned build — on first launch right-click the app → Open → Open to bypass Gatekeeper.