Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
58dd486
feat: Python SDK 2.5.0 — Research Background Mode
tyler5673 Jul 20, 2026
09b252a
refactor: ponytail shrinks + P2 fixes for research_helpers
tyler5673 Jul 21, 2026
aa6d154
docs: fix 2.5.0 doc inaccuracies (terminal events, research_and_wait …
tyler5673 Jul 22, 2026
cc43e45
fix: sync research_and_wait now enforces total wall-clock deadline (m…
tyler5673 Jul 22, 2026
e000a04
test: fix Go mock comment (four->six terminal events) + add ok-but-ge…
tyler5673 Jul 22, 2026
6ed04e8
feat: add frontier research effort tier + streaming example
tyler5673 Jul 23, 2026
b89039a
feat: auto-adjust research_and_wait timeout for frontier + surface po…
tyler5673 Jul 23, 2026
edb2aeb
feat: add FinanceResearchEffort.LITE + fix PR review findings
tyler5673 Jul 23, 2026
c03c183
test: add live tests for frontier research + finance lite effort
tyler5673 Jul 23, 2026
19464c0
fix: bound async SSE per-read timeout to timeout_s (match sync variant)
tyler5673 Jul 23, 2026
039fee1
fix: distinguish early-break from exhausted re-poll in _resolve_from_…
tyler5673 Jul 23, 2026
714d9b8
fix: align sync/async stream timeout_ms handling + add async repoll t…
tyler5673 Jul 23, 2026
7f7a0bd
fix: stream-open failure falls back to polling + cap per-read timeout…
tyler5673 Jul 23, 2026
ee28a4c
fix: sync research_and_wait falls back to polling on mid-stream errors
tyler5673 Jul 23, 2026
330028d
fix: narrow fallback to httpx.TransportError + decouple SSE per-read …
tyler5673 Jul 23, 2026
c1ef2e1
fix: close stream before fallback poll in mid-stream TransportError h…
tyler5673 Jul 23, 2026
9a363a1
docs: fix sync docstring to drop stale timeout_ms parenthetical
tyler5673 Jul 23, 2026
e61f9b0
ci: add Droid Auto Review workflow for automated PR reviews
tyler5673 Jul 23, 2026
cfaa0ae
ci: remove Claude Code review workflow in favor of Droid Auto Review
tyler5673 Jul 23, 2026
926c158
fix: sync Speakeasy version files to 2.5.0
tyler5673 Jul 23, 2026
704e26e
chore: remove .speakeasy config and generate-sdk workflow
tyler5673 Jul 23, 2026
cefad57
fix: address Droid Auto Review feedback (P0/P1/P2)
tyler5673 Jul 23, 2026
44de8e2
docs: fix TaskDetail/TaskResponse timestamp types (date -> datetime)
tyler5673 Jul 23, 2026
2ea4ed8
docs: add frontier to ResearchRequest research_effort field docs
tyler5673 Jul 23, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 0 additions & 60 deletions .github/workflows/claude.yml

This file was deleted.

84 changes: 84 additions & 0 deletions .github/workflows/droid-review.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
name: Droid Auto Review

on:
pull_request:
types: [opened, ready_for_review, reopened, synchronize]
workflow_dispatch:
inputs:
pr_number:
description: "Pull request number to review (for external contributors)"
required: true
type: number

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || inputs.pr_number }}
cancel-in-progress: true

jobs:
droid-review:
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
issues: write
id-token: write
actions: read
steps:
- name: Check if internal contributor
id: check_internal
if: github.event_name == 'pull_request'
run: |
RESPONSE=$(gh api repos/${{ github.repository }}/collaborators/${{ github.event.pull_request.user.login }}/permission 2>/dev/null || echo '{"permission":"none"}')
PERMISSION=$(echo "$RESPONSE" | jq -r '.permission')
echo "Author permission: $PERMISSION"

if [[ "$PERMISSION" != "admin" && "$PERMISSION" != "maintain" && "$PERMISSION" != "write" ]]; then
echo "Skipping auto-review for external contributor (permission: $PERMISSION)"
echo "Use 'Actions > Droid Auto Review > Run workflow' to manually trigger review"
echo "is_internal=false" >> "$GITHUB_OUTPUT"
exit 0
fi

echo "Author is internal contributor, proceeding with review"
echo "is_internal=true" >> "$GITHUB_OUTPUT"
env:
GH_TOKEN: ${{ github.token }}

- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 1

- name: Run Droid Auto Review (internal)
if: github.event_name == 'pull_request' && steps.check_internal.outputs.is_internal == 'true'
uses: Factory-AI/droid-action@v5
Comment thread
tyler5673 marked this conversation as resolved.
with:
factory_api_key: ${{ secrets.FACTORY_API_KEY }}
automatic_review: true
automatic_security_review: true
allowed_bots: "claude[bot],github-advanced-security[bot]"

- name: Checkout PR branch
if: github.event_name == 'workflow_dispatch'
run: gh pr checkout "$PR_NUMBER"
env:
PR_NUMBER: ${{ inputs.pr_number }}
GH_TOKEN: ${{ github.token }}

- name: Install Droid CLI
if: github.event_name == 'workflow_dispatch'
run: |
# Official Factory CLI installer from app.factory.ai
# TODO: pin to a specific version with checksum verification
curl --retry 5 --retry-delay 2 --retry-all-errors -fsSL https://app.factory.ai/cli | sh
Comment thread
tyler5673 marked this conversation as resolved.
echo "$HOME/.local/bin" >> "$GITHUB_PATH"

- name: Run Droid Review (external)
if: github.event_name == 'workflow_dispatch'
run: |
droid exec --auto high "/review $GITHUB_REPOSITORY/pull/$PR_NUMBER"
env:
PR_NUMBER: ${{ inputs.pr_number }}
GITHUB_REPOSITORY: ${{ github.repository }}
FACTORY_API_KEY: ${{ secrets.FACTORY_API_KEY }}
GITHUB_TOKEN: ${{ github.token }}
167 changes: 0 additions & 167 deletions .github/workflows/generate-sdk.yml

This file was deleted.

Loading
Loading