Commit Graph
3943 Commits
Author SHA1 Message Date
haelyra ba0520340f fix: reconcile reviewed sources and generated integration surfaces 2026-10-09 17:27:37 -04:00
haelyra b6e2cfe5e4 merge: preserve tested installer extraction 3187 and Copilot ownership fixture 2026-10-09 17:05:03 -04:00
haelyra 5bf248d51d merge: preserve source-verified tinystruct documentation 3231 2026-10-09 17:04:47 -04:00
haelyra b6e0261903 merge: preserve static MCP dependency review source 3239 2026-10-09 17:04:33 -04:00
haelyra d38daabd98 merge: preserve Ruby reviewer source 3227 with nil and false semantics 2026-10-09 17:04:15 -04:00
haelyra d854a4a280 merge: preserve OSINT source 3198 and upstream license bytes 2026-10-09 17:03:58 -04:00
haelyra a5432e84f7 merge: preserve tested stocktake discovery and save source 3220 2026-10-09 17:03:20 -04:00
haelyra b6416b07e8 merge: preserve role sample source 3219 and user model choices 2026-10-09 17:03:10 -04:00
haelyra d312d6f35c merge: preserve project and user Codex configuration source 3253 2026-10-09 17:02:47 -04:00
montjeffrey ad031b60fb Merge upstream/main into feat/gateguard-fewer-round-trips
Resolve the one conflict, skill-triggers@1.json: take upstream's
pretty-printed manifest and recompute registryDigest for the merged
registry so validate-context-profiles passes.
2026-10-09 16:58:12 -04:00
haelyra c27de0c55c merge: preserve reviewed main integration ancestry for 2914 2026-10-09 16:52:43 -04:00
Eneko Ruiz 9f9ea5e35b fix(codex): fail closed when pre-commit cannot find ripgrep 2026-10-09 22:33:51 +02:00
haelyra eed806bf4a fix: restore unskipped installer refactor validation
Follow up PR #3187 at 38b8c07f while preserving the original contribution history and all current-main helper bodies. Remove both CI safety-suite exclusions, clean stale imports and the warning glyph, retain shipped test/coverage entrypoints, and keep unknown test totals honest. The tree matches the fully tested 6246-pass/325-file tree; disposable Claude/OpenCode lifecycle passes.
2026-10-09 16:32:47 -04:00
haelyra 5cc14d7c31 Merge pull request #2914 from santhiprakash/fix/plan-orchestrate-retired-orchestrate
fix(skills): reduce plan-orchestrate to a registry-validated command router
2026-10-09 16:30:24 -04:00
haelyra 67c89375c3 merge: preserve serialized store source 3252 with portable cache fixtures 2026-10-09 16:28:34 -04:00
haelyra 0aebb36af2 merge: preserve cache guidance source 3173 with measured cost boundaries 2026-10-09 16:27:29 -04:00
haelyra 206ad23125 merge: preserve payment source 2575 with tested origin and approval boundaries 2026-10-09 16:27:03 -04:00
haelyra d5abc5c8fc merge: preserve reviewed plan registry source 2914 2026-10-09 16:27:02 -04:00
haelyra 958f54eac1 merge: preserve tested dependency source 3049 and bound brace expansion 2026-10-09 16:24:59 -04:00
Eneko Ruiz dec9774791 docs(csharp): recommend AwesomeAssertions for readable assertions 2026-10-09 22:24:12 +02:00
haelyra 195301cb04 merge: preserve tested optional dependency carry-forward 3119 2026-10-09 16:21:29 -04:00
haelyra cc288b6e28 merge: reconcile tested OpenCode home carry-forward with Copilot transforms 2026-10-09 16:20:04 -04:00
haelyra 7265b989c4 merge: preserve tested bounded Hookify carry-forward candidate 3055 2026-10-09 16:17:57 -04:00
haelyra 46ec7aca9b merge: preserve tested SQL wrapper guard source 3050 2026-10-09 16:16:43 -04:00
haelyra 117cda3538 merge: retain original 3002 ancestry with current tested parser 2026-10-09 16:16:31 -04:00
montjeffrey dd14493e98 docs(carriers): record the second closure review follow-up 2026-10-09 16:15:55 -04:00
montjeffrey fa3f459a93 fix(carriers): resolve imports exactly, reject backslash separators, see regex after a condition
- Track whether each relative specifier arrives through require or
  through import()/static import, and resolve the import forms by exact
  path. Node's ESM resolver adds no extension and rejects directory
  imports even from a CommonJS file, so import('./helper') and
  import('./data') no longer pass on helper.js or data/index.json alone.
  require keeps the CommonJS extension and index candidates.
- Stop normalizing backslashes in relative specifiers. Linux and macOS
  read them as filename characters, so require('./lib\helper.js') now
  fails as non-portable-separator instead of resolving to lib/helper.js.
- Record whether each closing paren ends an if/while/for/with condition,
  so a `/` right after one starts a regex. A method named `if` and calls
  nested inside a condition still read as division.

extractReferences gains an `imports` list. Rescanning all 802 repository
JavaScript files against the previous scanner changes no result, and the
real registry still reports 35/35 resolved with zero failures.
2026-10-09 16:15:55 -04:00
haelyra a1e0f46c7c merge: preserve tested PowerShell prerequisite source 3042 2026-10-09 16:15:41 -04:00
haelyra 6139971817 merge: preserve tested token card source 3039 and synchronize catalog 2026-10-09 16:15:37 -04:00
montjeffrey aba3c241af test(carriers): pin exact import resolution, portable separators, and regex after a condition
Review on aec97150 found four ways the closure gate passes a carrier that
fails at run time. Each is reproduced here against the current head:

- import('./helper') with only helper.js planned is accepted, but Node's
  ESM resolver does no extension search.
- import('./data') with only data/index.json (or index.js) planned is
  accepted, but Node rejects directory imports even from CommonJS.
- require('./lib\helper.js') with lib/helper.js planned is accepted
  because backslashes were normalized, but Linux and macOS read the
  backslash as part of the filename.
- In `if (ok) /['"]/.test(text); require('./missing')` the regex after
  the condition's closing paren is read as division, its quote opens a
  fake string, and the require disappears.

Controls that must keep passing: an exact import() of a planned file, an
extensionless require through the CommonJS search, and division after a
method named `if` or a call nested inside a condition. extractReferences
gains an `imports` list so the resolver can tell the two forms apart.
2026-10-09 16:12:32 -04:00
haelyra 4cb9f29c06 merge: preserve tested Hermes hooks source 3019 2026-10-09 16:12:01 -04:00
haelyra 1d02fbfa51 merge: preserve tested agent-security source 3015 2026-10-09 16:11:53 -04:00
haelyra 34ba911ad3 merge: preserve tested Python audit source 3007 2026-10-09 16:11:22 -04:00
haelyra 899a12310e merge: preserve tested dashboard read-once source 3002 2026-10-09 16:11:12 -04:00
haelyra c3f48920de merge: preserve tested Cursor dispatcher source 3001 2026-10-09 16:11:04 -04:00
haelyra 83cd2ad91e merge: preserve tested commit-review source 2974 2026-10-09 16:10:04 -04:00
haelyra a6f6faed2a merge: preserve source 2983 with tested activity dashboard fixes 2026-10-09 16:09:59 -04:00
haelyra 74355d8cc7 merge: preserve source 2974 with tested distribution and commit guidance fixes 2026-10-09 16:09:57 -04:00
haelyra 27f49f447c merge: preserve tested Copilot distribution source 2963 2026-10-09 16:09:32 -04:00
haelyra 2ad3bdbef4 merge: preserve tested Copilot install sources 2960 and 2963 2026-10-09 16:09:01 -04:00
haelyra 64b235a663 merge: preserve tested Bun isolate guidance source 2968 2026-10-09 16:08:32 -04:00
haelyra 95bbd84106 merge: preserve tested tool-choice provider source 2950 2026-10-09 16:07:23 -04:00
haelyra 660a38ad24 merge: preserve tested documentation governance source 2943 2026-10-09 16:06:24 -04:00
haelyra 3ab06e8c6c merge: preserve reviewed routing wrapper source 2755 2026-10-09 16:05:14 -04:00
haelyra c4f419bea0 merge: refresh reviewed stewardship source 3280 on current main 2026-10-09 16:02:58 -04:00
dependabot[bot] 0f3fcbc295 chore: refresh development dependencies with coherent npm lock
Carry forward PR #3049 at 65e6e5ee and repair its missing npm lockfile update. Preserve the exact canonical Yarn lock and confirm the actual OpenCode build/runtime workflow with clean npm installation. Existing audit findings are unchanged from the assigned base.
2026-10-09 16:01:02 -04:00
wellkilo a50ee13cac feat: execute bounded local Hookify rules in lifecycle hooks
Carry forward PR #3055 at 92f53c4c onto ef648e01, preserving contributor attribution and current main. Focused maintainer fixes reuse shared input ceilings, preserve late root context through outer bootstrap, bound frontmatter before immutable parsing, and assert real oversized input in the limits workflow.
2026-10-09 15:59:20 -04:00
haelyra 846c450658 fix: keep activity dashboard executable and bound log reads 2026-10-09 15:57:34 -04:00
montjeffrey c6b2c55b87 fix(hooks): never run .sh hooks through the WSL bash launcher on Windows
plugin-hook-bootstrap (shell mode) and observe-runner probed a bare
`bash.exe`. On Windows that resolves to the first match on PATH, and
%SystemRoot%\System32 normally sits ahead of Git's bin directory, so the
pick was System32\bash.exe: the WSL launcher. The existing guard (require
a clean probe exit) only catches it when no distro is installed. With one
installed, the probe passes inside Linux, then the hook script is handed
over by a Windows path (C:\...) or a Git Bash path (/c/...), neither of
which exists in WSL. The hook exits 127 instead of running, and
observe-runner's continuous-learning observation fails on every call.

Resolve bash candidates on Windows to absolute paths from PATH, skipping
bash.exe in System32, SysWOW64, Sysnative, and the WindowsApps alias
directory, so a native bash later on PATH (Git's) is used. With none
available, the existing "no bash binary found" skip applies. An explicit
BASH override still wins, and other platforms keep bare names.

The shared resolver lives in scripts/lib/windows-bash.js with a
platform-independent test. A Windows integration test puts System32 ahead
of Git's bash and requires the .sh hook to actually run. Upstream's
bootstrap fails that scenario with exit 127 ("/bin/bash: C:Users...hook.sh:
No such file or directory"); this one prints the hook output.
2026-10-09 15:56:14 -04:00
haelyra e0b507aeac fix: ship commit review guidance with accurate conventions 2026-10-09 15:53:59 -04:00