{
"issueNumber": 1544,
"branchName": "feat/1544-fix-sweep-exec-quoting",
"generatedAt": "2026-04-02T12:00:00Z",
"stories": [
{
"id": "S1",
"title": "Create post-inline-comment.sh helper script using jq + gh api --input - pattern",
"priority": 1,
"dependsOn": [],
"acceptanceCriteria": [
"Script accepts --repo, --pr, --commit, --path, --line, --body-file args",
"Constructs JSON payload via jq -n --arg and posts via gh api --input -",
"Exits non-zero with logged error on API failure",
"Follows post-review.sh conventions (set -euo pipefail, log functions, tmp cleanup)"
],
"passes": false,
"completedAt": null
},
{
"id": "S2",
"title": "Update tech-sweep-exec SKILL.md to use safe quoting and log-and-continue on inline failures",
"priority": 2,
"dependsOn": [
"S1"
],
"acceptanceCriteria": [
"Inline comment API section replaced with jq + --input - or post-inline-comment.sh reference",
"No -f body='<text>' pattern remains for multi-line strings",
"Failure behavior updated: inline POST failure logs error and continues remaining actions",
"Top-level review still posts before inline comments"
],
"passes": false,
"completedAt": null
},
{
"id": "S3",
"title": "Create regression test script exercising tricky character handling",
"priority": 3,
"dependsOn": [
"S1"
],
"acceptanceCriteria": [
"Test constructs a payload body with newlines, double-quotes, and a backtick",
"Validates JSON is well-formed via jq",
"Dry-run mode (default) requires no GitHub API access",
"Optional --live flag posts to a real PR for manual verification"
],
"passes": false,
"completedAt": null
}
]
}