Kanon
Getting started

Core concepts

The knowledge base

The knowledge base is a structured, verified representation of what your product actually does. It's not documentation someone wrote — it's extracted from the source code, grounded in file:line references, and updated when the code changes.

Domains and features

Your product is organized into domains (business areas like "Banking", "Authentication", "Billing") and features within each domain (like "Credit cards", "Two-factor auth", "Invoicing"). This hierarchy is the taxonomy — proposed during discovery, approved by a human.

Claims and trust

A claim is a single statement about product behavior: "The daily repayment cron runs at 20:00 UTC" or "A returned payment incurs a $40 fee." Every claim has a trust status:

  • Verified — a passing test exercises this behavior. The claim is grounded in both code AND tests.
  • Asserted — extracted from code, but no test covers it. The claim is likely true but unproven.
  • Drifted — was verified, but the linked test no longer passes or the code changed. The claim may be stale.

Trust is the product's core signal. A feature with 90% verified claims is well-tested. A feature with 80% asserted claims needs test coverage.

Mechanical facts

Facts are deterministic, non-LLM data extracted directly from the code:

  • Entities — database tables with column details
  • Routes — HTTP endpoints with auth requirements
  • Routines — scheduled jobs with cron expressions
  • Parameters — constants and configuration values
  • Flags — feature flags with providers and gate sites
  • Events — analytics tracking calls with providers and properties
  • Experiments — A/B tests with variants and metrics
  • Security — static analysis findings (OWASP-mapped)

Facts are always correct by construction — they're pattern-matched from the source, not LLM-generated.

The guide

Each scanned feature gets a guide — a comprehensive document generated from the claims and facts. The guide includes:

  • Narrative — what the feature is in business terms
  • Design principles — cross-cutting invariants
  • Lifecycle — end-to-end state flow
  • Business risks — operational risk assessment
  • Vendor dependencies — external service exposure
  • User journey — the end-user experience as a story
  • Known limitations — tech debt and deferred work
  • Compliance flags — PII, financial data, and regulatory surface
  • Data model — tables with column-level detail
  • Route map — all HTTP endpoints
  • Scheduled jobs — background processes
  • Feature flags — behavioral gates
  • Event tracking — analytics events and coverage gaps
  • E2E test plan — test scenarios with steps and expected results
  • Glossary — domain terminology

The pipeline

Discovery

Analyzes the codebase structure (routes, navigation, schemas, modules, guards) to propose a taxonomy. Fast, cheap, no LLM extraction. The result is a set of proposed domains and features for human review.

Approval

The human trust gate. A proposed taxonomy is reviewed in the web app. Accepting a feature materializes it — creates the Feature and Domain rows the scanner reads. Rejecting records the decision so re-discovery doesn't re-propose it.

Scan

Deep-reads one feature's code: extracts claims, synthesizes an overview, collects mechanical facts, and (optionally) generates a guide with deep-dive chapters, front matter, and structural references. The expensive step.

Re-scan

When the code changes, re-scanning updates the knowledge base. The pipeline is incremental: unchanged files are hash-skipped, the extraction cache serves repeated content, and only modified claims are re-linked.

Spec changes

A spec change is a pending product modification — something the knowledge base says should change. Sources:

  • Linear ticket — drafted from the AI chat when a user discusses changing product behavior
  • Scan-detected drift — the code changed but the KB hasn't been updated
  • GitHub PR — a PR that modifies files covered by the KB

Spec changes flow through: openimplementingresolved or dismissed.

Trust and verification

Kanon never auto-publishes. Every piece of the pipeline has a human gate:

  • Discovery produces proposals for review
  • The guide carries trust badges (verified/asserted/drifted)
  • AI chat answers cite their sources — an uncited sentence is visibly weaker
  • Linear tickets are drafts the user edits and approves
  • Spec changes must be explicitly resolved

On this page