Skip to content

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, this project adheres to Semantic Versioning, commits follow Conventional Commits, and this changelog is generated by Structured Changelog.

Unreleased

v0.1.0 - 2026-04-11

Highlights

  • Git-friendly graph database with one-file-per-entity storage for minimal diffs
  • Edge confidence system supporting EXTRACTED, INFERRED, and AMBIGUOUS relationships
  • Graph traversal algorithms (BFS, DFS, path finding) in query package
  • Graph analysis: hub detection, community detection (Louvain), diff comparison

Added

  • graph.Node type with ID, Type, Label, and extensible Attrs map (06f5b1f)
  • graph.Edge type with From, To, Type, Confidence, ConfidenceScore, and Attrs (06f5b1f)
  • graph.Graph type with in-memory node/edge collections and CRUD operations (06f5b1f)
  • graph.Confidence enum: EXTRACTED (AST-derived), INFERRED (LLM), AMBIGUOUS (uncertain) (06f5b1f)
  • Node type constants: function, method, class, struct, file, package, module, variable, constant, interface (06f5b1f)
  • Edge type constants: calls, imports, implements, extends, uses, contains, depends_on, references (06f5b1f)
  • format.MarshalCanonical for deterministic JSON output with sorted keys (8fa733a)
  • format.UnmarshalCanonical for standard JSON unmarshaling (8fa733a)
  • schema.Validator with configurable validation rules (37225c4)
  • schema.ValidateNode for node ID, type, and label validation (37225c4)
  • schema.ValidateEdge for edge endpoint, type, and confidence validation (37225c4)
  • schema.ValidateEdgeRefs for referential integrity checks (37225c4)
  • schema.ValidateGraph for full graph validation with error collection (37225c4)
  • store.Store interface for pluggable storage backends (c3c727d)
  • store.FSStore for filesystem-backed persistence (c3c727d)
  • One-file-per-entity storage: nodes/{id}.json and edges/{from}__{type}__{to}.json (c3c727d)
  • Full CRUD operations: WriteNode, WriteEdge, GetNode, GetEdge, DeleteNode, DeleteEdge (c3c727d)
  • Batch operations: ListNodes, ListEdges, LoadGraph, SaveGraph (c3c727d)
  • query.Traverser with BFS, DFS, and FindPath methods (3661f45)
  • query.Direction enum: Outgoing, Incoming, Both (3661f45)
  • query.TraversalResult with visited nodes, edges, depth tracking (3661f45)
  • analyze.FindHubs to identify highly connected nodes (3661f45)
  • analyze.IsolatedNodes to find weakly connected nodes (3661f45)
  • analyze.DetectCommunities using Louvain algorithm (3661f45)
  • analyze.DiffGraphs to compare graph snapshots (3661f45)
  • analyze.CohesionScore for community density measurement (3661f45)
  • analyze.NodesByType and EdgesByType grouping functions (3661f45)
  • analyze.EdgesByConfidence for confidence-level grouping (3661f45)

Dependencies

  • github.com/spf13/cobra v1.10.2 for CLI (c3c727d)
  • gonum.org/v1/gonum v0.17.0 for Louvain algorithm (3661f45)

Documentation

  • README with usage examples (8372707)
  • MkDocs documentation site (8372707)
  • API reference for all packages (8372707)
  • CHANGELOG.md with release notes (dbcb8f6)
  • TASKS.md with phase-based development roadmap (dbcb8f6)

Infrastructure