feat: complete HTTP Ambient Platform SDK for Go and Python#623
feat: complete HTTP Ambient Platform SDK for Go and Python#623markturansky wants to merge 3 commits intoambient-code:mainfrom
Conversation
│ - Transform SDK from Kubernetes-dependent to pure HTTP client architecture │ - Add comprehensive Go SDK with HTTP client, types, and working examples │ - Add comprehensive Python SDK with identical functionality and test automation │ - Focus on AgenticSession management via REST API (/v1/sessions) │ - Include Bearer token + X-Ambient-Project header authentication │ - Add automated testing scripts with environment validation │ - Update OpenAPI specification to match HTTP implementation │ - Successfully tested against live OpenShift deployment with Vertex AI │ │ 🤖 Generated with [Claude Code](https://claude.ai/code) │ Co-Authored-By: Claude <noreply@anthropic.com>
This comment has been minimized.
This comment has been minimized.
|
This is the output of the test script in python-sdk: |
- Correct Go module path to match monorepo structure - Add client-side validation for tokens, requests, and repository URLs - Remove unnecessary K8s dependencies from Go SDK examples - Update production kustomization overlay 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
|
Successful run of go-sdk |
Claude Code ReviewSummaryThis PR introduces comprehensive HTTP-first SDKs for Go and Python, enabling external developers to interact with the Ambient Platform without Kubernetes dependencies. The implementation is well-structured with proper input validation, error handling, and automated testing. However, there are several security and code quality issues that should be addressed before merge. Issues by Severity🚫 Blocker IssuesNone - No blocking issues that prevent merge, but critical issues below should be addressed. 🔴 Critical Issues
🟡 Major Issues
🔵 Minor Issues
Positive Highlights
RecommendationsHigh Priority (Before Merge)
Medium Priority (Soon After Merge)
Low Priority (Future Enhancement)
Approval RecommendationConditional Approve - The SDK implementation is solid, but the critical security issues (#1, #2) and usability issues (#3, #6, #12) should be fixed before merge. Once those are addressed, this is ready to ship. Review Methodology: Reviewed against CLAUDE.md standards, security-standards.md, error-handling.md, and k8s-client-usage.md patterns. Checked for token security, error handling, type safety, and RBAC compliance. 🔍 View AI decision process (logs available for 90 days) 📋 View memory system files loaded (click to expand)What Amber Loaded for Code ReviewAmber automatically loaded these repository standards from the memory system:
Impact: This review used your repository's specific code quality standards, security patterns, and best practices from the memory system (PRs #359, #360) - not just generic code review guidelines. |
- Introduce SecureToken type with slog.LogValuer for automatic log redaction - Add comprehensive token format validation (OpenShift, JWT, GitHub) - Replace raw token strings with SecureToken throughout client - Add slog-based structured logging with sensitive-data sanitization - Harden error responses to avoid exposing raw API response bodies - Expand auth documentation in Go and Python SDK READMEs 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
Claude Code ReviewSummaryThis PR introduces a comprehensive HTTP-first SDK for the Ambient Platform in both Go and Python, eliminating Kubernetes dependencies for external developers. The implementation demonstrates excellent security practices, particularly around token handling and input validation. The code follows established patterns well, with strong type safety and comprehensive error handling. Overall Assessment: APPROVE ✅ - High-quality implementation with minor suggestions for improvement. Issues by Severity🚫 Blocker IssuesNone - No blocking issues found. 🔴 Critical IssuesNone - No critical issues that must be fixed before merge. 🟡 Major Issues1. Go SDK: Inconsistent Error Handling Pattern
2. Python SDK: Missing Token Validation in Constructor
3. Missing Go Module Path Correction
🔵 Minor Issues1. Go SDK: Redundant Token Sanitization
2. Python SDK: Hardcoded Model List
3. Missing Integration Tests
4. Go SDK: Missing Context Cancellation Check
5. Python SDK: Missing Type Hints for
Positive Highlights✨ Excellent Security Practices
🎯 Follows Repository Patterns
📚 Comprehensive Documentation
🛡️ Defense-in-Depth Security
RecommendationsPriority 1 (Before Merge)
Priority 2 (Follow-up PRs)
Priority 3 (Future Enhancements)
Checklist Review (Backend Standards)Comparing against
Final VerdictAPPROVE ✅ This is a well-crafted SDK implementation that demonstrates strong security practices and follows repository patterns. The token sanitization approach is exemplary and could serve as a reference for other projects. The few issues identified are minor and can be addressed in follow-up commits. Suggested merge strategy:
Total estimated fixes: ~30 minutes Great work on this implementation! 🎉 The security-first approach and comprehensive validation logic are exactly what this platform needs for external integrations. 🔍 View AI decision process (logs available for 90 days) 📋 View memory system files loaded (click to expand)What Amber Loaded for Code ReviewAmber automatically loaded these repository standards from the memory system:
Impact: This review used your repository's specific code quality standards, security patterns, and best practices from the memory system (PRs #359, #360) - not just generic code review guidelines. |
|
@jeremyeder @EmilienM PTAL the AI reviewer gave a robotic thumbs up |
│ - Transform SDK from Kubernetes-dependent to pure HTTP client architecture
│ - Add comprehensive Go SDK with HTTP client, types, and working examples
│ - Add comprehensive Python SDK with identical functionality and test automation
│ - Focus on AgenticSession management via REST API (/v1/sessions)
│ - Include Bearer token + X-Ambient-Project header authentication
│ - Add automated testing scripts with environment validation
│ - Update OpenAPI specification to match HTTP implementation
│ - Successfully tested against live OpenShift deployment with Vertex AI
│
│ 🤖 Generated with Claude Code
│ Co-Authored-By: Claude noreply@anthropic.com
Closes #556