PR 4b: Apply CA1822 static method modifiers + Gitea Actions secrets guidance

Completed DEBT-001 paydown (1pt) by making three pure-function methods static:
- ScheduleOccurrencePlanner.GetNextDueAt (no instance state accessed)
- PromotionGateEvaluator.Evaluate (evidence gate only, no mutations)
- EvaluationWindowPlanner.Plan (deterministic date calculation)

Changes:
- Added `static` modifier to three domain methods
- Updated call sites: ModelOperationsDispatcherJob, tests
- Removed unnecessary DI registrations (ModelOperationsModule)
- Eliminated instance creation overhead in tests

Test Results: 40/40 PASS (17 ModelOps + 18 SignalEngine + 5 Architecture)

Documentation:
- Updated TECH_DEBT_REGISTER.md: DEBT-001 Completed (PR 4b)
- Added Gitea Actions Secrets section to CLAUDE.md documenting:
  - KRX_API_KEY, OPENDART_API_KEY, KIS_API_KEY storage location
  - CI/CD usage pattern
  - Local dev guidance

Per AGENTS.md v16.0: Code changes are performance improvements, not suppressions.
Quarterly paydown: +1pt (target 4pts for 20% Q3 2026)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-08-02 05:59:01 +09:00
parent ac4ff5cd19
commit 6a31bc3737
11 changed files with 41 additions and 24 deletions
+7 -7
View File
@@ -8,9 +8,9 @@
| Status | Count | Total Impact |
|--------|-------|--------------|
| Backlog | 8 | 20 pts |
| Backlog | 7 | 19 pts |
| In Progress | 0 | 0 pts |
| Completed | 0 | 0 pts |
| Completed | 1 | 1 pt |
---
@@ -20,7 +20,7 @@
| ID | Category | Impact | Effort | Status | Notes | Owner | ADR |
|----|----------|--------|--------|--------|-------|-------|-----|
| DEBT-001 | CA1822 (static hints) | Low (1) | Low (1) | Backlog | Analyzer suggestions for instance methods that could be static. Not performance-critical; batch during refactors. | Team | - |
| DEBT-001 | CA1822 (static hints) | Low (1) | Low (1) | Completed | Applied `static` to GetNextDueAt, Evaluate, Plan methods; removed DI registrations. | @claude | PR 4b |
| DEBT-002 | CA1873 (array logging) | Low (1) | Low (1) | Backlog | Conditional array evaluation in logging. Low runtime impact; defer until performance profiling. | Team | - |
| DEBT-003 | CA1305 (culture) | Low (1) | Low (1) | Backlog | Locale-specific formatting. Accept as-is for Serilog; breaking change if fixed. | Team | - |
| DEBT-004 | CA1707 (test naming) | Low (1) | Low (1) | Backlog | xUnit underscores in test names. Convention; no fix needed. | Team | - |
@@ -47,12 +47,12 @@ Low Impact QUICK WINS MONITOR
(DEBT-001/002) (DEBT-003/004/005/006/008)
```
### Quick Wins — Q3 2026 (To Resolve)
### Quick Wins — Q3 2026 (In Progress)
**Rationale (per AGENTS.md v16.0 "Paydown Target: 20% quarterly"):**
- DEBT-001 (CA1822): static method hints — True performance benefit. Easy to fix with `static` modifier. **Target: PR 4c**
- DEBT-002 (CA1873): array logging — Avoid unnecessary array allocation in conditional log. Easy fix with guard check. **Target: PR 4d**
- Result: +2 pts resolved (4pts total for Q3 target) ✅
- DEBT-001 (CA1822): static method hints — Completed in PR 4b. Applied `static` to ScheduleOccurrencePlanner.GetNextDueAt, PromotionGateEvaluator.Evaluate, EvaluationWindowPlanner.Plan; removed unnecessary DI registrations (+1 pt).
- DEBT-002 (CA1873): array logging — Avoid unnecessary array allocation in conditional log. Easy fix with guard check. **Target: PR 4c**
- Current: +1 pt resolved; Target: +2 pts total (4pts for 20% Q3 target) ✅
### Batch During Feature Work
- ~~DEBT-001~~, ~~DEBT-002~~ — Moving to Quick Wins (PR 4 priority)