Skip to content

docs: Google ADK Guard (JS and Python) and Cloudflare Think - #948

Merged
davidmytton merged 13 commits into
mainfrom
david/cursor/guard-adk-py-think-docs-632e
Sep 22, 2026
Merged

davidmytton merged 13 commits into
mainfrom
david/cursor/guard-adk-py-think-docs-632e

Conversation

@davidmytton

@davidmytton davidmytton commented Sep 18, 2026 •

Copy link
Copy Markdown
Collaborator

Documents Google ADK Guard for JS and Python on one tabbed /guards/google-adk/ page, and adds Cloudflare Think Guard at /guards/cloudflare-think/.

  • Google ADK — JS @arcjet/guard/google-adk/v2 and Python arcjet.guard.google_adk / arcjet[google-adk] behind Strands-style language tabs. Retired /guards/google-adk-py/ (old URLs redirect).
  • Cloudflare Think — @arcjet/guard/cloudflare-think/v0, with the official Cloudflare mark in the framework switcher.
  • Wiring — framework switcher, sidebar, SDK registry, get-started, quick-start, framework-integrations index, llms.txt, redirects, and Playwright snapshots.

Until publish: Python ADK pin a71970dc; Think pin b06e584d.

Supersedes #920.

Open in Web Open in Cursor 

@vercel

vercel Bot commented Sep 18, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
arcjet-docs Ready Ready Preview Sep 22, 2026 11:48am UTC

Request Review

@cursor

cursor Bot commented Sep 18, 2026

Copy link
Copy Markdown

Review of b4873298 (content from 6e08456e plus CI-aligned Think snapshots):

Content looks good. Both /guards/google-adk-py/ and /guards/cloudflare-think/ teach actor/inputs on day one: omit those names and a remote rule that declares them never fires; a resolver throw is a guard error and fail-closes via the deny default; actor comes from authenticated app state, never model tool args.

Related cites check out: Think points at examples/cloudflare-think-agent at 48d4e54c (not main); ADK Python points at examples/fastapi-google-adk-guard at a71970dc. Live /guards/google-adk/ was left alone.

CI is green on this head after refreshing the Think light/dark screenshots from CI actuals (the only deterministic Playwright failure). #920 is already closed as superseded.

@cursor cursor Bot changed the title docs: Google ADK Python and Cloudflare Think Guard docs: Google ADK Guard (JS and Python) and Cloudflare Think Sep 21, 2026
@davidmytton
davidmytton marked this pull request as ready for review September 21, 2026 21:06

@arcjet-review arcjet-review Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Arcjet Review — 🔴 High Risk

Decision: Blocked

Rationale: PR has merge conflicts. Resolve conflicts before review.

Review: 9a6f0156 | Powered by Arcjet Review

@arcjet-review arcjet-review Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Arcjet Review — 🟢 Low Risk

Decision: Approved

Rationale: Documentation-only PR adding new guard pages for Cloudflare Think and a tabbed JS/Python page for Google ADK, plus supporting sidebar/switcher/redirect entries and refreshed screenshots. The previous blocking merge conflict was resolved via the 'merge: bring main into the ADK and Think docs branch' commit. Code changes are additive entries in framework/SDK maps and a new SVG icon component; the two workflow edits only add workflow_dispatch triggers, which is a low-risk convenience. No secrets, no auth/infra logic, no schema changes. PR is >1000 lines but almost entirely MDX/snippets/PNG snapshots — low risk despite size.

Summary of Changes

Adds a new /guards/cloudflare-think/ page and merges Google ADK JS + Python into a single tabbed /guards/google-adk/ page (superseding the split /guards/google-adk-py/). Wires the two into the framework switcher, sidebar, SDK registry, get-started, quick-start, framework-integrations index, Python reference, and llms.txt/llms-full.txt. Adds a Simple-Icons Cloudflare mark icon component, get-started + quick-start snippets for both, screenshot baselines, sdk.test.ts assertions, vercel.json redirects from old /guards/google-adk-py/ and /sdk/google-adk-py/* URLs, and workflow_dispatch triggers on the Playwright and spellcheck workflows.

Escalation Triggers

  • CI/CD Pipeline: playwright.yml and spellcheck.yml each add a workflow_dispatch trigger. Low-impact convenience change, no secrets or permissions touched.

Notes

PR exceeds the 1000-line size threshold, but the bulk is MDX prose, JSON redirect entries, and binary screenshot baselines — all straightforward to review. Previous blocking issue (merge conflicts) has been resolved by the merge commit from main.

Review: 49a6f2a7 | Model: anthropic/claude-opus-4-7 | Powered by Arcjet Review

Comment thread src/snippets/get-started/cloudflare-think/Step3.ts
Comment thread src/snippets/guards/quick-start/cloudflare-think/Wrap.ts
Comment thread src/snippets/guards/quick-start/cloudflare-think/Wrap.ts
Comment thread src/content/docs/guards/cloudflare-think.mdx
Comment thread src/content/docs/guards/google-adk.mdx
Comment thread .github/workflows/playwright.yml
@cursor

cursor Bot commented Sep 21, 2026

Copy link
Copy Markdown

Review of 07951ab4:

  1. Cloudflare Think icon: PASS. CloudflareThink.tsx uses the Simple Icons cloudflare path, byte-for-byte the current Simple Icons mark. The switcher, SDK icon, and framework links all use that component. The old notched cloud glyph is gone.
  2. One Google ADK page: PASS. There is no /guards/google-adk-py/ content page. Python is language tabs on /guards/google-adk/, the same pattern as /guards/strands-agents/. Cloudflare Think stays /guards/cloudflare-think/.

Redirects and listings: PASS. /guards/google-adk-py redirects to /guards/google-adk, and /sdk/google-adk-py redirects to /sdk/google-adk/get-started. The switcher, sidebar, framework-integrations index, get-started, and llms-full.txt list one Google ADK entry.

Actor/inputs and cites: PASS. The merged page still teaches actor and inputs. The Python pin is still a71970dc; the install link now points at that commit tree because david/cursor/google-adk-guard-5549 was deleted. Examples remain examples/google-adk-agent (JS, main) and examples/fastapi-google-adk-guard at a71970dc. Think Related still cites examples/cloudflare-think-agent at 48d4e54c.

CI on 07951ab4: green. Playwright (build, four shards, merge-reports), typos, Vercel, and both Socket checks passed. The PR is mergeable.

Nit: Playwright and spellcheck now allow workflow_dispatch so a stuck run can be started by hand. It does not change the docs.

@cursor

cursor Bot commented Sep 21, 2026

Copy link
Copy Markdown

Review of 07951ab4:

David’s content requirements: PASS.

  • Cloudflare Think uses the official Simple Icons mark (M16.5088… in CloudflareThink.tsx).
  • There is no /guards/google-adk-py/ page. Python is language tabs on /guards/google-adk/. Cloudflare Think stays /guards/cloudflare-think/.
  • /guards/google-adk-py redirects to /guards/google-adk. /sdk/google-adk-py redirects to /sdk/google-adk/get-started. Switcher, sidebar, and prefs list one Google ADK entry.
  • Actor/inputs teaching is still on the merged page. Python pin remains a71970dc (install link is that commit tree). Think Related still cites examples/cloudflare-think-agent at 48d4e54c.

CI on 07951ab4: green. Playwright (build, four shards, merge-reports), typos, Vercel, and both Socket checks passed. The PR is mergeable.

All six review threads are resolved.

@arcjet-review arcjet-review Bot removed the ready Ready to merge label Sep 22, 2026
cursoragent and others added 5 commits September 22, 2026 11:27
Document the unpublished Python Google ADK and JS Cloudflare Think
adapters from current main, with git SHA pins, actor/inputs teaching,
and framework switcher wiring. Does not change the live JS Google ADK
page.

Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
Regenerate Playwright snapshots for the new Guard pages, framework switcher surfaces, and llms.txt listings.

Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
Point Related at examples/cloudflare-think-agent on
david/cursor/cloudflare-think-agent-f8cc at 48d4e54c.

Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
Related now cites the landed examples/cloudflare-think-agent branch.

Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
Playwright shards failed on ~800-pixel diffs for the Think page
light/dark snapshots. Replace them with the CI-captured actuals.

Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
cursoragent and others added 7 commits September 22, 2026 11:27
Fold the Python ADK guide into /guards/google-adk/ with language tabs,
redirect the retired google-adk-py routes, and use the official
Cloudflare mark on the Think switcher chip.

Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
The david/cursor/google-adk-guard-5549 branch was deleted after merge.
Link the install pin to the a71970dc tree, leave the pin SHA unchanged,
and refresh the Playwright snapshots that changed with the Cloudflare
mark, the merged ADK tabs, and the footer pixel diffs.

Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
The snapshot commit reached the PR but did not create GitHub Actions runs.

Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
Pushes after the snapshot commit did not create GitHub Actions runs.
workflow_dispatch lets those checks be started on this branch.

Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
Declare a placeholder Env, build Think hooks for the user on that
call, and split the Think install command across package managers.
Link guard_action to the Python SDK reference, record why Playwright
dispatch stays open to any branch, and drop the deleted Think adapter
branch link. Pin SHAs stay the same.

Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
The guide install block is now package-manager tabs with the git pin
on its own line, and the deleted adapter branch link is gone.

Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
The dedicated /guards/google-adk-py/ page was folded into the tabbed
google-adk guide; these snapshots were left untracked by that rename.

Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
The rebase conflict kept PR-era quick-start snapshots that predate
main's Microsoft Agent Framework Go tab. Replace both light and dark
linux snapshots with the CI actuals from the failed shard.

Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
@cursor

cursor Bot commented Sep 22, 2026

Copy link
Copy Markdown

Post-rebase re-verify

  • HEAD: b3502b62 (rebased onto main 76554db6; prior HEAD 272d716f + quick-start snapshot refresh from CI actuals)
  • Content: PASS
    • Official Cloudflare Think mark (Simple Icons), not a generic cloud glyph
    • No separate /guards/google-adk-py/; Python is language tabs on /guards/google-adk/ (Strands pattern)
    • Cloudflare Think stays /guards/cloudflare-think/
    • Redirects google-adk-py → google-adk (guards + sdk get-started)
    • Actor/inputs teaching on merged ADK page
    • Pins a71970dc (ADK) / b06e584d (Think) unchanged
    • Prior review fixes present (Env placeholder, per-request hooks, split install, guard_action link, workflow_dispatch note)
  • CI on b3502b62: all green — Playwright (build + shards 1–4 + merge-reports), typos, Socket, Vercel
  • Note: 272d716f Playwright failed only on intentional UI (guards-quick-start light/dark); snapshots refreshed in b3502b62
  • Mergeability: MERGEABLE / CLEAN (not merging)

@cursor

cursor Bot commented Sep 22, 2026

Copy link
Copy Markdown

Final confirm after rebase

  • HEAD: b3502b62 (snapshot refresh after rebase 272d716f onto main 76554db6)
  • Content: PASS
  • CI: green (Playwright build/shards/merge-reports, typos, Socket×2, Vercel)
  • Mergeability: MERGEABLE / CLEAN (not merging)

@davidmytton
davidmytton merged commit 9209006 into main Sep 22, 2026
11 checks passed
@arcjet-review arcjet-review Bot removed the ready Ready to merge label Sep 22, 2026
@davidmytton
davidmytton deleted the david/cursor/guard-adk-py-think-docs-632e branch September 22, 2026 13:07

This branch was successfully deployed

1 active deployment
Preview — b3502b62 Deployed Sep 22, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants