# v0.3.0

## New features

- A stricter search option that can guarantee it never hands back a retired
  rule, plus an honest "no rule applies" answer. By default, search still
  favors current guidance but can still return an older, superseded document
  lower in the list; the new strict mode excludes superseded or deprecated
  guidance entirely instead of just ranking it lower. A separate signal
  catches queries that do not match anything meaningful, so the assistant
  gets a clear "nothing applies here" instead of a stretch of unrelated
  results.
- An import command for teams that already have a pile of agent rules. Point
  it at an existing CLAUDE.md, AGENTS.md, cursorrules file, or a folder of
  architecture decision records and it produces a draft set of governed
  documents, ready for a person to review before anything is committed.
- The groundwork to install straight from PyPI, with a guided setup wizard.
  The release chain is now wired to publish the package once the operator
  finishes a one-time PyPI publishing setup; from then on, every release
  becomes installable with a single command. The wizard checks the server is
  reachable, finds which coding assistants are installed on the machine,
  registers the knowledge base with each one, and offers to turn on the
  mandatory-consultation safeguard, all with automatic backups of anything
  it changes.
- Noticeably leaner responses. The everyday search and lookup calls now
  return a trimmed-down shape by default, cutting the tokens an assistant
  pays for by about 26 percent overall, with the full, original shape still
  available on request.
- A write pipeline that can no longer lose or clobber someone else's work.
  Concurrent changes are now serialized and locked per file, conflicting
  updates are recovered automatically or handed to a person to resolve, and
  every incoming change is checked for valid formatting before it is
  committed, so a malformed or duplicate entry can no longer break the
  knowledge base for everyone.
- A mandatory-consultation gate that actually verifies a real check happened,
  and tells a blocked assistant exactly how to unblock itself, including the
  precise command to run.
- Hardened security across the board: limits on oversized requests, fixes for
  several ways a crafted document or request could have injected content or
  escaped its intended folder, and tokens that grant only the access an
  assistant actually needs instead of full access by default.
- Rechecked, honestly reported benchmark numbers, so the quality claims this
  project makes about its own search are ones it can stand behind.
- A written runbook for operators, a separate readiness check that no longer
  flags a service as broken just because it is briefly out of sync with its
  source, and an audit trail that can now rotate to a fresh file as it grows
  (an opt-in setting) while still proving nothing in it was tampered with.
- A refreshed example knowledge base showing off supersession, memories, and
  reference documents, plus documentation for a field that helps search match
  a task to the right rule.

## Fixed

- A local development script that could silently delete a folder you pointed
  it at now refuses to touch anything it does not own.
- The guide for adopting this project into a new codebase was teaching a
  document format that did not match what the software actually expects; it
  now matches.
- A placeholder template file was mistakenly being treated as real content in
  places, which could pollute generated indexes and diagrams; it is now
  consistently ignored everywhere.
- Health metrics that were supposed to show queue activity always read zero;
  they now reflect what is actually happening.
