fix(ci): handle successful docs sync transport errors#1415
fix(ci): handle successful docs sync transport errors#1415parteeksingh24 merged 2 commits intomainfrom
Conversation
|
The latest Agentuity deployment details.
|
|
Warning Rate limit exceeded
To keep reviews running without waiting, you can enable usage-based add-on for your organization. This allows additional reviews beyond the hourly cap. Account admins can enable it under billing. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe send-webhook.sh script adds error recovery logic that attempts to parse the final line of curl output as JSON when curl fails. If the output contains Changes
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Warning Review ran into problems🔥 ProblemsErrors were encountered while retrieving linked issues. Errors (1)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@apps/docs/bin/send-webhook.sh`:
- Line 72: The current success check only accepts responses where response_json
has both "status":"ok" and "stats", which is too narrow; update the jq predicate
used on response_json (the condition that currently inspects .status and .stats)
to consider other valid success shapes — at minimum treat {"success": true} as
success and accept {"status":"ok"} even when stats is absent; modify the jq
expression used in the if statement that reads response_json so it returns true
if .success == true OR .status == "ok" (with or without .stats) to match
existing repo patterns.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 115812e9-2364-4088-920e-e4584fbc33b1
📒 Files selected for processing (1)
apps/docs/bin/send-webhook.sh
📜 Review details
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (15)
- GitHub Check: Standalone Agent Test
- GitHub Check: SDK Integration Test Suite
- GitHub Check: Storage CLI Tests
- GitHub Check: Playwright E2E Smoke Test
- GitHub Check: Template Integration Tests
- GitHub Check: Postgres SSL Integration Test
- GitHub Check: Sandbox CLI Tests
- GitHub Check: Build
- GitHub Check: Framework Integration Tests (TanStack & Next.js)
- GitHub Check: Queue CLI Tests
- GitHub Check: Pack & Upload
- GitHub Check: Queue SDK Tests
- GitHub Check: Cloud Deployment Tests
- GitHub Check: Package Installation & Usage Test
- GitHub Check: Agentuity Deployment
| exit 0 | ||
| else | ||
| response_json=$(printf '%s\n' "$response" | tail -n 1) | ||
| if [ -n "$response_json" ] && echo "$response_json" | jq -e '.status == "ok" and .stats' >/dev/null 2>&1; then |
There was a problem hiding this comment.
Recovery success predicate is too narrow and can miss valid successful responses.
Line 72 only treats {"status":"ok","stats":...} as success. Existing repo patterns include {"success": true} (packages/auth/src/agentuity/server.ts, Line 465-477), and webhook delivery types don’t require stats (packages/core/src/services/webhook/types.ts, Line 100-125). This can still fail CI after a successful server-side processing.
Proposed fix
- if [ -n "$response_json" ] && echo "$response_json" | jq -e '.status == "ok" and .stats' >/dev/null 2>&1; then
+ if [ -n "$response_json" ] && echo "$response_json" | jq -e '(.status == "ok" and (.stats != null)) or (.success == true)' >/dev/null 2>&1; then📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| if [ -n "$response_json" ] && echo "$response_json" | jq -e '.status == "ok" and .stats' >/dev/null 2>&1; then | |
| if [ -n "$response_json" ] && echo "$response_json" | jq -e '(.status == "ok" and (.stats != null)) or (.success == true)' >/dev/null 2>&1; then |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@apps/docs/bin/send-webhook.sh` at line 72, The current success check only
accepts responses where response_json has both "status":"ok" and "stats", which
is too narrow; update the jq predicate used on response_json (the condition that
currently inspects .status and .stats) to consider other valid success shapes —
at minimum treat {"success": true} as success and accept {"status":"ok"} even
when stats is absent; modify the jq expression used in the if statement that
reads response_json so it returns true if .success == true OR .status == "ok"
(with or without .stats) to match existing repo patterns.
📦 Canary Packages Publishedversion: PackagesInstallAdd to your {
"dependencies": {
"@agentuity/auth": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-auth-2.0.9-77a3154.tgz",
"@agentuity/opencode": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-opencode-2.0.9-77a3154.tgz",
"@agentuity/runtime": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-runtime-2.0.9-77a3154.tgz",
"@agentuity/cli": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-cli-2.0.9-77a3154.tgz",
"@agentuity/react": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-react-2.0.9-77a3154.tgz",
"@agentuity/schedule": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-schedule-2.0.9-77a3154.tgz",
"@agentuity/sandbox": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-sandbox-2.0.9-77a3154.tgz",
"@agentuity/email": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-email-2.0.9-77a3154.tgz",
"@agentuity/server": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-server-2.0.9-77a3154.tgz",
"@agentuity/drizzle": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-drizzle-2.0.9-77a3154.tgz",
"@agentuity/claude-code": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-claude-code-2.0.9-77a3154.tgz",
"@agentuity/core": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-core-2.0.9-77a3154.tgz",
"@agentuity/migrate": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-migrate-2.0.9-77a3154.tgz",
"@agentuity/evals": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-evals-2.0.9-77a3154.tgz",
"@agentuity/task": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-task-2.0.9-77a3154.tgz",
"@agentuity/coder": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-coder-2.0.9-77a3154.tgz",
"@agentuity/keyvalue": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-keyvalue-2.0.9-77a3154.tgz",
"@agentuity/workbench": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-workbench-2.0.9-77a3154.tgz",
"@agentuity/schema": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-schema-2.0.9-77a3154.tgz",
"@agentuity/db": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-db-2.0.9-77a3154.tgz",
"@agentuity/webhook": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-webhook-2.0.9-77a3154.tgz",
"@agentuity/vector": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-vector-2.0.9-77a3154.tgz",
"@agentuity/postgres": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-postgres-2.0.9-77a3154.tgz",
"@agentuity/queue": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-queue-2.0.9-77a3154.tgz",
"@agentuity/frontend": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-frontend-2.0.9-77a3154.tgz",
"@agentuity/coder-tui": "https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-coder-tui-2.0.9-77a3154.tgz"
}
}Or install directly: bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-auth-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-opencode-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-runtime-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-cli-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-react-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-schedule-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-sandbox-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-email-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-server-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-drizzle-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-claude-code-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-core-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-migrate-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-evals-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-task-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-coder-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-keyvalue-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-workbench-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-schema-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-db-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-webhook-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-vector-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-postgres-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-queue-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-frontend-2.0.9-77a3154.tgz
bun add https://agentuity-sdk-objects.t3.storageapi.dev/npm/2.0.9-77a3154/agentuity-coder-tui-2.0.9-77a3154.tgz |
Brings in 10 commits from main on top of the v3 branch: - More perf improvements (#1416) - Relax stream namespace timestamp fields (#1406) - feat: add per-sandbox paused timeout support (#1392) - fix(ci): handle successful docs sync transport errors (#1415) - Update stale docs (#1404) - feat(docs): add Pagefind keyword search (#1412) - fix(ci): run release-next tests with test env (#1414) - Add coder Hub rpc_ready protocol event (#1413) - fix(docs): improve Ask AI query handling (#1411) - Move default template from agent pattern to route-only (#1386) Conflict resolutions: Modify/delete (deleted on v3, kept deleted — main's edits dropped): - packages/cli/src/cmd/build/vite/vite-asset-server-config.ts - packages/runtime/src/middleware.ts - packages/runtime/src/services/sandbox/http.ts - templates/_base/src/api/index.ts - templates/default/package.overlay.json - templates/default/src/api/index.ts - templates/default/src/web/App.tsx File location (apps/docs -> docs rename from v3): - docs/src/web/lib/pagefind-search.ts (placed at v3 path) Content: - .github/workflows/release-next.yaml — deduped the NODE_ENV env block on the Unit tests step (both sides added it; kept main's placement before run:); kept v3's trailing newline. - docs/src/api/streaming/route.ts — kept v3's defensive runtime type narrowing for body.model (added by CodeRabbit feedback) but adopted main's default model name 'gpt-5.4-mini' to match the rest of the docs demo apps. - bun.lock — regenerated from the merged package manifests.
Summary by CodeRabbit