Repository navigation
feat: Insights, and background work that ends with the host and not before (ADRs 0066, 0067) - #59
Merged
Merged
Conversation
…efore (ADRs 0066, 0067)
Insights is a screen beside the overview, read from the same kept months as
All time (ADR 0066):
- `KeptHistory.Insights` folds kept months' stored arrays with Day and Hour
series for the months answered live, on the website's clock. Every tied
weekday and hour is named; nothing read names none. Shares are taken of their
own figures.
- `GET /api/sites/{id}/insights[?only=people]`, answering the record, its
months, what was left out and how far judging has reached.
- `/app/insights` sits between Overview and Live and carries the population but
not the period: all-time highlights, most popular times, and a months-and-years
table shaded on one violet ramp, read as totals or as an average per day. A
year is a card of twelve tiles on a phone. Refused, waiting, empty and the two
people-only absences are designed states drawn by one component.
- `experimental.proxyTimeout` is 120 s and the engine's longest statement is an
explicit 100 s, so a slow reading is ended where the log says which.
- The overview's headline cards settle on no figure under a refused answer.
- Remembered addresses treat a choice as the end of arrival and write nothing
the address already says, so People only pressed before the website is known
keeps the way back working.
Whether background work was cancelled is asked of the token it was given, never
of the exception (ADR 0067):
- A client out of time reports a cancellation, which used to stop the host. Every
timed service now ends a failed run there, writes it down and tries again at the
next tick, and takes anything once its own token is cancelled as part of stopping.
`CancellationTests` fails the build on the old filter.
- `StoreDriverLogging` drops the driver's error for an abandoned statement and
keeps timeouts and real failures. `System.Net.Http.HttpClient` logs at Warning:
it was 137,644 of the 138,209 lines the hosted engine wrote in thirteen hours.
- Refresh intervals are validated between five minutes and 49 days. Stopping
during a download discards the part and says nothing of it.
Tests: `Fixtures/StillHeld` replaces fixed dates in eleven classes that would have
started failing as those dates passed out of the twelve months held, and
`Fixtures/HostRefusal` ends the race in `IgnoredSenderTests`.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
jagdish-kumawat
force-pushed
the
feat/2026-11-06-insights
branch
from
November 6, 2026 11:12
61c4eab to
41dda95
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this adds
Insights, a new screen between Overview and Live (ADR 0066):
No new data is collected and no schema changes. The screen reads the monthly figures ADR 0064 already keeps, and the running month live.
Background work that ends with the host and not before (ADR 0067):
catchfiltered on the exception's type let it through and stopped the whole engine. Whether work was cancelled is now asked of the token it was given. An architecture test fails the build on the old shape.Smaller fixes
How it was checked
pnpm verifygreen: Testing 11, Domain 117, Application 525, Classification 530, Architecture 28, Api 36, Sql 304, Mail 30, Integration 1091, web 1953, tracker 84.Known limits
Recorded in the ADRs: a best day ever can change when a month still held is counted again; a month read beside another can differ by a few units until it is kept; keyboard behaviour was checked in Chromium only.
🤖 Generated with Claude Code