You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Quality cleanups from a 4-angle review of the composite-action diff:
- report-common.mjs: add buildReportContext(context); both report wrappers
(format-report, jscpd-report) now call it instead of hand-building the identical
owner/repo/sha/cwd/runId/commit object.
- jscpd-report.mjs: buildJscpdMessage takes the pre-computed `header` (like
generateReport) instead of recomputing getReportHeader internally; wrapper passes it.
- format-args.mjs: collapse buildDefaultOptions' 4 near-identical blocks to a base +
spread (only the two real overrides remain); simplify checkIsDryRun's granular check
via a `dry()` helper; drop the unused `config` field from planFormat's return; make
internal-only buildArgs/FormatType module-private.
- comment.mjs: run the independent listComments + getAuthenticated calls with
Promise.all (getAuthenticated still degrades to undefined on 403).
- action.yml: write the push stderr log to $RUNNER_TEMP instead of the repo tree, and
drop the duplicate ::error:: annotation on exec failure (per-command one remains).
Skipped (documented as follow-ups): unifying the jscpd config resolution that happens
in both the shell runner and the JS threshold read (structural; risky without an e2e
run), and the github-script import boilerplate (explicit per-step is clearer).
biome check + 33 node:test green; wrappers smoke-tested; bash -n + YAML clean.
Claude-Session: https://claude.ai/code/session_01JxEe85CyGm5rCeoLFdUZed
0 commit comments