Conversation
rxolve
commented
Mar 2, 2026
- Add DEFAULT_MODEL constant in types.ts, replace hardcoded model strings across source and tests (claude-opus-4-6)
- Extract file-classifier.ts with isTestFile/isConfigFile/isSourceFile/ isSchemaFile, removing duplicate implementations from exclude-filter, base-framework, and analyzer
- Add CRITICAL_MODULE_PATTERN constant, replace 3 inline regex copies
- Add STRATEGY_THRESHOLDS constant, replace magic numbers in strategy-selector
- Add DEFAULT_MODEL constant in types.ts, replace hardcoded model strings across source and tests (claude-opus-4-6) - Extract file-classifier.ts with isTestFile/isConfigFile/isSourceFile/ isSchemaFile, removing duplicate implementations from exclude-filter, base-framework, and analyzer - Add CRITICAL_MODULE_PATTERN constant, replace 3 inline regex copies - Add STRATEGY_THRESHOLDS constant, replace magic numbers in strategy-selector Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
🤖 Dialectic PR ReviewFramework: vanilla Affected Areas: 🧪 Tests SummaryThis is a well-structured refactoring that consolidates duplicated file classification logic into a single source of truth and extracts magic numbers/strings into named constants. The model upgrade from claude-sonnet-4 to claude-opus-4-6 is a deliberate change. However, the consolidation introduces subtle behavioral regressions: the unified classifier merges two previously distinct classification lists (ExcludeFilter vs BaseFramework), widening the match criteria in both contexts. The most impactful change is that Issues🐛 Regex constructed from CRITICAL_MODULE_PATTERN.source produces incorrect patternFile: The expression Suggestion: Consider exporting the pattern source string as a constant (e.g., 🐛 Behavioral regression: configFile classification diverges between old ExcludeFilter and old BaseFrameworkFile: The new unified Suggestion: Either maintain separate classification lists for ExcludeFilter vs BaseFramework contexts, or explicitly verify that the unified superset is the intended behavior. At minimum, consider whether 🐛 Behavioral regression: isSchemaFile now matches '/migrations/' but old ExcludeFilter did notFile: The old Suggestion: Verify that matching migration files as schema changes in the analyzer context is intentional. If not, the analyzer should use the stricter regex pattern it had before, or Metadata
Powered by Dialectic PR Review |
Extract CRITICAL_MODULE_PATH string constant so both CRITICAL_MODULE_PATTERN and the smart-filter composite regex are built from the same source, avoiding brittle .source property access that could break with regex flag changes. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add model name to footer (e.g. "Generated by Claude Opus 4.6") - Add formatModelName() to convert model ID to display name - Localize flag labels to Korean (테스트 포함, 스키마, 설정만) - Change empty areas fallback from "—" to "기타" - Align STEP headers with original format (remove persona names) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
🤖 Dialectic PR ReviewFramework: vanilla Affected Areas: 🧪 Tests SummaryWell-structured refactoring that consolidates duplicated file classification logic into a single source of truth and extracts magic constants. The changes are largely positive. Three actionable issues were identified: (1) a subtle behavioral regression where Issues🐛 Stateful regex with global-like behavior used in
|