Skip to content

chore: describe eslint disables and type the concurrency result buffer - #55

Merged
luoxuanzao merged 4 commits into
mainfrom
chore/review-finding-cleanup
Sep 1, 2026
Merged

chore: describe eslint disables and type the concurrency result buffer#55
luoxuanzao merged 4 commits into
mainfrom
chore/review-finding-cleanup

Conversation

@luoxuanzao

@luoxuanzao luoxuanzao commented Sep 1, 2026

Copy link
Copy Markdown
Member

Summary

  • Add the required -- descriptions to the two no-control-regex eslint-disable directives in the login service (qoder-login-service.ts:46/48), which the type-aware review on main reported as an Error ("Unexpected undescribed directive comment").
  • mapWithConcurrency now allocates its result buffer with new Array<R>() instead of the untyped new Array() (any[]), clearing the @typescript-eslint/no-unsafe-assignment warning at map-with-concurrency.ts:15.
  • Document the custom-spawn double assertion with a described disable directive: it bridges ChildProcess's nullable streams to the SDK's non-nullable SpawnedProcess, a bridge TS cannot infer, so the assertion stays.
  • Drop the console-based timing diagnostics ([qoderian perf] lines): the review forbids disabling no-console, and the lines were a developer-only nicety. The diagnostics module and its two test files are removed and every measureAsync/measure/logElapsed call site is unwrapped back to the direct call; the actual performance work (parallel metadata reads, probes) stays.
  • Mirror no-console (allowing warn/error) and @typescript-eslint/no-unnecessary-type-assertion at warn for src in the local eslint config, keeping local lint aligned with the stricter GitHub review (and consuming the remaining custom-spawn directive locally).

Verification

  • npm run typecheck
  • npm run lint (clean: 0 errors, 0 warnings)
  • npm run test (full suite: 3486/3486 across 160 suites)
  • npm run build
  • npm run release:check — not run: no packaging/version changes
  • npm run audit:prod — not run: no dependency changes
  • Tested affected qodercli behavior against a real CLI when applicable — not applicable (comment/type/config/removal-only change)

Safety

  • No credentials, private vault content, internal URLs, or personal paths are included
  • User-visible changes are documented in CHANGELOG.md (none in this PR; CHANGELOG untouched)

luoxuanzao and others added 4 commits September 2, 2026 00:51
GitHub's type-aware review on main flagged two real nits: the
no-control-regex disable directives lacked the required descriptions,
and mapWithConcurrency allocated its result buffer as any[] via an
untyped new Array(). Add the -- descriptions and use new Array<R>().

Co-authored-by: QoderAI (Qwen 3.8 Max) <qoder_ai@qoder.com>
The stricter type-aware review on main also flags the perf diagnostic
console.info and the custom-spawn double assertion. Both are deliberate:
the [qoderian perf] lines are the first-turn timing feature's output,
and the assertion bridges ChildProcess's nullable streams to the SDK's
non-nullable SpawnedProcess. Describe them with disable directives so
the intent is explicit instead of silent.

Co-authored-by: QoderAI (Qwen 3.8 Max) <qoder_ai@qoder.com>
Enable no-console (allowing warn/error) and
@typescript-eslint/no-unnecessary-type-assertion at warn for src, so
the disable directives documenting the two deliberate patterns are
consumed locally instead of being reported as unused, and local lint
stays aligned with the stricter type-aware review on GitHub.

Co-authored-by: QoderAI (Qwen 3.8 Max) <qoder_ai@qoder.com>
The stricter review forbids disabling no-console, and the [qoderian
perf] console lines were a developer-only nicety. Remove the
diagnostics module, its tests, and unwrap every measureAsync/measure/
logElapsed call site back to the direct calls; the performance work
itself (parallel metadata reads, probes) stays.

Co-authored-by: QoderAI (Qwen 3.8 Max) <qoder_ai@qoder.com>
@luoxuanzao
luoxuanzao merged commit e8b62bf into main Sep 1, 2026
10 checks passed
@luoxuanzao
luoxuanzao deleted the chore/review-finding-cleanup branch September 1, 2026 17:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant