[Safe Outputs Conformance] TYPE-016: Conformance checker regex false-positives on enforceCommentLimits signature (comment_limit_helpers.cjs)
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 76/100
調査の方向性
scripts/check-safe-outputs-conformance.sh の2503行目付近にある TYPE-016 チェックを読み、そのパターンを issue で説明されている enforceCommentLimits のシグネチャと比較してください。必須の2つのパラメーターの後に追加のパラメーターが続く場合も、チェックが引き続き両方を検証するように調整してください。その後、bash scripts/check-safe-outputs-conformance.sh を実行し、TYPE-016 が通過するとともに、どちらかのパラメーターが削除された場合も引き続き検出することを確認してください。
索引モデルが issue の本文から書いたものです。
説明
Conformance Check Failure
Check ID: TYPE-016
Severity: HIGH
Category: Specification/Implementation (add_comment Configurable Link Limit, Section 7.1 / 8.3 MCE5, v1.29.9)
Problem Description
scripts/check-safe-outputs-conformance.sh reports:
[HIGH] TYPE-016: enforceCommentLimits does not accept a configurable maxLinks and agent-only linkBody (generated links must be excluded)
Investigation result: this is a checker regex false positive, not a product defect. The actual implementation in actions/setup/js/comment_limit_helpers.cjs (function enforceCommentLimits, around line 64) is:
function enforceCommentLimits(body, { maxLinks = MAX_LINKS, linkBody = body, maxLength = MAX_COMMENT_LENGTH } = {})
This already supports a configurable maxLinks, a separate linkBody (so generated/footer content can be excluded from the link count), and the E008 error message correctly interpolates the configured limit: "E008: Comment contains \${links} links, maximum is \${maxLinks}..." (line 79).
The checker regex at scripts/check-safe-outputs-conformance.sh line 2503 is:
grep -qE "function enforceCommentLimits\(body, \{ maxLinks = MAX_LINKS, linkBody = body \}" "$helpers"
This requires the destructured parameter list to end immediately after "linkBody = body" (literal " }" right after). Since a third parameter, maxLength = MAX_COMMENT_LENGTH, was added between linkBody = body and the closing brace (to support the body-length limit, E006), the regex no longer matches even though the required maxLinks/linkBody behavior is fully intact. The sibling checks in the same TYPE-016 function (handler enforcement, MCP gateway enforcement, schema max-links definition) all still pass.
Affected Components
- Files: scripts/check-safe-outputs-conformance.sh (line 2503, TYPE-016 check)
- Verified correct (no change needed): actions/setup/js/comment_limit_helpers.cjs
Current vs Expected Behavior
Current Behavior
The checker regex anchors on an exact, dated function-signature substring that breaks whenever a new parameter is inserted before the closing brace, even when maxLinks/linkBody configurability is preserved.
Expected Behavior
The checker should verify presence of the required destructured parameters (maxLinks = MAX_LINKS and linkBody = body) without requiring them to be the last parameters in the signature, so legitimate signature extensions (like the maxLength parameter) do not trip a false HIGH finding.
Remediation Steps
This task can be assigned to a Copilot coding agent with the following steps:
- In scripts/check-safe-outputs-conformance.sh, update the TYPE-016 regex (around line 2503) to drop the trailing closing-brace anchor, or split it into two independent greps: one for "maxLinks = MAX_LINKS" and one for "linkBody = body", both scoped to the enforceCommentLimits function definition.
- Re-run bash scripts/check-safe-outputs-conformance.sh and confirm TYPE-016 reports PASS.
- Keep the check meaningful: ensure it still fails if a future refactor removes maxLinks or linkBody configurability from enforceCommentLimits.
- No change needed in actions/setup/js/comment_limit_helpers.cjs itself - the implementation already satisfies the TYPE-016 requirement.
Verification
After remediation, verify the fix by running: bash scripts/check-safe-outputs-conformance.sh
The check TYPE-016 should pass without errors.
References
- Safe Outputs Specification: docs/src/content/docs/specs/safe-outputs-specification.md
- Conformance Checker: scripts/check-safe-outputs-conformance.sh
- Run ID: 39376524099
- Date: 2026-10-20
Generated by ✅ Daily Safe Outputs Conformance Checker · claude · agent · 98 AIC · ⌖ 0.625 AIC · ⊞ 5.4K · ◷
- expires on Oct 20, 2026, 9:53 PM UTC-08:00
- 主要言語
- Go
- スター
- 5.5k
- フォーク
- 606
- 平均マージ
- 4時間 8分
- マージ済み PR(30日)
- 813
環境構築
このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。
- Dockerfile または Docker Compose ファイルあり
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
github/gh-aw のほかの issue
-
agent-research
難易度 2/5 1〜3時間 初心者へのやさしさ 64/100
メンテナーはふだん 1 日以内に返信
-
automation cli cookie documentation
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
メンテナーはふだん 1 日以内に返信
-
automation documentation enhancement
難易度 2/5 1〜3時間 初心者へのやさしさ 66/100
メンテナーはふだん 1 日以内に返信
-
ai-inspected
難易度 2/5 1〜3時間 初心者へのやさしさ 83/100
メンテナーはふだん 1 日以内に返信
-
[doc-healer] DDUw improvement: retry integrity-filtered issue reads with direct single-item lookupsオープンautomation documentation
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
メンテナーはふだん 1 日以内に返信
似ている issue
-
難易度 1/5 1時間未満 初心者へのやさしさ 78/100
slavakurilyak/awesome-ai-agents#880 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
apache/openserverless#282 · コメント 2 件 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
agent-butler-finding bug
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
jordansmall/spindrift#6161 ·
メンテナーはふだん 1 日以内に返信