- claw askClaude: prefer native .exe, route only .cmd/.bat through cmd.exe
with a quoted command line (DEP0190-safe, same pattern as
mcp-health-check); never exec .ps1 directly (not executable without
powershell); model allowlist retained so the shell line carries no
attacker metacharacters
- executor sync path: close un-awaited coroutine before returning the
generic failure, eliminating RuntimeWarning noise
- Require measured worst-case complexity score before setting initial ceiling
- Use <MEASURED_CEILING> placeholder instead of arbitrary 20 in template
- Re-measure global maximum after each refactor before lowering ratchet ceiling
- Document oxlint >= 1.37.0 as required when adopting complexity rule
- Add rule to existing supported oxlint config before creating a new one
- Include oxlint complexity in Sonnet model-routing row
Count only positional reads from the cost-log descriptor and use actual bytes returned, so the bounded-read assertions remain deterministic under full-suite concurrency.
Skip POSIX permission-bit equality on Windows, where stat reports synthesized mode bits, while retaining the atomic publication and readback assertions on every platform.
Invoking this skill with arguments substitutes a literal $1 away, so the
"ALWAYS Use Parameterized Queries" example renders as
'SELECT * FROM users WHERE email = attacks'
for `/security-review also attacks` -- concatenated SQL, which is exactly
the anti-pattern the section above it warns against. The one place the
skill must be unambiguous is the one place argument substitution rewrites.
Switches the raw-SQL example to "?" and names the Postgres numbered form
in prose, so the lesson is unchanged and no substitutable token is left.
Adds a comment so the placeholder is not reintroduced.
Closes the JS/TS gap in the model-routing table. Python complexity already
routes via ruff C901/PLR; oxlint's complexity rule sits in the restriction
category and is off by default, so it needs enabling by hand.
Independent local Codex review PASS at 73b07f8d17, no P0/P1. Independent 66 tests and strict validation of 810 skills passed. CI run 34683976362 passed; all 48 current checks green. Incomplete memory reads fail closed with safe MCP diagnostics; canonical guidance synchronized across harness skill copies. Rollback: revert this squash commit. No deployment or installation claim.
Independent local Codex review PASS at a6a6419402, no P0/P1. Independent 181 checks and strict skill validation pass. CI run 34667546951 passed, all 45 current checks green. Existing Rails skill mapping and documentation corrections only. Rollback: revert this squash commit.
Independent local Codex review PASS at 472cfa94fb, no P0/P1. Independent retrospective, CLI, envelope and capsule tests: 73 passed. CI run 34664487219 attempt 2 passed all 42 jobs. Read-only offline capsule grouping only; no provenance, scoring, execution or promotion claim. Rollback: revert this squash commit.
Exact-head independent local Codex review PASS with no P0/P1. CI run 34680860653 attempt 2 passed at 0707cd431c. Includes HTTP/schema failure handling, coalesced sampling cache and regression tests. Disclosed P2 follow-ups remain in the merge-queue receipt. Rollback: revert this squash commit. No deployment or publication claim.
Move stable hook metadata to a validated sidecar while preserving hook commands and installer identity. Reject moved fingerprints and duplicate IDs, and validate before updating metadata. Independent local review passed at c315271624a1fd055b992f2bff889ad2a0ff8a6b; CI run 34678210149 passed. Rollback: revert this squash commit.
Remove the two reference catalog entries and their promotional descriptions. The catalog retains its other 34 entries unchanged.
Validated JSON structure, exact 13-line deletion, tracked references and independent code/security review.
Adds an opt-in HTTP entry for Serply's hosted MCP endpoint to mcp-configs/mcp-servers.json, following the parallel-search and browser-use shape: https URL, X-Api-Key header placeholder, nothing enabled by default. Independent review confirmed valid JSON, catalog-tier policy per docs/MCP-CONNECTOR-POLICY.md, and that the endpoint itself answers 401 asking for X-Api-Key, so the placeholder header is warranted. CI 44/44 at the head.
The README's OpenCode full-profile install command fails because assertHookConsentReady refuses to materialize hooks-runtime without explicit consent; --profile full selects the runtime so the gate fires. Add --enable-hooks to the documented command. Independent review reproduced the failure and the fix by running the installer in a scratch HOME; CI 44/44 at the head. docs/uk-UA/README.md still carries the old command and can follow.
Two cases the word-level rewrite still got wrong. Short options that take an optional stuck value (-u[mode], -S[keyid]) end the cluster scan, so git commit -uno and -Sn are allowed while -nu stays blocked. Git accepts any unambiguous long-option prefix, so --no-veri and --no-verif on commit, push, merge and rebase are now blocked; --no-verbose stays allowed. Quoted data such as -m "--no-verify" is still treated as data. Independent exact-head review probed 34 commands in-process and against real git with no bypass and no false positive; hook test 35/35, eslint clean, CI 44/44 at the head.
Adds skills/rails-patterns alongside laravel-patterns and django-patterns: directory contract, skinny controllers with service objects, form and query objects, idiomatic ActiveRecord, background jobs, ViewComponent, Hotwire, and the Rails 8 Solid stack. Decisions defer to rules/ruby/patterns.md. Registered in install-modules (framework-language), agent.yaml, package files, and every skill count (292) across plugin, marketplace, AGENTS and README variants. Independent exact-head review passed with no P0/P1; validate-skills, catalog:check, install manifests, plugin manifest, unicode and personal-path checks all pass; CI 44/44 at the head.
pre-bash-commit-quality spawned Windows .cmd/.bat linters unquoted, so a spaced path failed, and passed --format compact, which ESLint 9 removed (#3075). Batch executables now run through cmd.exe with each argument carried in an env token and quoted, with quote, NUL, CR and LF rejected before spawn; non-batch Windows and POSIX paths keep direct argv spawn with shell false. ESLint uses its bundled default formatter, present on 8, 9 and 10. Regression tests cover the batch, non-batch and POSIX branches and the formatter change. Independent exact-head review passed with no P0/P1; CI 44/44 at the head.
github-coordination sync listed every repo issue and pushed the epic label onto all of them (#3084). Scope the listing to issues carrying the policy's epic label plus issues whose body still holds the coordination marker (label-drift recovery), deduped by number, and reject an empty labels.epic in loadPolicy. Tests cover the filtered path and the recovery path with exact gh argv. Independent exact-head review passed with no P0/P1; CI 44/44 at the head.