it0/it0_app/lib
hailin 3d626aebb5 feat(dingtalk): OAuth one-tap binding + voice tool + public Kong route
- DingTalk binding UX replaced with OAuth one-tap flow:
  - GET /api/v1/agent/channels/dingtalk/oauth/init returns OAuth URL
  - GET /api/v1/agent/channels/dingtalk/oauth/callback (public, no JWT)
    exchanges code+state for openId, saves binding, returns HTML page
  - oauthStates Map with 10-min TTL; state validated before exchange
- msg.senderId (openId) aligned with OAuth openId for consistent routing
- CODE_TTL_MS extended from 5→15 min (fallback code method preserved)
- Kong: dingtalk-oauth-public service declared before agent-service
  so callback path matches without JWT plugin
- Voice sessions: use stored session.systemPrompt + voice rules;
  allowedTools includes Bash so Claude can call internal APIs
- Flutter _DingTalkBindSheet: OAuth-first UX with code-based fallback
  phases: idle→loadingOAuth→waitingOAuth→success + polling every 2s
- docker-compose: IT0_BASE_URL env var for agent-service (redirect URI)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-08 09:09:00 -07:00
..
core feat(flutter): apply Inter font + add language picker in profile 2026-03-08 00:57:45 -08:00
features feat(dingtalk): OAuth one-tap binding + voice tool + public Kong route 2026-03-08 09:09:00 -07:00
l10n feat(flutter): add 4 general-purpose official agents to home page 2026-03-08 01:54:29 -08:00
app.dart feat(flutter): i18n体系(zh/zh_TW/en) + 智能体解聘功能 2026-03-08 00:05:55 -08:00
main.dart feat: add app upgrade system with self-hosted APK update support 2026-02-26 22:35:01 -08:00