Commit Graph
941 Commits
Author SHA1 Message Date
haelyra 2f8a5a271d test: cover inferred-window hook output 2026-08-29 14:55:13 -04:00
Tanelandhaelyra ecdd517765 fix(suggest-compact): don't quote a percentage against an assumed window
The context signal always rendered "N% of <window> window", including when
the window size was the assumed 200k default rather than a detected value.
On a 1M session whose transcript carries no [1m] marker, that produced
lines like:

  [StrategicCompact] Context ~194k tokens (97% of 200k window)

while actual usage was ~19%. The user compacts on a false alarm, loses
context, and the resulting quality drop reads as a model regression.

The gap is structural: the context threshold defaults to 80% of the
window (160k on 200k), so the signal fires precisely in the 160k-200k
band where the size cannot be determined — above 200k the observed-tokens
fallback correctly infers 1M, and below 160k nothing fires.

Model id alone cannot close this. A tier may ship both a 200k and a 1M
variant under one id, so neither the known-family table nor a new entry
can distinguish them, and the transcript records no window field.

So stop asserting what isn't known: resolveContextWindow() now reports
whether the size was detected (env override, [1m] marker, known family,
or observed tokens > 200k) or assumed, and the hook omits the percentage
and window label when it was assumed. The token count, threshold, and
firing behaviour are unchanged.

resolveContextWindowTokens() keeps its existing signature and semantics.

Note: 3 pre-existing failures in tests/hooks/suggest-compact.test.js
reproduce identically on unmodified main and are untouched here.
2026-08-29 14:55:13 -04:00
haelyra e82e477034 test(pack): tolerate slow Windows extraction 2026-08-29 14:53:54 -04:00
haelyra 4c7e965209 fix(gan): distinguish scores from verdict thresholds 2026-08-29 14:24:16 -04:00
van3hardyandhaelyra b2a8091440 test(opencode): guard plugin.tool existence before shape assertion 2026-08-29 13:40:57 -04:00
van3hardyandhaelyra e72f1e6824 test(opencode): assert init does not call shell and root plugin tools 2026-08-29 13:40:56 -04:00
van3hardyandhaelyra f932e63b0a test(opencode): assert built entry is a working plugin, not just an export shape 2026-08-29 13:40:56 -04:00
van3hardyandhaelyra f0684fda32 test(opencode): assert built entry exports only the plugin function 2026-08-29 13:40:56 -04:00
曹博淳andhaelyra fcef85cb87 test: skip GAN shell checks on Windows 2026-08-29 13:40:56 -04:00
haelyra cce8f60206 test(gan): use portable Bash lookup on Windows 2026-08-29 13:40:56 -04:00
CaoBochunandhaelyra 91e846dfe2 test: execute final GAN score selection 2026-08-29 13:40:56 -04:00
CaoBochunandhaelyra 8a396ef542 test: strengthen GAN harness assertions 2026-08-29 13:40:56 -04:00
CaoBochunandhaelyra 37e9683161 test: address GAN harness review feedback 2026-08-29 13:40:56 -04:00
CaoBochunandhaelyra 70eb0f68ae fix: make GAN harness score parsing portable 2026-08-29 13:40:56 -04:00
haelyra 73c29bbd08 fix(install): register AdaL capability metadata 2026-08-29 13:40:56 -04:00
1e7493595c fix(adal): correct README install paths and add adapter regression tests
Address CodeRabbit review feedback on PR #2607:
- Fix .adal/README.md to document actual install paths (rules/, skills/)
  instead of the incorrect namespaced rules/ecc/, skills/ecc/ paths.
- Add regression tests for the adal-project install target adapter:
  root/install-state path resolution, dual id/target registry lookup,
  native .adal root sync-root-children behavior, and foreign platform
  path filtering.

Co-Authored-By: AdaL <adal@sylph.ai>
2026-08-29 13:40:56 -04:00
benno0oandhaelyra 7c2bc54be2 test: verify Corepack uses the pinned pnpm version 2026-08-29 13:40:56 -04:00
benno0oandhaelyra b48f22f08c fix: address pre-push pnpm review findings 2026-08-29 13:40:53 -04:00
benno0oandhaelyra 03b441792e fix: resolve pnpm in Git Bash pre-push hook 2026-08-29 13:40:53 -04:00
haelyraandGitHub 656d4b5746 Merge pull request #2869 from actus7/consolidate/mcp-health-v3
fix(hooks): consolidate MCP health-check fixes (3 PRs)
2026-08-29 00:22:27 -04:00
haelyra 303f50c57e test(hooks): construct mismatch prefix immutably 2026-08-28 22:43:28 -04:00
haelyra b2ab65d0fb fix(hooks): classify platform-dependent raw prefixes 2026-08-28 22:35:23 -04:00
haelyraandGitHub d5ebac49b1 Merge pull request #2380 from chs0813/fix/plugin-hook-bootstrap-no-echo
fix(hooks): do not echo raw input from plugin-hook-bootstrap.js
2026-08-28 22:24:24 -04:00
haelyraandGitHub 9ff6949798 Merge pull request #2351 from vladyslavTezyk/main
Add ukranian translation of the main Readme.
2026-08-28 21:59:45 -04:00
haelyra 13c476965f fix(hooks): keep MCP reachability probes bounded
Remove the redundant JSON-RPC initialize fallback from the consolidated MCP health-check batch. A routed 404 already proves the endpoint is reachable, and the real authenticated MCP call remains authoritative. Avoiding the fallback also prevents a stalled GET plus stalled POST from consuming twice the configured hook timeout.
2026-08-28 21:09:35 -04:00
haelyra 3702a617db Merge remote-tracking branch 'origin/main' into maint/pr-2866-current 2026-08-28 18:29:35 -04:00
haelyraandGitHub 2aebdd3408 Merge pull request #2870 from actus7/consolidate/hooks-observer-v3
fix(hooks): consolidate hooks and observer fixes (5 PRs)
2026-08-28 18:29:03 -04:00
haelyra 1d19789c75 fix(hooks): preserve metadata-marked human prompts 2026-08-28 16:28:12 -04:00
haelyra 77c358dd3f fix(costs): retain dated Opus 4 legacy pricing 2026-08-28 16:26:13 -04:00
haelyra 70f42102fc test(evolve): support Windows line endings 2026-08-28 16:25:30 -04:00
Santhi Prakashandhaelyra 64f0acf60e test: split Sonnet model pricing cases 2026-08-28 16:23:25 -04:00
Santhi Prakashandhaelyra ab8cbf6505 test: cover Sonnet 5 cache rate splits 2026-08-28 16:23:25 -04:00
Santhi Prakashandhaelyra 616716f370 test: isolate cost tracker cache fixtures 2026-08-28 16:23:25 -04:00
5ee14cb2af test(hooks): use unique session IDs in Sonnet 5 pricing tests
Prevent stale /tmp/harness-cost cache files from affecting Sonnet 5, dated,
near-miss, and cache-rate pricing tests by using Date.now() in each session ID.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-08-28 16:23:25 -04:00
f5d0b295cb test(hooks): expand Sonnet 5 cost-tracker coverage for cache and model matching
- Add cache write/read token pricing test for Sonnet 5.
- Add dated Sonnet 5 ID and claude-sonnet-50 near-miss regression tests.
- Keep Sonnet 4.6 standard rate distinction intact.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-08-28 16:23:25 -04:00
haelyra 950caaaae1 fix(hooks): preserve short sessions and quote evolved metadata 2026-08-28 16:08:19 -04:00
haelyra b7d6c61b1e Merge remote-tracking branch 'origin/main' into maint/pr-2870-current 2026-08-28 16:03:10 -04:00
haelyra 1953a749a2 Merge remote-tracking branch 'origin/main' into maint/pr-2873-current 2026-08-28 15:59:31 -04:00
Aditya Dattaandhaelyra cb9dfabcf0 test: pin Ollama whitespace normalization 2026-08-28 15:59:31 -04:00
haelyra 51982fdab1 test(opencode): verify recovery through descriptors 2026-08-25 17:27:26 -04:00
haelyra aaaff77ef9 test(opencode): avoid path race in recovery fixture 2026-08-25 17:23:24 -04:00
haelyra 204cc2d2a3 fix(release): stage ECC 2.2 launch safely 2026-08-25 17:19:45 -04:00
haelyra d6d0c4e696 test(nasiko): isolate malformed lock fixture 2026-08-25 13:52:19 -04:00
haelyra e10c4bb5bf fix(nasiko): use descriptor lock identity 2026-08-25 13:49:26 -04:00
haelyra 307bbd53a6 fix(nasiko): harden lifecycle recovery 2026-08-25 13:34:58 -04:00
haelyra d66eaf116f test(opencode): canonicalize Windows path expectations 2026-08-25 12:55:02 -04:00
haelyra 5aa660219e test(opencode): isolate environment regression processes 2026-08-25 12:37:39 -04:00
haelyra 856733263c test(opencode): cover legacy upgrade edge cases 2026-08-25 12:28:23 -04:00
haelyra 2331afbfd3 test(opencode): reproduce ambient config leakage 2026-08-25 12:14:58 -04:00
Aditya DattaandAlex Schmitt 9d233aaa63 Trim provider names in prompt builder 2026-08-24 22:27:42 -03:00