v0.44.0

feder-cr/invisible_dotsv0.44.0Sep 13, 2026by github-actions[bot]

Upgrading?

AI Summary

This release introduces a new content validation check (the seventh) to ensure that published pages match the actual character counts and tool numbers derived from the server's source code. It uses the `ast` module to verify these figures against the running registry, preventing stale or incorrect data from being published.

Key Highlights

  • Added a seventh content check to verify tool counts and description characters against the server's source code.
  • Implemented `ast`-based validation to compute numbers from source code without external dependencies.
  • Refined the check to focus on 'N characters of description' to reduce false positives.
  • Updated self-test statistics to 17 mutations and 11 clean cases.
  • Fixed the module docstring to remove the outdated count of checks.

New Features

  • New content validation mechanism using AST parsing.
  • Support for validating character counts in both prose and table row formats.
  • Automated verification of tool surface numbers against the registry.

Full Release Notes

Yesterday eleven live pages quoted 8,639 characters and about 2,160 tokens for
this server's tool surface. Both figures were wrong, for two independent
reasons, and the only thing that found it was a person needing the number for
a new page. Nothing in the repository could have.

The seventh content check is that missing link. It recomputes the tool count
and the total description characters from the server's source with ast - no
imports, no dependencies, verified to agree with the running registry to the
character - and refuses any page publishing a different figure. Mutated four
ways, including the one that matters: change the server and leave the pages
alone, and twelve pages are named.

The character count is the anchor and the tool count is only checked beside
it. The first draft checked every "N tools" in the corpus and accused four
healthy lines out of four: a general guideline, a true sentence about our own
past, and twice another product's tool count. A tool count appears in prose
for a dozen honest reasons; "N characters of description" appears for one.
Nothing is lost by the narrowing, because adding or removing a tool moves the
character total too.

Two shapes are read, prose and a table row, because a surviving mutation found
that the one page whose whole subject is this number publishes it as a table.
Being blind exactly there would have been the worst place for it.

Selftest 14 -> 17 mutations, 8 -> 11 clean cases. The module docstring no
longer states how many checks there are: it said five while running six, which
inside the file that exists to catch stale numbers is the joke telling itself.

Related Repositories