Commit Graph
3943 Commits
Author SHA1 Message Date
Varun Gore cb13c07464 Merge pull request #2 from VarunGore36/fix/claw-windows-exec-regression
fix(claw,executor): restore Windows shim launch, close stray coroutine
2026-09-14 23:19:29 +05:30
Geronimo 15f1ee8a41 fix(claw,executor): restore Windows shim launch, close stray coroutine
- 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
2026-09-14 21:56:32 +05:30
kapelame 5929d24694 fix(opencode): write hook results through the output contract 2026-09-14 11:29:49 -04:00
kapelame 89c2bf4e40 fix(llm): require an SDK that supports provider initialization 2026-09-14 11:29:48 -04:00
Dante 071f2dbd28 docs(i18n): clarify Polish module scope 2026-09-14 21:29:40 +08:00
Dante b336b01df6 test(hooks): tolerate slower CI startup 2026-09-14 17:31:41 +08:00
Varun Gore 92f5e720e9 Merge pull request #1 from VarunGore36/fix/security-critical-hardening
fix(security): harden worker approval, hook traversal, MCP exec, install scripts, git hooks
2026-09-14 13:57:24 +05:30
Geronimo a3c24818bb fix(security): provider error taxonomy, tool leak hardening, hook gate, atomic cleanup
- ollama: connection failures -> LLMError(connection_error), unknown -> LLMError(provider_error); auth only on real 401
- executor: generic model-facing tool failure, diagnostics to logs; add execute_async/all_async; ReActAgent returns structured provider_error
- run-with-flags.js: gate require() on concrete run-export syntax, not bare word match
- codex-legacy-sync: remove tmp file on atomicWriteJson failure
- tests: async tool + ReActAgent awaitable regression coverage
2026-09-14 13:49:18 +05:30
Dante 3e72db8aa5 docs(i18n): add Polish localization scout
Signed-off-by: Dante <duanjl.china@gmail.com>
2026-09-14 16:08:45 +08:00
Geronimo 27667bc746 fix(security): harden worker approval, hook traversal, MCP exec, install scripts, git hooks
- orchestrate-codex-worker: drop yolo, default never approval, worktree containment
- run-with-flags-shell: add path traversal containment mirroring JS guard
- mcp-health-check: gate workspace probe, denylist dangerous env, shell-free reconnect with opt-in
- install.sh/ps1: add --ignore-scripts to block postinstall RCE
- git hooks: refuse global hooksPath clobber, remove file disable bypass, gate pre-push repo script execution
- claw.js: remove Windows shell:true, validate model token
- tests: opt into new secure defaults, quote-aware reconnect parsing
2026-09-14 13:24:58 +05:30
Dante 8e641003ba fix(install): clean legacy home agents state 2026-09-14 15:30:27 +08:00
Dante 1b9d599aab fix(install): keep home targets target-safe 2026-09-14 13:56:51 +08:00
dependabot[bot] cacecada15 chore(deps): bump the cargo-minor-and-patch group across 1 directory with 3 updates
Bumps the cargo-minor-and-patch group with 3 updates in the /ecc2 directory: [toml](https://github.com/toml-rs/toml), [ureq](https://github.com/algesten/ureq) and [uuid](https://github.com/uuid-rs/uuid).


Updates `toml` from 1.1.4+spec-1.1.0 to 1.1.6+spec-1.1.0
- [Commits](https://github.com/toml-rs/toml/compare/toml-v1.1.4...toml-v1.1.6)

Updates `ureq` from 3.4.0 to 3.4.1
- [Changelog](https://github.com/algesten/ureq/blob/main/CHANGELOG.md)
- [Commits](https://github.com/algesten/ureq/compare/3.4.0...3.4.1)

Updates `uuid` from 1.26.0 to 1.26.1
- [Release notes](https://github.com/uuid-rs/uuid/releases)
- [Commits](https://github.com/uuid-rs/uuid/compare/v1.26.0...v1.26.1)

---
updated-dependencies:
- dependency-name: toml
  dependency-version: 1.1.6+spec-1.1.0
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor-and-patch
- dependency-name: ureq
  dependency-version: 3.4.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor-and-patch
- dependency-name: uuid
  dependency-version: 1.26.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-minor-and-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-09-14 04:55:37 +00:00
dependabot[bot] c62f5a9cb7 chore(deps): bump the actions-minor-and-patch group with 2 updates
Bumps the actions-minor-and-patch group with 2 updates: [actions/checkout](https://github.com/actions/checkout) and [pnpm/action-setup](https://github.com/pnpm/action-setup).


Updates `actions/checkout` from 7.0.0 to 7.0.1
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v7...3d3c42e5aac5ba805825da76410c181273ba90b1)

Updates `pnpm/action-setup` from 6.0.10 to 6.1.0
- [Release notes](https://github.com/pnpm/action-setup/releases)
- [Commits](https://github.com/pnpm/action-setup/compare/0977fd99725f1db4007ccb2928dbb4e90d06cc86...ea17c68df8912ef543352723c149a84f56e3d413)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 7.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions-minor-and-patch
- dependency-name: pnpm/action-setup
  dependency-version: 6.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions-minor-and-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-09-14 04:55:23 +00:00
Yusuf Efe ef475c7997 fix: resolve OpenCode source imports and installed skills paths 2026-09-14 02:26:53 +03:00
Fibilişim f719f5c37b fix(memory-mcp): accept metadata on initialized notifications 2026-09-13 22:50:42 +03:00
Gabriel Abreu 97ba8b05ab docs(plankton-code-quality): address oxlint review findings
- 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
2026-09-13 09:03:44 -03:00
Seekers2001 e306b8bc69 fix(governance): require ADR successor 2026-09-13 17:54:25 +08:00
Seekers2001 9473819759 Merge remote-tracking branch 'upstream/main' into fix-pr-2943-sync-20260913 2026-09-13 17:35:23 +08:00
wellkilo 76329557c4 test(metrics): derive oversized fixture from scan cap
Export the internal scan budget for regression tests and size the oversized-line fixture as exactly two bounded passes.
2026-09-13 05:14:26 +08:00
wellkilo e9302928d0 test(metrics): isolate snapshot read byte accounting
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.
2026-09-13 05:08:23 +08:00
wellkilo 987c1e103f fix(metrics): bound incremental snapshot recovery
Cap JSONL line buffering and per-hook catch-up work, persist discard cursors for oversized records, report retention failures, normalize malformed token totals, and strengthen bounded-read regression fixtures.
2026-09-13 04:55:52 +08:00
wellkilo c2405149f7 test(metrics): make snapshot mode assertion portable
Skip POSIX permission-bit equality on Windows, where stat reports synthesized mode bits, while retaining the atomic publication and readback assertions on every platform.
2026-09-13 03:56:58 +08:00
wellkilo 1b12e19c63 fix(metrics): address incremental snapshot review
Replace global log-signature invalidation with per-session byte-offset cursors, preserve unterminated rows until committed, bound snapshot retention, and persist warning deduplication with atomic cross-process claims. Add regression coverage for concurrent writers, malformed data, rewrites, retention, UTF-8 boundaries, and concurrent warning emission.
2026-09-13 03:41:08 +08:00
Cedrick Cantero afa5651e9f fix(skills): avoid a literal $1 placeholder in the security-review sql example
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.
2026-09-13 03:15:37 +08:00
wellkilo e1805d7deb perf(metrics): cache cumulative session costs 2026-09-13 01:52:26 +08:00
wellkilo 6c97fab57e merge: sync Hookify runtime with main 2026-09-13 00:12:06 +08:00
Affaan Mustafa 8321021c54 fix(memory): classify directory traversal failures 2026-09-12 07:45:40 -04:00
Gabriel Abreu 03b44fe5a2 docs: add oxlint complexity rule and ratchet ceiling for JS/TS
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.
2026-09-12 08:37:39 -03:00
Affaan Mustafa 90ef62cb1d fix(memory): distinguish incomplete reads from missing records
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.
2026-09-12 05:52:29 -04:00
Seekers2001 26c9db4e7e Merge remote-tracking branch 'origin/main' into fix-pr-2943-shortcut-reference 2026-09-12 17:50:25 +08:00
Seekers2001 a47327d998 fix(governance): harden ADR audit boundaries 2026-09-12 17:49:13 +08:00
Rockwell Windsor Rice b6ddd13a9f Fix/rails patterns followups
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.
2026-09-12 04:39:08 -04:00
Seekers2001 4da6ae22ec Merge remote-tracking branch 'origin/main' into fix-pr-2943-shortcut-reference
# Conflicts:
#	.claude-plugin/marketplace.json
#	.claude-plugin/plugin.json
#	AGENTS.md
#	README.md
#	README.zh-CN.md
#	docs/tr/AGENTS.md
#	docs/zh-CN/AGENTS.md
#	docs/zh-CN/README.md
2026-09-12 16:36:03 +08:00
Affaan Mustafa ab1f1a09ba feat: group verified capsules into offline retrospective reports
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.
2026-09-12 04:35:38 -04:00
Affaan Mustafa 1ed03ecf2e feat(control-pane): live control-plane view with 2D projection and static-threshold advisories
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.
2026-09-12 04:17:37 -04:00
zpearce-2814 1ac07903ec fix(hooks): keep hooks.json within Claude Code's schema
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.
2026-09-12 02:59:02 -04:00
Affaan Mustafa c4904e3f63 fix(catalog): remove Serply and Squish entries (#3094)
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.
2026-09-12 04:45:33 +01:00
Serply fba8e352cc feat(mcp): add serply-search server catalog entry (#3085)
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.
2026-09-12 04:32:09 +01:00
Radosław Kaznowski bdf92d8fab docs: add explicit hook consent to OpenCode install command (#3080)
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.
2026-09-12 04:20:03 +01:00
Zaal 4f37387420 fix(hooks): block-no-verify handles stuck optional values and long-option prefixes (#3073)
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.
2026-09-12 03:07:29 +01:00
Rockwell Windsor Rice 95b9fe157f feat(rails-patterns): add Rails framework patterns skill (#3074)
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.
2026-09-12 01:48:16 +01:00
Dante 2083c9839a fix(hooks): support Windows linter paths and ESLint 9 (#3076)
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.
2026-09-12 01:46:38 +01:00
Wu Shuwen 3033436dcc fix: filter epic sync issues by label (#3089)
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.
2026-09-12 01:46:04 +01:00
wellkilo 882fbc018d merge: sync origin/main into Cursor hook dispatchers 2026-09-11 21:41:36 +08:00
M Saad f3b423c4b3 docs: update DevScratchpad description with AGENTS.md specs and 13 formats 2026-09-11 17:29:38 +05:00
Seekers2001 07668cb767 Merge remote-tracking branch 'origin/main' into fix-pr-2943-shortcut-reference 2026-09-11 17:32:40 +08:00
Seekers2001 03ca6c39e0 fix(governance): validate inline ADR successors 2026-09-11 17:31:10 +08:00
vam 6b1fd318ce fix(skills): enforce issue-defined agent ID cap 2026-09-11 17:07:37 +08:00
vam 30e403b9bc fix(skills): prevent option-shaped agent IDs 2026-09-11 17:07:37 +08:00