- Rebased
feat/daytona-provisioningonto latest main (resolved otel version conflicts) - Added "Analyze with AI" menu item to SupportBundleRow (gated by
ai_support_bundle_analysisfeature flag) - Wired button to
POST /v3/supportbundle/:bundleId/agent/start - Renamed tables:
support_bundle_analysis→ai_support_bundle_analysis(+ bundle join table) - Moved SchemaHero schemas to correct path:
migrations/kustomize/schemas/mysql/ - Switched Creddy auth from vend tokens to OIDC (
client_credentialsflow)CREDDY_CLIENT_ID+CREDDY_CLIENT_SECRETreplaceCREDDY_AGENT_TOKEN- Token cached with 5min buffer, 401 clears cache
- Per-analysis Creddy agent creation via
POST /v1/admin/agents(4h TTL, github:read scope) - Fixed Creddy API paths:
/v1/credentials/{backend},/v1/admin/agents - Added
--oidc-issuerto creddy server startup - Fixed tailscale serve + MagicDNS approach:
- Creddy server: localhost:8400 + tailscale serve on 443
- ACL updated: port 443 allowed on
tag:agent-credentials - Agent sandboxes: bootstrap fixes /etc/resolv.conf (adds 100.100.100.100 first)
- Bootstrap updated for OIDC (curl-based, no creddy CLI needed)
- Removed creddy CLI from agent Dockerfile (OIDC via curl instead)
- Timestamped snapshot names so builds don't block running sandboxes
- Increased provision timeout to 10min, ExecuteCommand timeout to 5min
- Disabled cleanup temporarily for debugging
- Suppressed noisy ES consumer and EP cleanup logs
- Creddy OIDC auth works end-to-end from agent sandbox
- Tailscale connects, MagicDNS resolves after resolv.conf fix
- GitHub backend just configured on Creddy
- Need to test full bootstrap completion (bundle download + OpenClaw start)
CREDDY_SERVER_HOST=creddy-server-dev.tail1ed40.ts.netCREDDY_CLIENT_ID= vendor-api agent client IDCREDDY_CLIENT_SECRET= vendor-api agent client secretDAYTONA_API_KEY,DAYTONA_AGENT_SNAPSHOT= snapshot with timestamp
What got working:
- Full Creddy OIDC flow from agent sandbox: Tailscale → MagicDNS → HTTPS to Creddy → JWT → fetch credentials ✅
- Tailscale auth key from Creddy ✅
- Per-analysis Creddy agent creation ✅
- GitHub token from Creddy ✅ (after fixing POST vs GET, GitHub App installation, backend config)
- Bundle download hits ngrok (S3_EXTERNAL_ENDPOINT) ✅
What's blocked:
- Bundle download from sandbox fails — dev S3 (MinIO in colima cluster) not properly reachable via ngrok
S3_EXTERNAL_ENDPOINTparam added, usesparam.Get()notos.Getenv()- ngrok running at
s3-marc.ngrok.dev→s3.localhost:8000→ traefik → MinIO:9000 - 404 from ngrok — likely Host header mismatch (traefik routes by host)
- Try
ngrok http s3.localhost:8000 --host-header=s3.localhost:8000 - Or broader fix: S3_BROWSER_ENDPOINT also broken for browser uploads (same root issue)
- Consider: use R2 for bundle storage in prod, ngrok is dev-only workaround
Bootstrap script fixes still needed in snapshot:
- GitHub credential fetch must use POST not GET (fixed in repo, not yet in snapshot)
- Need to rebuild snapshot after fixing S3 download path
Cleanup still disabled — sandboxes not deleted on failure (for debugging)
Latest commit: 585e16a0a on feat/daytona-provisioning
feat/daytona-provisioningonreplicatedhq/vandoorfix/creddy-allow-443onreplicatedhq/replicated-tailscale