Summary
There are 11 lint warnings remaining in @open-forge/pipeline after getting CI to green. These are all @typescript-eslint/no-non-null-assertion warnings that should be addressed with proper null checks.
Affected Files
src/lib/helper/drift.ts (5 warnings)
- Lines 77, 78, 79, 80, 81 — non-null assertions in regex match result destructuring
tests/metrics-logger.test.ts (3 warnings)
- Lines 147, 161, 181 — non-null assertions in test assertions
tests/roadmap-task-marking.test.ts (3 warnings)
- Lines 125, 165, 252 — non-null assertions in test assertions
What was done to get CI green
The following fixes were applied in the feat/import-pipeline PR:
- tsconfig.spec.json — overrode
rootDir to "." so test files are no longer outside rootDir
- types.test.ts — added missing
rolledBackTo and attemptHashes fields to DriftSentinel test object
- schema.ts — extracted magic numbers (
300_000, 600_000) to named constants
- manager.ts — replaced non-null assertion with proper null check
- vitest.config.ts — extracted magic numbers to named constants
- scanner.ts — rebuilt regex dynamically to avoid
no-misleading-character-class error
- classifier.ts → classifyTask.ts — renamed file, converted to options object param
- generator.ts → generateRoadmap.ts — renamed file
- parallel.ts → detectParallelGroups.ts — renamed file, extracted helpers to reduce function length/complexity/nesting
- parser.ts — extracted
findTitle, extractOverview, splitPhaseBlocks helpers from parseRoadmap to reduce function length/complexity
Acceptance Criteria
Summary
There are 11 lint warnings remaining in
@open-forge/pipelineafter getting CI to green. These are all@typescript-eslint/no-non-null-assertionwarnings that should be addressed with proper null checks.Affected Files
src/lib/helper/drift.ts(5 warnings)tests/metrics-logger.test.ts(3 warnings)tests/roadmap-task-marking.test.ts(3 warnings)What was done to get CI green
The following fixes were applied in the
feat/import-pipelinePR:rootDirto"."so test files are no longer outside rootDirrolledBackToandattemptHashesfields toDriftSentineltest object300_000,600_000) to named constantsno-misleading-character-classerrorfindTitle,extractOverview,splitPhaseBlockshelpers fromparseRoadmapto reduce function length/complexityAcceptance Criteria
@typescript-eslint/no-non-null-assertionwarnings resolvednx run @open-forge/pipeline:lintproduces 0 warnings