Add per-agent context injection limits and selection mode
Follow up to:
#3582504
**Description:**
The `ai_context.agents` config is part of the stable API surface. It currently stores scope subscriptions and inclusion overrides, but not per-agent injection limits. `AiContextRequestFactory::fromAgent()` always uses `max_global_items`, `max_items`, and `max_tokens` from the general settings, and hardcoded `minimal` selection mode.
**Scope:**
- Add optional `max_global_items`, `max_items`, `max_tokens`, and `selection_mode` keys to `ai_context.agents` config schema.
- Add fields to the agent context configuration form.
- Update `AiContextRequestFactory::fromAgent()` to use per-agent values when present and fall back to general default settings otherwise.
- Ensure invalid/empty values fall back safely.
- Add tests for schema, form persistence, and request factory behavior.
**Acceptance criteria:**
- Each agent can override max global items, max items, max tokens, and selection mode.
- Existing agent config without these keys continues to work.
- General default settings remain the fallback.
- Tests prove per-agent overrides affect built `AiContextRequest` objects.
**AI usage disclosures:**
- [x] AI Assisted Issue
- [x] AI Generated Code
issue