This commit is contained in:
beo3000 2026-03-17 17:01:32 +01:00
parent af96f7c234
commit d6519f7f73
3 changed files with 26 additions and 8 deletions

View File

@ -50,10 +50,28 @@
], ],
"defaultMode": "acceptEdits" "defaultMode": "acceptEdits"
}, },
"model": "sonnet",
"enabledPlugins": {
"csharp-lsp@claude-plugins-official": true,
"frontend-design@claude-plugins-official": true,
"superpowers@claude-plugins-official": true,
"code-review@claude-plugins-official": true,
"code-simplifier@claude-plugins-official": true,
"playwright@claude-plugins-official": true,
"claude-md-management@claude-plugins-official": true
},
"language": "German",
"alwaysThinkingEnabled": true,
"effortLevel": "low",
"mcpServers": { "mcpServers": {
"playwright": { "playwright": {
"command": "npx", "command": "npx",
"args": ["@playwright/mcp@latest", "--browser", "chromium", "--headed"] "args": [
"@playwright/mcp@latest",
"--browser",
"chromium",
"--headed"
]
}, },
"postgres": { "postgres": {
"command": "npx", "command": "npx",
@ -63,11 +81,5 @@
"postgresql://krah:krah_dev_pw@localhost:5432/krah_prodb" "postgresql://krah:krah_dev_pw@localhost:5432/krah_prodb"
] ]
} }
}, }
"enabledPlugins": {
"csharp-lsp@claude-plugins-official": true
},
"alwaysThinkingEnabled": true,
"effortLevel": "low",
"model": "sonnet"
} }

View File

@ -29,6 +29,9 @@
- `ILongRunningJobService` is for services like AD sync, Hydra — they have dedicated JobType enum entries - `ILongRunningJobService` is for services like AD sync, Hydra — they have dedicated JobType enum entries
## Naming
- App is called **"KRAH-App"** internally (not "KBS" — that's only the technical project name)
## HydraArchiveData ## HydraArchiveData
- Entity: HydraArchiveReloadId, AcquisitionTime, PdatrefPparamDatasupId, DecimalValue - Entity: HydraArchiveReloadId, AcquisitionTime, PdatrefPparamDatasupId, DecimalValue
- Covering index: (HydraArchiveReloadId, AcquisitionTime, PdatrefPparamDatasupId) - Covering index: (HydraArchiveReloadId, AcquisitionTime, PdatrefPparamDatasupId)

View File

@ -73,6 +73,9 @@ for (var i = 0; i < itResult.RowCount; i++) {
- Inherits `GrpcClientBase<ISapOrderService>` - Inherits `GrpcClientBase<ISapOrderService>`
- Constructor: `(GrpcChannel, ServiceRegistry, IServiceScopeFactory)` - Constructor: `(GrpcChannel, ServiceRegistry, IServiceScopeFactory)`
- Methods: `return Client?.MethodName(request);` - Methods: `return Client?.MethodName(request);`
- **NOT registered in DI** — resolved via `ServiceRegistry.GetClient<T>()` (async)
- To use in a service: inject `ServiceRegistry`, then `var client = await serviceRegistry.GetClient<SapListServiceClient>()`
- Never inject a `*Client` class directly via constructor DI — it will throw at startup
### Microservice → Server (IApiComposer callback) ### Microservice → Server (IApiComposer callback)
- **Interface:** `GrpcProtos/GrpcServices/Contracts/Server/IApiComposer.cs` - **Interface:** `GrpcProtos/GrpcServices/Contracts/Server/IApiComposer.cs`