Phase 2: .NET 10 backend core#1
Open
amtocbot-droid wants to merge 1 commit intousers/krk/20260315_initial_setupfrom
Open
Phase 2: .NET 10 backend core#1amtocbot-droid wants to merge 1 commit intousers/krk/20260315_initial_setupfrom
amtocbot-droid wants to merge 1 commit intousers/krk/20260315_initial_setupfrom
Conversation
Complete ASP.NET Core 10 Web API for AmtocBots Manager: Entities & Data: - AppDbContext with pgvector extension, AES-256 value converter for channel token encryption at rest, all EF Core entity configurations - Entities: BotInstance, ChannelConfig, ModelSwitchRule, TokenUsageRecord, KanbanBoard/Column/Card, ChatRoom/Member/Message, BotLearning, AppUser Services: - DockerService (Docker.DotNet): create/start/stop/remove OpenClaw containers, stats polling, config volume writing via busybox helper - OpenClawClient: typed HTTP client for /hooks/wake and /hooks/agent - OpenClawConfigBuilder: generates JSON5 config from DB state - TokenTracker: upserts daily token usage records per instance+model - ModelSwitchingService: evaluates threshold rules, switches model, rewrites config volume, restarts container - RedisMessageQueueService: LPUSH/BRPOP main queue + sorted-set delay queue - OllamaService: list models, pull, health, generate embeddings Controllers & Endpoints: - InstancesController: full CRUD + start/stop/restart/logs/config - ModelsController: available models, token usage, switch rules CRUD - KanbanController: boards/columns/cards + bot-webhook endpoint (API key auth) - ChatController: rooms, paginated messages, bot-message endpoint - WebhookController: receives token-usage and event callbacks from OpenClaw - ChannelEndpoints: GET/PUT channel configs, WhatsApp QR proxy - OllamaEndpoints: list/pull/status - HealthEndpoints: /api/health SignalR Hubs: InstanceHub, KanbanHub, ChatHub Background Services: - MetricsPollingService: Docker stats → InstanceHub every 5s - ModelSwitchScheduler: NCrontab + threshold evaluation every 1m - QueueRetryWorker: Redis queue retry with exponential backoff Program.cs: full DI registration, Keycloak JWT auth (role claims from realm_access.roles), CORS, SignalR, auto-migration on startup Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Test plan
docker compose up manager-db redisthendotnet run→ API starts, migrations runGET /api/healthreturns 200docker ps🤖 Generated with Claude Code