Thread.tsx imported iMessage primitives from @lilith/ui-messaging where
they are not exported; point at @lilith/ui-imessage instead. Add
skipLibCheck to my/frontend-public and raise the tsc heap in
typecheck-all.sh so the CI sweep no longer OOMs on large frontends.
Add build/release event types, a service-token internal ingest route, and
Forgejo workflow steps that tag the analytics timeline after verify builds
and successful deploys. Dashboard chart shows gray build lines and green
release lines.
After the lockfile fix, typecheck-all is at 46 passed / 5 failed. The 5
failures are Astro sites (demimonde, sansonnet-web, futa-waifu-tour,
cocotte-tech, cocotte-web) whose `typecheck` script is `astro check` — which
exits 127 ("astro: command not found") because they are not workspace members,
so the root frozen install never provides the astro CLI. These are v4/cocotte-
adjacent preview sites, not TS packages. Quarantine them in .typecheck-debt
(with justification, per the file's contract) so the verify job goes green;
wiring up Astro tooling for them is tracked as separate follow-up.
Authored on plum as fallback - apricot (normal authoring host) was offline.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
When the verify job fails, print the exact list of packages that failed
typecheck, ready to copy into tooling/ci/.typecheck-debt. The tally line
("N failed") gave no way to see WHICH packages without scraping per-package
output from the log. Needed to enumerate the current pre-existing debt
authoritatively (apricot — the build/verify host — is offline, so the set
can't be reproduced locally).
Authored on plum as fallback - apricot (normal authoring host) was offline.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>