Skip to content

What's New

Curated highlights of notable GCF releases, newest first. For the current version of every package see Implementations; for the full notes on any release see the GitHub releases.

The spec has grown additively since v3.0 with no breaking changes: a v3.0 decoder ignores anything it does not recognize.

Current ecosystem: Spec v3.5.1 · 7 SDKs (Go v1.6.2, Swift v2.6.2, Python/Rust v2.5.3, TS/Kotlin v2.5.2, .NET v0.1.2) · gcf-proxy v0.11.4 · tree-sitter-gcf v1.4.0 · 265 conformance fixtures.

v3.5.1 — Score-rounding errata, and a .NET SDK

2026-08-09

  • Spec errata (§5): the graph score's two-decimal wire form is now pinned to round-half-to-even on the exact IEEE-754 double. The rounding mode was previously unspecified, so implementations diverged at exact binary midpoints (0.1250.12, not 0.13) between the printf-family SDKs and the round-half-up ones (JavaScript, Kotlin). TypeScript and Kotlin were corrected; a new conformance fixture locks it. A clarification, not a grammar change: correct decoders are unaffected.
  • GCF now has a first-party .NET implementation, gcf-dotnet (NuGet BlackwellSystems.Gcf), bringing the SDK count to seven. Zero runtime dependencies, multi-targeting netstandard2.0 and net8.0, so it runs on .NET Framework 4.6.1+, Mono, Unity, and modern .NET.
  • Full parity with the other SDKs: generic and graph profiles, delta encoding (both profiles), session deduplication, streaming, and the re-anchor session helper. Passes the complete cross-SDK conformance suite, so it round-trips byte-identically to the Go, TypeScript, Python, Rust, Swift, and Kotlin implementations.
  • Release notes

v3.5.0 — Keyed-tabular map encoding

2026-08-07

  • A JSON object whose values are uniform objects (an id-keyed map: config by flag, metrics by host, a service registry, a cache) now encodes as a keyed table (Spec §7.2a): the shared fields are declared once and each entry is one positional row prefixed by its key. Lossless, key-order preserving, and first-class in nested, streaming, and delta positions.
  • On realistic map shapes this is about 29% fewer tokens than minified JSON, consistent across 42 production tokenizers (23% to 56% per tokenizer).
  • Also folded in: negative zero canonicalizes to 0 (Spec §2.3.1), the buffered graph header omits zero-valued budget/tokens/edges (Spec §3.2), and structural delimiters are matched at the Unicode scalar level (Spec §1).
  • Hardening (SDKs v2.5.1, Go v1.6.1, Swift v2.6.0): decoders now reject a declared [N] section count that does not match the actual item count, in both directions (Spec §13), backed by a new cross-SDK mutation-decoder fuzz that feeds every SDK malformed wire round-trip testing cannot reach.
  • Shipped across all six SDKs, tree-sitter-gcf v1.4.0, and gcf-proxy v0.11.4.
  • Release notes

v3.4.1 — Graph delta verification

2026-07-13

  • A graph delta's ## added lines now carry a trailing distance field, so a consumer can reconstruct the new snapshot and verify new_root end to end (Spec §10.1, §10.4).
  • Shipped across all six SDKs (Go v1.5.0, the other five v2.4.0), tree-sitter-gcf v1.3.3, and gcf-proxy v0.11.3.
  • Release notes

v3.4.0 — Labeled streaming trailer + decoder hardening

2026-07-13

  • Optional labeled counts form for the graph streaming trailer (Spec §8.4.1), a producer-side comprehension aid. The default positional form is unchanged.
  • Decoder hardening and a conformance coverage matrix across all implementations.
  • Release notes

v3.3.0 — Delta encoding for the generic profile

2026-07-12

  • Delta encoding, previously graph-only, now works for the generic profile (Spec §10a): a keyed diff with an @id identity column and ## added / ## changed / ## removed sections, content-addressed by pack_root. Delta is now a both-profile capability. See the Delta guide.
  • Release notes

v3.2.0 — Nested-object flattening

2026-06-23

  • Nested objects flatten into > path columns (Spec §7.4.6), so records with sub-objects stay positional instead of falling back to a less efficient encoding.
  • Release notes

v3.1.0 — Optional graph tool field

2026-06-14

v3.0.0 — Inline schema encoding

2026-06-13

  • The v3 generic profile foundation: inline object schemas encode nested objects positionally, shared array schemas omit repeated field headers.
  • Release notes

This page tracks highlights only, updated at each release. For per-commit history, see the GitHub releases and each package's CHANGELOG.

100% comprehension. 71% fewer tokens. 2,500+ LLM evaluations.