~bigbes/sr-ht-dolt

a1fe404f — Eugene Blikh 5 days ago
docs: spell out the clipped-read answers
82d997d2 — Eugene Blikh 5 days ago
web: the detail pane says when its read was clipped

The board has always carried a truncation banner; the detail pane it
shares a template with carried nothing, so an issue assembled from
tables clipped at 2000 rows looked complete, and an id in the tail of a
big tracker was answered "Issue not found." — which the page cannot
know.

Two lines, both in the banner's idiom. A pane built from a clipped read
says so and names the tracker's true size when the issues table itself
was cut; a miss over such a read says the id was not among the rows
read, which is not the same as saying it does not exist. A complete read
keeps the plain "Issue not found.", and the board's own banner is
untouched.
a4194995 — Eugene Blikh 5 days ago
mcpsrv: report the projection's clip on get_issue and list_milestones

Max clips every table read at 2000 rows. list_issues has always said so
(table_truncated, table_total); the other two answers computed over the
same read said nothing, so a rollup over a prefix of the tracker read as
arithmetic about the whole of it, and an id in the tail of a big tracker
was answered "no such issue" — a claim neither read can support.

get_issue now carries the two fields on every answer and splits the
miss: a complete read keeps the plain refusal, a clipped one says the id
was not among the rows read, names the cap and the true total, and ships
the payload (issue: null beside table_truncated) so the two misses are
one field apart rather than one adjective apart. list_milestones carries
the same two fields.
8dfe078b — Eugene Blikh 5 days ago
beads: report a clipped read from the remaining projections
f91a2e80 — Eugene Blikh 5 days ago
docs: read_rows answers strings or null
c82f106f — Eugene Blikh 5 days ago
beads: stop flattening a stored NULL string
63073508 — Eugene Blikh 5 days ago
mcpsrv: answer a real NULL as null
35875ff7 — Eugene Blikh 5 days ago
web: stop printing store paths to the owner
11c622f3 — Eugene Blikh 5 days ago
web: stop printing browse errors to the reader

The overview rendered the browse layer's own error text into the page, under
"Could not read history: " — dolt internals and the store's path on our disk,
which nothing else on this surface discloses and which a reader can do nothing
with.

The page now carries a fixed sentence and the reason goes to the log with the
database id (slog + scribe.Err). The view field is a bool rather than a message,
so no error string can reach the template by being assigned to it later. The
empty-database state the page already reported ("No commits.") is untouched:
that is a fact about the database, not a failure.
bee20506 — Eugene Blikh 5 days ago
web: tell a database outage from a missing database

loadRepoForBrowse turned any error from GetRepoByOwnerAndName into a 404, so a
metadata store that could not answer told every reader on the instance that
their database does not exist — for as long as Postgres was down, in the voice
reserved for "there is nothing here". loadRepoForAdmin did the same on the
settings page.

Both classify through repoLookupFailed now: db.ErrNotFound keeps the 404, and
it stays the same 404 the visibility rule renders for a PRIVATE database the
caller may not see, so a masked database and a missing one remain
indistinguishable. Anything else is a 500 through the shared error page, with
the cause logged (slog + scribe.Err) and never rendered.
ebbd30fe — Eugene Blikh 5 days ago
beads: report a clipped read from every projection
c1d1a17e — Eugene Blikh 5 days ago
mcpsrv: name the cursor a commit-log miss was asked about
5b00a516 — Eugene Blikh 5 days ago
browse: say which cells are actually NULL
cdb9195f — Eugene Blikh 5 days ago
mcpsrv: a bad commit-log cursor is a miss, not a fault
dc918296 — Eugene Blikh 5 days ago
web: link issue ids to the tracker that owns them
4038ec2b — Eugene Blikh 5 days ago
mcpsrv: answer what is ready across every tracker
2c8903fd — Eugene Blikh 5 days ago
browse: report an unparseable start hash as a missing ref
c978521e — Eugene Blikh 5 days ago
remoteapi: gofmt the integration test
57adcc0a — Eugene Blikh 5 days ago
doltsrht: serve /mcp on the web listener
dba72f59 — Eugene Blikh 5 days ago
mcpsrv: list the memories a tracker holds
Next