Only pass wrapper defaultSettingSources when project config was restored from base
🏠 Remote-Dev: homespace
This commit is contained in:
parent
044a1036f6
commit
b6dac6f121
@ -63,7 +63,7 @@ inputs:
|
|||||||
required: false
|
required: false
|
||||||
default: ""
|
default: ""
|
||||||
setting_sources:
|
setting_sources:
|
||||||
description: "Comma-separated list of setting sources to load (user, project, local). When unset, the action applies 'user,project,local' at runtime — project settings are safe here because .claude/ is restored from the PR base branch before execution. Set to 'user' to ignore in-repo settings entirely."
|
description: "Comma-separated list of setting sources to load (user, project, local). When unset, the action applies 'user,project,local' at runtime for PR contexts where .claude/ is restored from the base branch; for other contexts it applies the same event-gated default as base-action. Set to 'user' to ignore in-repo settings entirely."
|
||||||
required: false
|
required: false
|
||||||
default: ""
|
default: ""
|
||||||
|
|
||||||
|
|||||||
@ -241,6 +241,7 @@ async function run() {
|
|||||||
// lacks base.ref, so we fall back to the mode-provided value — tag mode
|
// lacks base.ref, so we fall back to the mode-provided value — tag mode
|
||||||
// fetches it from GraphQL; agent mode on issue_comment is an edge case
|
// fetches it from GraphQL; agent mode on issue_comment is an edge case
|
||||||
// that at worst restores from the wrong trusted branch (still secure).
|
// that at worst restores from the wrong trusted branch (still secure).
|
||||||
|
let configRestoredFromBase = false;
|
||||||
if (isEntityContext(context) && context.isPR) {
|
if (isEntityContext(context) && context.isPR) {
|
||||||
let restoreBase = baseBranch;
|
let restoreBase = baseBranch;
|
||||||
if (
|
if (
|
||||||
@ -253,6 +254,7 @@ async function run() {
|
|||||||
}
|
}
|
||||||
if (restoreBase) {
|
if (restoreBase) {
|
||||||
restoreConfigFromBase(restoreBase);
|
restoreConfigFromBase(restoreBase);
|
||||||
|
configRestoredFromBase = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -279,7 +281,12 @@ async function run() {
|
|||||||
pathToClaudeCodeExecutable: claudeExecutable,
|
pathToClaudeCodeExecutable: claudeExecutable,
|
||||||
showFullOutput: process.env.INPUT_SHOW_FULL_OUTPUT,
|
showFullOutput: process.env.INPUT_SHOW_FULL_OUTPUT,
|
||||||
settingSources: process.env.INPUT_SETTING_SOURCES,
|
settingSources: process.env.INPUT_SETTING_SOURCES,
|
||||||
defaultSettingSources: ["user", "project", "local"],
|
// Only assert that project/local config is safe to load when it was actually
|
||||||
|
// restored from the base branch above. Otherwise leave undefined so
|
||||||
|
// parseSdkOptions applies its event-gated default.
|
||||||
|
defaultSettingSources: configRestoredFromBase
|
||||||
|
? ["user", "project", "local"]
|
||||||
|
: undefined,
|
||||||
});
|
});
|
||||||
|
|
||||||
claudeSuccess = claudeResult.conclusion === "success";
|
claudeSuccess = claudeResult.conclusion === "success";
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user