chore(plan-9): final verification + changelog summary
Straggler fixes: web-next and web-tanstack app callers did not pass {}
to queryOptions()/caller calls after Plan 9 added .input(z.object({}).strict())
to siteSettings and header procedures. All 360 tests pass, full typecheck
green across 14 packages. Refactor log §7 updated with verification summary.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -7,8 +7,8 @@ export default async function Home() {
|
|||||||
const caller = appRouter.createCaller({});
|
const caller = appRouter.createCaller({});
|
||||||
|
|
||||||
const [siteSettings, header, articles] = await Promise.all([
|
const [siteSettings, header, articles] = await Promise.all([
|
||||||
caller.marketingPages.siteSettings(),
|
caller.marketingPages.siteSettings({}),
|
||||||
caller.navigation.header(),
|
caller.navigation.header({}),
|
||||||
caller.blog.listArticles({ status: "published", limit: 20 }),
|
caller.blog.listArticles({ status: "published", limit: 20 }),
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
|||||||
@@ -9,8 +9,8 @@ export const Route = createFileRoute("/" as any)({
|
|||||||
|
|
||||||
function Home() {
|
function Home() {
|
||||||
const trpc = useTRPC();
|
const trpc = useTRPC();
|
||||||
const siteSettings = useQuery(trpc.marketingPages.siteSettings.queryOptions());
|
const siteSettings = useQuery(trpc.marketingPages.siteSettings.queryOptions({}));
|
||||||
const header = useQuery(trpc.navigation.header.queryOptions());
|
const header = useQuery(trpc.navigation.header.queryOptions({}));
|
||||||
|
|
||||||
if (siteSettings.isPending || header.isPending) {
|
if (siteSettings.isPending || header.isPending) {
|
||||||
return <main>Loading…</main>;
|
return <main>Loading…</main>;
|
||||||
|
|||||||
@@ -155,6 +155,23 @@ media: 4 new R26 tests in router.test.ts — NOT_FOUND on getMedia with nonexist
|
|||||||
no-op (defineErrorMiddleware uses `instanceof`), but ensures correct
|
no-op (defineErrorMiddleware uses `instanceof`), but ensures correct
|
||||||
serialization, stack-trace labels, and JSON inspectability.
|
serialization, stack-trace labels, and JSON inspectability.
|
||||||
|
|
||||||
|
### Plan 9 final verification (Task 8, 2026-05-06)
|
||||||
|
|
||||||
|
- pnpm typecheck / lint / test / turbo boundaries / build: all green after fixing 2 Plan 9 regressions in app callers (see stragglers below).
|
||||||
|
- Total tests: 360 across 15 test suites. Net delta vs pre-Plan-9: +144 tests (Plan 9 added R25 output-validation + R26 router error-mapping + R27/R28 presenter shape tests across all 5 features).
|
||||||
|
- Spec §8 acceptance criteria sweep:
|
||||||
|
- All non-test use cases export xInputSchema. ✓
|
||||||
|
- Non-void use cases also export xOutputSchema (void exempt: sign-out, delete-media). ✓
|
||||||
|
- All non-void controllers have `function presenter`; void controllers (sign-out, delete-media) return Promise<void>. ✓
|
||||||
|
- 5 procedures.ts files (one per feature). ✓
|
||||||
|
- 5 ./ui subpath entries in package.json. ✓
|
||||||
|
- All error classes set this.name (R6 satisfied after `9663c82`). ✓
|
||||||
|
- R26 router error-mapping tests pass for all 5 features (4–6 tests each). ✓
|
||||||
|
- Stragglers fixed in this task (Plan 9 regressions, NOT pre-existing):
|
||||||
|
- `apps/web-tanstack/src/routes/index.tsx` — `queryOptions()` → `queryOptions({})` for siteSettings and header (both procedures now require `{}` input after Plan 9 added `.input(z.object({}).strict())`).
|
||||||
|
- `apps/web-next/src/app/page.tsx` — `caller.marketingPages.siteSettings()` → `caller.marketingPages.siteSettings({})` and `caller.navigation.header()` → `caller.navigation.header({})` (same root cause).
|
||||||
|
- Pre-existing items (NOT introduced by Plan 9): none.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Doc update checklist (deferred — combined with paused Plan 8 doc pass)
|
## Doc update checklist (deferred — combined with paused Plan 8 doc pass)
|
||||||
|
|||||||
Reference in New Issue
Block a user