.agents/memory/2026-02-27-implementing-default-configuration-fixes.md

23 lines
1.7 KiB
Markdown

# 2026-02-27 Session Notes
## Implementing Default Configuration Fixes
Session began with a detailed implementation plan to fix Signet's ship defaults. The project currently ships with core features disabled (pipeline, graph, reranker, autonomous maintenance), leaving new users with a hollow product. Existing users who never explicitly configured these values are also running suboptimal defaults due to boolean resolution logic that hardcodes absent values to `false`.
## Plan Overview
The fix involves six coordinated changes across four files:
1. **memory-config.ts**: Update DEFAULT_PIPELINE_V2 constant to enable pipeline, graph, reranker, and autonomous features. Modify loadPipelineConfig to use `typeof` checks instead of `=== true` comparisons, respecting absent values and falling back to defaults while preserving explicit user choices.
2. **daemon.ts**: Add runtime auto-detection of extraction provider (claude, opencode, ollama fallback) after loading config.
3. **cli.ts**: Implement extraction provider auto-detection in setup wizard and write complete nested pipelineV2 config instead of minimal flat format.
4. **agent.yaml.template**: Add full documented pipelineV2 section with new defaults and document rehearsal_enabled option.
## Key Technical Details
A helper function `resolveBool(nested, flat, fallback)` will handle the three-tier resolution pattern for nested config with flat fallback keys. This preserves backward compatibility while enabling new defaults.
Verification includes typecheck, build, existing tests, and manual tests for: default activation when config is absent, explicit user choices being respected, and provider auto-detection working correctly.