π€ *Repo Assist here β I'm an automated AI assistant for this repository.* ## Activity for May 2026 ## Suggested Actions for Maintainer **Comprehensive list** of all pending actions requiring maintainer attention. * [ ] **Review PR** (pending): `refactor(rust-guard): extract find_org_in_items helper and simplify repo_id field loop` β closes #5527 β [Branch](https://github.com/github/gh-aw-mcpg/compare/repo-assist/fix-issue-5527-deduplicate-backend-rs) * [ ] **Check comment** #5519: Repo Assist verified env var consistency fix is safe; noted LookupEnv calls should stay β [View](https://github.com/github/gh-aw-mcpg/issues/5519) * [ ] **Check comment** #5376: Repo Assist assessed semantic function clustering findings (ensureTracingConfig, rate-limit parsers, SessionSuffix, clientAddr) β [View](https://github.com/github/gh-aw-mcpg/issues/5376) * [ ] **Check comment** #5302: Repo Assist verified dead code and scope_token duplication analysis β [View](https://github.com/github/gh-aw-mcpg/issues/5302) * [ ] **Check comment** #5269: Repo Assist reviewed per-tool jq filter implementation approach β [View](https://github.com/github/gh-aw-mcpg/issues/5269) * [ ] **Check comment** #5144: Repo Assist reviewed semantic function clustering analysis β [View](https://github.com/github/gh-aw-mcpg/issues/5144) * [ ] **Check comment** #5071: Repo Assist confirmed session timeout duplication and recommended fix β [View](https://github.com/github/gh-aw-mcpg/issues/5071) * [ ] **Check comment** #5074: Repo Assist verified Cow/reference optimizations in Rust guard β [View](https://github.com/github/gh-aw-mcpg/issues/5074) * [ ] **Check comment** #4988: Repo Assist confirmed nonce eviction duplication finding β [View](https://github.com/github/gh-aw-mcpg/issues/4988) * [ ] **Check comment** #4990: Repo Assist verified all 4 semantic function clustering findings β [View](https://github.com/github/gh-aw-mcpg/issues/4990) * [ ] **Check comment** #4919: Repo Assist verified all 4 semantic function clustering findings β [View](https://github.com/github/gh-aw-mcpg/issues/4919) ## Future Work for Repo Assist - Move `ensureTracingConfig` from `cmd/root.go` β `cmd/tracing.go` (#5376 Finding 1) - Move `parseRateLimitResetFromText` to `httputil/github_http.go` (#5376 Finding 2 / #5032 Finding 3) - Implement #5270: per-tool jq response filters feature - Move `getSessionTimeout()` to `internal/config/config_env.go` (#5071) - Implement #4990 Finding 3: remove `writeErrorResponse` thin wrapper - Implement #5074: `Cow<'_, Value>` optimizations in Rust guard - Implement #5519: replace `os.Getenv` with `envutil.GetEnvString` and extract env-var name constants ## Guard Filtering Summary No objects were filtered by the guard policy. ## Run History ### 2026-05-12 13:18 UTC β [Run](https://github.com/github/gh-aw-mcpg/actions/runs/25736986830) - π§ Created PR: `refactor(rust-guard): extract find_org_in_items helper and simplify repo_id field loop` β closes #5527 (eliminates 12-line duplicated loop body; collapses 2 if-let blocks into a 5-line loop; adds 7 unit tests) - π¬ Commented on #5519: verified env var consistency fix is safe; `os.LookupEnv` presence checks on lines 235β238 should stay; `GetEnvString` equivalent for lines 243β245 ### 2026-05-11 13:35 UTC β [Run](https://github.com/github/gh-aw-mcpg/actions/runs/25673459949) - π§ Created PR: `perf(rust-guard): add ORDER_LOW_TO_HIGH_PIPED const and direct tests for parse_integrity/scope_string` β closes #5459 (eliminates runtime Vec/String allocation in error path; adds 3 new direct unit tests) ### 2026-05-10 12:59 UTC β [Run](https://github.com/github/gh-aw-mcpg/actions/runs/25629337591) - π§ Created PR: `refactor(middleware): extract runJqCode helper` β closes #5409 (eliminates ~25 lines of duplicate jq execution code between applyJqSchema and applyToolResponseFilter) - π¬ Commented on #5376: assessed all 4 semantic function clustering findings ### 2026-05-09 12:59 UTC β [Run](https://github.com/github/gh-aw-mcpg/actions/runs/25601707755) - π§ Created PR: `refactor(config): extract normalizeStringSlice helper` β closes #5357 (48 lines β single 20-line helper) - π¬ Commented on #5340: assessed all 4 semantic function clustering findings ### 2026-05-08 13:02 UTC β [Run](https://github.com/github/gh-aw-mcpg/actions/runs/25556970837) - π¬ Commented on #5302: verified dead code in `parse_scoped_entry` and `scope_token` duplication β both confirmed - π¬ Commented on #5269: reviewed per-tool jq filter implementation, noted pre-compile strategy and TOML mapping ### 2026-05-06 12:56 UTC β [Run](https://github.com/github/gh-aw-mcpg/actions/runs/25436543863) - π·οΈ Labelled #5190 with `enhancement`, `needs investigation` - π§ Created PR: `test(config): add tests for config_env.go gateway env var parsers` β 26 tests covering `GetGatewayPortFromEnv`, `GetGatewayDomainFromEnv`, `GetGatewayAPIKeyFromEnv`, `GetGatewayToolTimeoutFromEnv`, `toolTimeoutEnvOrDefault` (all previously untested) ### 2026-05-05 12:44 UTC β [Run](https://github.com/github/gh-aw-mcpg/actions/runs/25377009793) - π§ Created PR: `test(rust-guard): add unit tests for check_file_secrecy` β closes #5143 (12 new tests, all passing) - π¬ Commented on #5144: reviewed semantic function clustering analysis findings ### 2026-05-04 12:53 UTC β [Run](https://github.com/github/gh-aw-mcpg/actions/runs/25320023630) - π·οΈ Labelled #5009 with `needs triage` - π·οΈ Labelled #5036 with `needs triage` - π¬ Commented on #5071: confirmed session timeout duplication and recommended fix approach - π¬ Commented on #5074: verified Cow/reference optimization analysis in Rust guard ### 2026-05-03 12:35 UTC β [Run](https://github.com/github/gh-aw-mcpg/actions/runs/25279282660) - π§ Created PR: `refactor(strutil): move formatResetAt to strutil.FormatResetAt` β addresses #5032 Finding 4 - π§ Created PR: `perf(mcp): eliminate marshal/unmarshal round-trip in ConvertToCallToolResult` - π¬ Commented on #5032: implemented Finding 4, noted status of other findings ### 2026-05-02 12:35 UTC β [Run](https://github.com/github/gh-aw-mcpg/actions/runs/25251996928) - π§ Created PR: `test(launcher): add tests for clearServerForRestart and getServerConfig` - π¬ Commented on #4988: confirmed nonce eviction loop duplication finding - π¬ Commented on #4990: verified all 4 semantic function clustering findings ### 2026-05-01 12:38 UTC β [Run](https://github.com/github/gh-aw-mcpg/actions/runs/25214503729) - π§ Created PR #4928: `fix(config): add promotion-label and demotion-label fields to AllowOnlyPolicy` β closes #4920 (merged β ) - π¬ Commented on #4920: confirmed compliance regression and linked fix PR - π¬ Commented on #4919: verified all 4 semantic function clustering findings - π Closed April 2026 activity issue; created this May 2026 issue > Generated by [Repo Assist](https://github.com/github/gh-aw-mcpg/actions/runs/25736986830/agentic_workflow) Β· β 2.8M Β· [β·](https://github.com/search?q=repo%3Agithub%2Fgh-aw-mcpg+is%3Aissue+%22gh-aw-workflow-call-id%3A+github%2Fgh-aw-mcpg%2Frepo-assist%22&type=issues) > > To install this [agentic workflow](https://github.com/githubnext/agentics/blob/851905c06e905bf362a9f6cc54f912e3df747d55/workflows/repo-assist.md), run > ``` > gh aw add githubnext/agentics/workflows/repo-assist.md@851905c06e905bf362a9f6cc54f912e3df747d55 > ``` <!-- gh-aw-agentic-workflow: Repo Assist, engine: copilot, version: 1.0.40, model: claude-sonnet-4.6, id: 25736986830, workflow_id: repo-assist, run: https://github.com/github/gh-aw-mcpg/actions/runs/25736986830 -->
π€ Repo Assist here β I'm an automated AI assistant for this repository.
Activity for May 2026
Suggested Actions for Maintainer
Comprehensive list of all pending actions requiring maintainer attention.
refactor(rust-guard): extract find_org_in_items helper and simplify repo_id field loopβ closes [rust-guard] Rust Guard: Deduplicate identical loop bodies inbackend.rsΒ #5527 β Branchparse_scoped_entry+ eliminatescope_tokenduplicationΒ #5302: Repo Assist verified dead code and scope_token duplication analysis β ViewFuture Work for Repo Assist
ensureTracingConfigfromcmd/root.goβcmd/tracing.go([refactor] Semantic Function Clustering AnalysisΒ #5376 Finding 1)parseRateLimitResetFromTexttohttputil/github_http.go([refactor] Semantic Function Clustering AnalysisΒ #5376 Finding 2 / [refactor] Semantic Function Clustering Analysis: Refactoring OpportunitiesΒ #5032 Finding 3)getSessionTimeout()tointernal/config/config_env.go([duplicate-code] Duplicate Code Pattern: Session Timeout Env-Var LiteralΒ #5071)writeErrorResponsethin wrapperCow<'_, Value>optimizations in Rust guardos.Getenvwithenvutil.GetEnvStringand extract env-var name constantsGuard Filtering Summary
No objects were filtered by the guard policy.
Run History
2026-05-12 13:18 UTC β Run
refactor(rust-guard): extract find_org_in_items helper and simplify repo_id field loopβ closes [rust-guard] Rust Guard: Deduplicate identical loop bodies inbackend.rsΒ #5527 (eliminates 12-line duplicated loop body; collapses 2 if-let blocks into a 5-line loop; adds 7 unit tests)os.LookupEnvpresence checks on lines 235β238 should stay;GetEnvStringequivalent for lines 243β2452026-05-11 13:35 UTC β Run
perf(rust-guard): add ORDER_LOW_TO_HIGH_PIPED const and direct tests for parse_integrity/scope_stringβ closes [rust-guard] Rust Guard: Add ORDER_LOW_TO_HIGH_PIPED const + direct tests for parse_integrity / scope_stringΒ #5459 (eliminates runtime Vec/String allocation in error path; adds 3 new direct unit tests)2026-05-10 12:59 UTC β Run
refactor(middleware): extract runJqCode helperβ closes [duplicate-code] Duplicate Code Pattern: jq Filter Execution Logic in jqschema.goΒ #5409 (eliminates ~25 lines of duplicate jq execution code between applyJqSchema and applyToolResponseFilter)2026-05-09 12:59 UTC β Run
refactor(config): extract normalizeStringSlice helperβ closes [duplicate-code] Duplicate Code Pattern: Repeated String Slice Validation & Normalization in guard_policy_validation.goΒ #5357 (48 lines β single 20-line helper)2026-05-08 13:02 UTC β Run
parse_scoped_entry+ eliminatescope_tokenduplicationΒ #5302: verified dead code inparse_scoped_entryandscope_tokenduplication β both confirmed2026-05-06 12:56 UTC β Run
enhancement,needs investigationtest(config): add tests for config_env.go gateway env var parsersβ 26 tests coveringGetGatewayPortFromEnv,GetGatewayDomainFromEnv,GetGatewayAPIKeyFromEnv,GetGatewayToolTimeoutFromEnv,toolTimeoutEnvOrDefault(all previously untested)2026-05-05 12:44 UTC β Run
test(rust-guard): add unit tests for check_file_secrecyβ closes [rust-guard] Rust Guard: Add tests forcheck_file_secrecy+ Arc-wrapPolicyContextΒ #5143 (12 new tests, all passing)2026-05-04 12:53 UTC β Run
needs triageneeds triage2026-05-03 12:35 UTC β Run
refactor(strutil): move formatResetAt to strutil.FormatResetAtβ addresses [refactor] Semantic Function Clustering Analysis: Refactoring OpportunitiesΒ #5032 Finding 4perf(mcp): eliminate marshal/unmarshal round-trip in ConvertToCallToolResult2026-05-02 12:35 UTC β Run
test(launcher): add tests for clearServerForRestart and getServerConfig2026-05-01 12:38 UTC β Run
fix(config): add promotion-label and demotion-label fields to AllowOnlyPolicyβ closes [compliance] Compliance Gap: Go config layer missingpromotion-label/demotion-labelfields added to Rust WASM guard (commit 662a784)Β #4920 (merged β )promotion-label/demotion-labelfields added to Rust WASM guard (commit 662a784)Β #4920: confirmed compliance regression and linked fix PR