Commit Graph
599 Commits
Author SHA1 Message Date
haelyra c7a467061b Merge remote-tracking branch 'origin/pr-3523' into steward/late-arrivals-20261011 2026-10-11 15:00:38 -04:00
haelyra ee77b3a930 test: allow bounded CLI startup on loaded runners 2026-10-11 13:45:04 -04:00
akushonkamen 3cf0e709d5 fix(github-coordination): reject malformed issue numbers instead of truncating them
normalizeIssueNumber parsed with Number.parseInt, which stops at the
first non-digit ("42oops" -> 42, "42.9" -> 42, "4e2" -> 4) and loses
precision past 2^53 (9007199254740993 became 9007199254740992). The CLI
shares this helper for --issue, --limit, and the positional issue number,
so malformed values silently targeted the wrong issue before any integer
guard downstream could notice.

Validate the entire trimmed decimal token and require
Number.isSafeInteger so malformed or out-of-range values throw
"Invalid issue number" during argument parsing, before the state store
is opened or GitHub is contacted. Whitespace, leading plus, and leading
zero tolerance is preserved. Regression coverage added at both the
library level (tests/lib/github-coordination-gh-api.test.js) and the CLI
argument parser (tests/scripts/github-coordination.test.js).

Fixes #3514
2026-10-12 01:25:09 +08:00
haelyra 0908bd3148 test: distinguish snapshot probe and publication faults 2026-10-11 12:59:14 -04:00
haelyra bded8387eb fix: preflight and document snapshot storage capability 2026-10-11 12:34:15 -04:00
haelyra 1ec5b328c6 fix: normalize root overrides and report unverified snapshot staging 2026-10-11 12:05:00 -04:00
haelyra 3fa6e30502 fix: preserve rollback version state and bounded runtime workflows 2026-10-11 11:45:41 -04:00
haelyra ce54cef0e4 test: verify rollback preservation across filesystem error codes 2026-10-11 11:15:16 -04:00
haelyra a668d06f30 fix: publish rollback target snapshot before replacing live skill 2026-10-11 11:14:44 -04:00
haelyra 4e337f0a43 fix: integrate contributor snapshot allocation revision 2026-10-11 10:48:41 -04:00
Eneko Ruiz 6d8e69df52 fix: skip occupied snapshot paths without overflowing 2026-10-11 16:29:15 +02:00
haelyra 4ce5ae0119 fix: preserve search scope and installed cache discovery 2026-10-11 10:25:44 -04:00
haelyra 15d9ffd1c9 fix: validate rollback allocation before changing live skill 2026-10-11 06:49:37 -04:00
haelyra 61b1d49538 fix: bound snapshot allocation to safe version numbers 2026-10-11 06:42:29 -04:00
haelyra a7e5c4d030 fix: preserve snapshot paths and reject malformed skill tracking rows 2026-10-11 06:32:21 -04:00
haelyra 2f8b126e3a Merge reviewed contributor PR #3507 for incoming stewardship 2026-10-11 06:17:51 -04:00
haelyra a33e5b3312 Merge reviewed contributor PR #3506 for incoming stewardship 2026-10-11 06:17:51 -04:00
haelyra 542b6a89c1 Merge reviewed contributor PR #3505 for incoming stewardship 2026-10-11 06:17:51 -04:00
haelyra 3a80db87d2 Merge faithful ripgrep type-case and file-only exclusions 2026-10-11 05:38:34 -04:00
Eneko Ruiz 1ae4b88e06 fix: skip non-object skill execution JSONL rows 2026-10-11 11:35:31 +02:00
haelyra 3d8f31285f fix: preserve rg type case and filename exclusion scope 2026-10-11 05:35:14 -04:00
Eneko Ruiz acb75bc1ed fix: ignore directories when listing skill snapshots 2026-10-11 11:33:41 +02:00
Eneko Ruiz 32bbddab1d fix: keep unchanged skill rates stable at zero threshold 2026-10-11 11:31:21 +02:00
haelyra a194883e0d test(windows): pin native Bash and normalize executable paths 2026-10-11 05:31:15 -04:00
haelyra 8f80de5975 fix(ledger): retain lock descriptors across ownership checks and release 2026-10-11 04:19:35 -04:00
haelyra 7a6db7bb85 Merge late GateGuard filter and security fixture repairs 2026-10-11 03:54:05 -04:00
haelyra 58b704977a fix: correct late search credit and security test gates 2026-10-11 03:51:36 -04:00
haelyra 223da78361 test(commands): pass declared resolver source to the fixed shell harness 2026-10-11 03:46:05 -04:00
haelyra b582964d67 fix(commands): execute selected-profile resolvers and honor explicit audit intent 2026-10-11 03:45:45 -04:00
haelyra c79a7d0321 fix(install): give shared command helpers one module owner 2026-10-11 02:22:53 -04:00
haelyra f58f15af30 Merge branch 'steward/install-20261011' of /Users/hira/Documents/ECC/ecc-review-install-20261011 into integration/ecc-043-20261011 2026-10-11 02:14:56 -04:00
haelyra d6aab8393f Merge branch 'steward/docs-providers-20261011' of /Users/hira/Documents/ECC/ecc-review-docs-providers-20261011 into integration/ecc-043-20261011
# Conflicts:
#	manifests/context-packs/skill-triggers@1.json
2026-10-11 02:14:56 -04:00
haelyra 3add1816ea feat: offer an opt-in local Claude usage display
Scoped adaptation of PR #2716: keep compact rendering as the default and require ECC_STATUSLINE_USAGE=1. Installer registration, managed aliases and the Codex background bar remain outside this slice.
2026-10-11 02:09:06 -04:00
haelyra 43febb9ada fix: preserve opt-in GateGuard contract questions from PR 3497 2026-10-11 02:00:27 -04:00
haelyra bd96347002 fix: preserve target-scoped GateGuard search credit from PR 3496 2026-10-11 01:57:34 -04:00
haelyra c9a3143aa4 fix: preserve citation intent and current routing evidence gates 2026-10-11 01:56:19 -04:00
haelyra 4f5970bf4f fix(codex): ship named CLI profile files with ownership protection
Reproduced issue #3485 on installed Codex CLI 0.162.0. Keep user legacy choices for explicit migration and verify disposable install, repair, reinstall and removal.
2026-10-11 01:55:54 -04:00
haelyra 7bcb8dabee feat: preserve passive scoped coordination receipts from PR 3128 2026-10-11 01:55:20 -04:00
Yann Roberto d9efa98bb6 fix(install): preserve locale selections during auto-update 2026-10-11 13:41:34 +08:00
montjeffrey 161713edce test(gateguard): pin the original four code questions and an opt-in external-contract question
8a7d6129 added the external-contract question for every code change that
handles data and updated the pinned tests to match, including the legacy
test "code condensed Edit hint for an unknown profile is unchanged". Its own
evaluation then found the gated arm did not improve (25 to 23 of 48), so the
question has no evidence behind it as a default.

- Restore the test expectations 8a7d6129 changed: questionIdsFor, the
  byte-identical code text for src/a.py, the condensed hints, and the hook
  question lists default to data-schema without external-contract.
- Add questionIdsFor/condensedHintFor cases with { externalContract: true }.
- Add hook cases: GATEGUARD_EXTERNAL_CONTRACT_QUESTION=1/true/ON asks it
  beside data-schema and in the unknown-profile set, never without data;
  unset, 0, false and off keep the original four.

Against main: target-class 5 failures, fact-force 10 failures.
2026-10-11 00:45:00 -04:00
montjeffrey 9faa6b76d2 test(gateguard): pin searches that never saw the target and Unicode line terminators
Each of these is credited on main, reproduced against upstream 2d515e4f:

- rg -t py / -T js / --type-not js, fd -e py, and the Grep tool's
  type: "py" credit an Edit of tokenizer.js. Type and extension values
  are skipped as plain value flags, so they never filter.
- Glob **/tokenizer.py, rg tokenizer src/*.py, and
  git grep tokenizer -- '*.py' credit tokenizer.js. The Glob pattern is
  never a filter, and a glob operand scopes as its literal directory.
- Glob **/tokenizer.js, find -name tokenizer.js, rg -g tokenizer.js and
  Grep glob: "tokenizer.js" credit tokenizer.js, although each search
  could only find the target itself.
- An Edit of "// note<U+2028>foo(1);" to "// note<U+2028>foo(2);" passes
  as comment-only, although JavaScript ends the comment at U+2028 and
  foo(2) runs.

Scenario 21-bypass-filter-forms adds ten must-deny steps and four
controls. Four hook controls that asserted exact-name lookups still
credit (find -name widget.py, Grep glob widget.py, Get-ChildItem
-Filter widget.py) now assert the lookup is denied; each keeps its
original purpose, that the exclusion parser leaves a positive include
alone, through a wildcard include (widget.*).
2026-10-10 23:38:47 -04:00
haelyra f614e82ae5 fix(session): preserve alias identity when its store is unreadable 2026-10-10 20:38:40 -04:00
haelyra 0a181df218 fix(session): preserve optional startup context and independent history reads 2026-10-10 20:14:22 -04:00
haelyra 068d93251e fix(state): retry Windows sharing reads without dropping published aliases 2026-10-10 19:54:09 -04:00
haelyra e76ea52ae3 test(security): bind fixture reads and mutations to private descriptors 2026-10-10 19:11:12 -04:00
haelyra 24de70a507 fix(fs): retry bounded Windows atomic rename sharing failures 2026-10-10 18:58:54 -04:00
haelyra ad176030e7 test(settings): allow quarantine recovery retry on slower filesystems 2026-10-10 18:56:03 -04:00
haelyra d34d022bc5 test(gateguard): expect native directory keys on Windows 2026-10-10 18:56:03 -04:00
haelyra 74aace4071 fix(opencode): preserve CommonJS runtime scope and user script ownership 2026-10-10 18:53:22 -04:00
haelyra b327efcad3 test(transcript): isolate the extracted reader missing-file probe 2026-10-10 18:38:26 -04:00