Skip to content

Commit fe15136

Browse files
justin808claude
andcommitted
fix: address PR review comments for workflow, runner, and cli
- Fix actions/checkout@v6 to @v4 (v6 does not exist) - Add clarifying comment about TERM trap race window in runner.rb - Remove always-true saveDir guard in --all-builds mode, add comments explaining applyDefaults guarantee and --output omission - Add cross-reference comment for duplicated validation block Co-Authored-By: Claude Opus 4.6 <[email protected]>
1 parent 8fa03fb commit fe15136

3 files changed

Lines changed: 7 additions & 8 deletions

File tree

.github/workflows/claude-code-review.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616

1717
steps:
1818
- name: Checkout repository
19-
uses: actions/checkout@v6
19+
uses: actions/checkout@v4
2020
with:
2121
fetch-depth: 1
2222

lib/shakapacker/runner.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -296,7 +296,8 @@ def run
296296
if child_pid
297297
Process.kill("TERM", child_pid)
298298
else
299-
raise SignalException, "TERM" # if there is no child_pid we never spawned the process and can quit as normal
299+
# Signal arrived before spawn completed; re-raise so the process exits normally.
300+
raise SignalException, "TERM"
300301
end
301302
rescue Errno::ESRCH
302303
nil

package/configExporter/cli.ts

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -712,13 +712,11 @@ async function runAllBuildsCommand(options: ExportOptions): Promise<number> {
712712
// Apply defaults
713713
const resolvedOptions = applyDefaults(options)
714714

715-
// Validate paths for security in all-builds mode
716-
if (resolvedOptions.saveDir) {
717-
// Validates for path traversal; throws on unsafe paths. Return value intentionally discarded.
718-
safeResolvePath(appRoot, resolvedOptions.saveDir)
719-
}
715+
// Validate paths for security in all-builds mode.
716+
// saveDir is always set by applyDefaults(); --output is not used in --all-builds mode.
717+
safeResolvePath(appRoot, resolvedOptions.saveDir!)
720718

721-
// Validate annotate/format combination in all-builds mode
719+
// Keep in sync with validation in run()
722720
if (resolvedOptions.annotate && resolvedOptions.format !== "yaml") {
723721
throw new Error(
724722
"Annotation requires YAML format. Use --no-annotate or --format=yaml."

0 commit comments

Comments
 (0)