fix(worker): sanitize report model arg, fix multi-repo summary attribution and standup-weekday sentinel
This commit is contained in:
@@ -65,7 +65,11 @@ public sealed class WeekReportService : IWeekReportService
|
||||
else
|
||||
{
|
||||
var prompt = WeekReportPromptBuilder.Build(start, end, activity, notesByDay);
|
||||
var args = $"-p --output-format stream-json --verbose --permission-mode auto --model {model}";
|
||||
// Guard against argument injection via the model setting: model aliases/ids are
|
||||
// alphanumerics, dashes and dots only.
|
||||
var safeModel = new string(model.Where(c => char.IsLetterOrDigit(c) || c is '-' or '.').ToArray());
|
||||
if (safeModel.Length == 0) safeModel = "sonnet";
|
||||
var args = $"-p --output-format stream-json --verbose --permission-mode auto --model {safeModel}";
|
||||
var result = await _claude.RunAsync(args, prompt, Path.GetTempPath(), _ => Task.CompletedTask, ct);
|
||||
if (!result.IsSuccess)
|
||||
throw new InvalidOperationException(result.ErrorMarkdown ?? "Claude konnte den Bericht nicht erzeugen.");
|
||||
|
||||
Reference in New Issue
Block a user