From d9ea2f9c0591f73508b4918f9ced8c9af0a285c8 Mon Sep 17 00:00:00 2001 From: Pratyush Sharma <56130065+pratyush618@users.noreply.github.com> Date: Fri, 10 Jul 2026 17:03:45 +0530 Subject: [PATCH 1/3] docs: set type="info" on untyped callouts Untyped callouts rendered with default (neutral) styling instead of the info variant, so their icon/border differed from every other info callout. --- docs/content/docs/architecture/storage.mdx | 2 +- docs/content/docs/java/guides/operations/sso.mdx | 2 +- docs/content/docs/python/getting-started/installation.mdx | 2 +- docs/content/docs/python/guides/dashboard/sso.mdx | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/content/docs/architecture/storage.mdx b/docs/content/docs/architecture/storage.mdx index 42e486e2..66d17378 100644 --- a/docs/content/docs/architecture/storage.mdx +++ b/docs/content/docs/architecture/storage.mdx @@ -19,7 +19,7 @@ queue, rate limits, periodic tasks, and worker heartbeats. - + **Relationships:** `jobs` → `job_errors` (1 ─ \*, error history) and `jobs` → `dead_letter` (1 ─ 0..1, DLQ on retry exhaustion). diff --git a/docs/content/docs/java/guides/operations/sso.mdx b/docs/content/docs/java/guides/operations/sso.mdx index 4951bcc5..9ba3426a 100644 --- a/docs/content/docs/java/guides/operations/sso.mdx +++ b/docs/content/docs/java/guides/operations/sso.mdx @@ -10,7 +10,7 @@ Multiple OIDC providers can run side by side, each its own button on the login screen. OAuth is off by default — setting any provider's env vars turns it on, alongside password login unless you opt out. - + ID-token validation for Google and generic OIDC needs [`com.nimbusds:nimbus-jose-jwt`](https://connect2id.com/products/nimbus-jose-jwt) on the classpath (see the coordinate below). If it's absent, the dashboard diff --git a/docs/content/docs/python/getting-started/installation.mdx b/docs/content/docs/python/getting-started/installation.mdx index 4452dacf..4d4eb0de 100644 --- a/docs/content/docs/python/getting-started/installation.mdx +++ b/docs/content/docs/python/getting-started/installation.mdx @@ -5,7 +5,7 @@ description: "Install taskito and prepare your environment." import { Callout } from "fumadocs-ui/components/callout"; - + See [**Capabilities at a glance**](/python/getting-started/capabilities) for everything taskito does — workflows, retries, the dashboard, prefork pools — each with a link to its guide. diff --git a/docs/content/docs/python/guides/dashboard/sso.mdx b/docs/content/docs/python/guides/dashboard/sso.mdx index ca9db382..ff9ea47d 100644 --- a/docs/content/docs/python/guides/dashboard/sso.mdx +++ b/docs/content/docs/python/guides/dashboard/sso.mdx @@ -23,7 +23,7 @@ Quick glossary for the acronyms used on this page: - **nonce** — a one-time value that ties a login response to your request - **aud** / **iss** — the audience and issuer claims in the ID token - + OAuth requires the `authlib` extra: ```bash From 8f64d535ea5bc50b0157c3041ae061acc7f017be Mon Sep 17 00:00:00 2001 From: Pratyush Sharma <56130065+pratyush618@users.noreply.github.com> Date: Fri, 10 Jul 2026 17:03:45 +0530 Subject: [PATCH 2/3] fix(docs): redirect bare SDK root to first page /python (and /node, /java) had no page and 404'd; send them to getting-started/installation like the section landing already does. --- docs/app/lib/redirects.ts | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/docs/app/lib/redirects.ts b/docs/app/lib/redirects.ts index 582a7065..a6467f48 100644 --- a/docs/app/lib/redirects.ts +++ b/docs/app/lib/redirects.ts @@ -17,15 +17,19 @@ const ARCH_PAGES = [ "serialization", ]; +const SDKS = ["node", "python", "java"]; + // Sections that have child pages but no landing/index page. A bare hit on the // section URL (e.g. from a breadcrumb crumb or an external link) would otherwise -// 404, so send it to the section's first page. -const SECTION_LANDINGS = ["node", "python", "java"].map( - (sdk): [string, string] => [ - `/${sdk}/getting-started`, - `/${sdk}/getting-started/installation`, - ], -); +// 404, so send it to the section's first page. This covers both the bare SDK +// root (`/python`) and its getting-started section (`/python/getting-started`). +const SECTION_LANDINGS = SDKS.flatMap((sdk): [string, string][] => { + const first = `/${sdk}/getting-started/installation`; + return [ + [`/${sdk}`, first], + [`/${sdk}/getting-started`, first], + ]; +}); export const REDIRECTS: Record = { ...Object.fromEntries( From 7d97d873a4850f4c8b1d6501c302652d75acc94d Mon Sep 17 00:00:00 2001 From: Pratyush Sharma <56130065+pratyush618@users.noreply.github.com> Date: Fri, 10 Jul 2026 17:03:50 +0530 Subject: [PATCH 3/3] fix(docs): make SDK root crumb non-clickable The SDK breadcrumb (e.g. Python) only redirected to the first doc; render it as a plain label instead of a link. --- docs/app/routes/docs.$.tsx | 11 +++++++++-- docs/app/styles/docs.css | 3 +++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/docs/app/routes/docs.$.tsx b/docs/app/routes/docs.$.tsx index 3c7fcd91..c3362451 100644 --- a/docs/app/routes/docs.$.tsx +++ b/docs/app/routes/docs.$.tsx @@ -6,6 +6,7 @@ import { mdxComponents } from "@/components/mdx"; import { getDocLoader } from "@/lib/content"; import { docMeta } from "@/lib/manifest"; import { redirectFor } from "@/lib/redirects"; +import { isSdk } from "@/lib/sdk-registry"; import type { Route } from "./+types/docs.$"; function pathOf(params: { "*"?: string }): string { @@ -23,13 +24,19 @@ function Breadcrumb({ path }: { path: string }) { const label = docMeta(href)?.title ?? seg.replace(/-/g, " ").replace(/\b\w/g, (c) => c.toUpperCase()); - return { href, label }; + // The SDK root (e.g. `/python`) has no page of its own — it only redirects + // to the first doc — so render it as a plain label, not a link. + return { href, label, linked: !(i === 0 && isSdk(seg)) }; }); return (
{crumbs.map((c) => ( - {c.label} + {c.linked ? ( + {c.label} + ) : ( + {c.label} + )} / ))} diff --git a/docs/app/styles/docs.css b/docs/app/styles/docs.css index a8cb354f..ff7192a4 100644 --- a/docs/app/styles/docs.css +++ b/docs/app/styles/docs.css @@ -295,6 +295,9 @@ body { .crumb a:hover { color: var(--mut); } +.crumb-root { + cursor: default; +} .crumb .sep { opacity: 0.5; }