Commit Graph
4625 Commits
Author SHA1 Message Date
Martin Vogel 57d641bfeb Merge branch 'main' into feat/claude-code-plugin-marketplace 2026-10-27 19:18:22 +01:00
Martin Vogel 83109dde52 Merge pull request #2802 from harshitaajoshi/fix/2797-relative-import-exact-path
fix(pipeline): never guess a same-named sibling for explicit ./ and ../ imports (#2797)
2026-10-27 19:12:29 +01:00
Martin Vogel e73eb9d6ae Merge pull request #2777 from gaurav0107/fix/1818-daemon-autoindex-skipped-omits-the-effec
fix(daemon): log the effective auto_index_limit in daemon.autoindex.skipped
2026-10-27 19:12:23 +01:00
Martin Vogel 70cd1a5568 Merge pull request #2622 from Lixsp11/fix/windows-sqlite-writer-64bit-offsets
fix(store): use 64-bit file offsets in the SQLite page writer
2026-10-27 19:12:17 +01:00
Martin Vogel 6ef815540d Merge pull request #2422 from Fieldnote-Echo/fix/py-definitions-oom
fix(py-lsp): walk each lambda body at most once per call chain
2026-10-27 19:12:10 +01:00
Martin Vogel aaf9021582 Merge pull request #1730 from henry-hz/upstream-pr/elixir-channels
fix(elixir): Phoenix channel extraction is unreachable in both branches
2026-10-27 19:12:04 +01:00
Martin Vogel 4edc6b7b30 Merge pull request #2724 from tmonestudio/fix/java-skip-dirs-and-typed-calls
fix(discover): keep JVM packages named like build dirs (part of #2661)
2026-10-27 19:11:57 +01:00
Martin Vogel 5948316c3d Merge pull request #2800 from WarGloom/fix/objectscript-empty-deserialize
fix: guard empty ObjectScript scanner state
2026-10-27 19:11:51 +01:00
Martin Vogel 5dcf253b45 Merge pull request #2555 from lorenzozanee/fix/js-template-leading-substitution-url
test(pipeline): guard base-URL constant in JS/TS template fetch URLs (#2540)
2026-10-27 19:11:44 +01:00
Martin Vogel 69b26df9f0 Merge pull request #2372 from lorenzozanee/fix/search-code-cancellation-observability
fix(mcp): report request timing in mcp.request logs
2026-10-27 19:11:15 +01:00
Martin Vogel 129443a0b7 Merge pull request #2801 from DeusData/feat/copilot-posttooluse-hook
feat(cli): give Copilot searches graph context through a PostToolUse hook
2026-10-27 19:04:13 +01:00
Martin Vogel 8530c8cd1c Merge pull request #2675 from attilaolah/musl
Fix build against musl
2026-10-26 02:29:09 +01:00
Martin Vogel d6109bfdfe Merge origin/main into fix/windows-sqlite-writer-64bit-offsets
Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
2026-10-26 02:26:54 +01:00
Martin Vogel a49481df70 Merge pull request #2602 from bline/fix/doc-link-moved-directory
fix(doc-links): report references into a moved directory as missing (#2588)
2026-10-26 02:18:59 +01:00
Martin Vogel 25665c6e4d Merge origin/main into fix/search-code-cancellation-observability
Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>

# Conflicts:
#	src/mcp/mcp.c
2026-10-26 02:00:28 +01:00
Martin Vogel 14bf8f0c6c fix(mcp): keep request timing, defer protocol behaviour changes
Split the PR along the line the review asked for. The request timing and
transport fields stay: every mcp.request log line carries
handler_duration_ms, response_serialization_ms, cancelled and timed_out,
and a search that reaches its deadline logs status=timeout.

The behaviour changes go back to the base text and need a separate
maintainer decision: stricter jsonrpc/id parsing, dropping "result":null,
NULL returns from the response formatters, leaving the stdio loop on a
missing response or an input/output failure, the removed blocking-poll
fallback, the HTTP 500 path, the daemon session end on a missing response,
and the update-notice warning. Their tests go with them. The list_projects
sort guard is dropped as well (main has the same fix).

cbm_mcp_server_handle formats its three responses with
cbm_jsonrpc_format_response directly; a NULL reply still marks the request
as an error. The cbm_log_mcp_request checks in tests/test_log.c are back
with the new signature, plus checks for the new fields and for
status=timeout. clang-format on the new lines.

Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
2026-10-26 01:58:34 +01:00
Martin Vogel f05c221e9c Merge pull request #2744 from harshitaajoshi/fix/2591-cypher-where-property-compare
fix(cypher): support property-to-property comparisons in WHERE (#2591)
2026-10-26 01:58:25 +01:00
Martin Vogel 4ef2d23b1d Merge pull request #2234 from lorenzozanee/fix/framework-entry-dead-code
fix(ui): preserve framework route entry points from dead-code status
2026-10-26 01:57:50 +01:00
Martin Vogel 9e7794b04f Merge pull request #2443 from bmcnaboe/docs/help-daemon-subcommand
docs(cli): list daemon <start|stop|status> in --help
2026-10-26 01:45:17 +01:00
Martin Vogel 807a780feb Merge origin/main into fix/js-template-leading-substitution-url
Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
2026-10-26 01:42:42 +01:00
Martin Vogel f0f88b9c4d Merge origin/main into upstream-pr/elixir-channels
Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
2026-10-26 01:26:17 +01:00
Martin Vogel f05eccefa2 test(doc-links): move JVM not_indexed fixtures to a skipped layout (#2661)
The Java and Kotlin doc-link reason tests modelled "a package in a
directory discovery skips" with src/main/java/a/env/ and
src/main/kotlin/k/env/. Discovery now keeps packages below
src/<set>/<lang>/, so those files are indexed and the two not_indexed
assertions failed. Move both fixtures to a plain src/<pkg>/ layout,
which discovery still skips by name (the open part of #2661), and
reword the comments. Assertions unchanged.

Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
2026-10-26 00:54:53 +01:00
Martin Vogel ca419635ee Merge origin/main into fix/1818-daemon-autoindex-skipped-omits-the-effec
Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
2026-10-26 00:53:54 +01:00
Martin Vogel 0433142a15 Merge pull request #2764 from gaurav0107/fix/2742-cypher-return-zero-for-ungrouped-count-o
fix(cypher): return one row for an ungrouped aggregate over empty input
2026-10-26 00:45:45 +01:00
Martin Vogel 8b428eb1d4 Merge pull request #2085 from AmirF194/fix/2001-manifest-walk-skip-unreadable-subdir
fix(pipeline): skip an unreadable subdirectory in the control-file walk instead of aborting the whole index
2026-10-26 00:39:16 +01:00
Martin Vogel 5e9f146e7b Merge pull request #2289 from halindrome/fix/cohort-lock-tmp-cleaner
fix(daemon): keep held runtime files fresh and exit when one is lost
2026-10-26 00:38:49 +01:00
Martin Vogel 5be2e8824d Merge origin/main into fix/py-definitions-oom
Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
2026-10-26 00:35:59 +01:00
Martin Vogel 07e73a3bce Merge pull request #2766 from RithvikReddy0-0/install-ps1-layout-mismatch
install.ps1: report a checksum-verified layout mismatch separately from an unsafe archive
2026-10-26 00:35:22 +01:00
Martin Vogel 4ad22bf307 Merge pull request #2798 from DeusData/fix/pr-ack-strip-hidden-note
fix(ci): post the PR acknowledgement without its hidden maintainer note
2026-10-25 21:56:04 +01:00
harshitaajoshi 2d06fe300a fix(pipeline): never guess a same-named sibling for explicit ./ and ../ imports (#2797)
Signed-off-by: harshitaajoshi <j.harshitaa06@gmail.com>
2026-10-25 15:43:31 -05:00
harshitaajoshi 1cc2377c14 fix(cypher): support property-to-property comparisons in WHERE (#2591)
Signed-off-by: harshitaajoshi <j.harshitaa06@gmail.com>
2026-10-25 15:05:28 -05:00
Martin Vogel 5350b5b83e fix(cli): render the Copilot manifest through the memory core
The PostToolUse change rendered the manifest twice per install and uninstall
(current and previous generation) and freed both with free(), which grew the
raw allocator count in src/cli/cli.c past its baseline (lint-memory-core).
The manifest is now written with cbm_json_writer_allocator() and released with
cbm_free(CBM_MEM_CLASS_OTHER, ...), including the frees that predate the
change, so cli.c drops from 170 to 166 raw sites and its baseline is lowered
to match. The rendered bytes are unchanged, so byte-exact ownership of
manifests written by earlier installs still holds.

Refs #509

Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
2026-10-25 20:57:54 +01:00
Martin Vogel 31ba586de4 Merge pull request #2738 from petterip/fix/route-properties-json
fix(pipeline): emit and reconstruct route properties as valid JSON
2026-10-25 20:30:24 +01:00
Martin Vogel 10df7bc294 Merge pull request #2761 from tmonestudio/feat/glsl-stage-mapping
feat(language): map GLSL compute, geometry and tessellation stages
2026-10-25 20:27:52 +01:00
Martin Vogel eaed3cdf6e Merge origin/main into fix/objectscript-empty-deserialize
Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
2026-10-25 20:26:27 +01:00
Martin Vogel 5f0f862df6 Merge origin/main into docs/help-daemon-subcommand
Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
2026-10-25 20:19:05 +01:00
Martin Vogel a74d528e8c Merge pull request #2755 from DeusData/codex/ci-cppcheck-parallel
ci: parallelize cppcheck with isolated whole-program analysis
2026-10-25 20:16:44 +01:00
Martin Vogel 87b346ee51 Merge origin/main into fix/framework-entry-dead-code
Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
2026-10-25 20:14:14 +01:00
Martin Vogel d0937940a9 docs(readme): name the Codex PreToolUse and Copilot PostToolUse search hooks
The Codex CLI row still listed only SessionStart and SubagentStart after the
PreToolUse Bash hook landed (#2719), and the hook section described only
Claude Code's search context. The row now names the Codex search hook, and the
section says how Codex, Copilot CLI and VS Code's Copilot runtime get search
context.

Refs #509

Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
2026-10-25 20:03:40 +01:00
Martin Vogel a18b4a4574 feat(cli): give Copilot searches graph context through a PostToolUse hook
Copilot CLI's preToolUse output can only decide permissions, and its command
hooks fail closed on errors, so the graph context that Claude Code and Codex
searches get could not ride a pre-tool hook there. postToolUse
additionalContext is appended to the tool result the model sees on the same
turn (github/docs content/copilot/reference/hooks-reference.md). VS Code's
agent mode shares the Copilot harness and reads the same ~/.copilot/hooks
manifest.

- Manifest: $COPILOT_HOME/hooks/codebase-memory-mcp.json adds a PascalCase
  PostToolUse entry, matcher "Bash|Grep|Glob|bash|powershell|grep|rg|glob",
  running hook-augment --event PostToolUse --dialect copilot. The previous
  lifecycle-only manifest, as installs up to v0.12 wrote it, stays recognized
  as owned: install upgrades it in place and uninstall removes either
  generation. A foreign manifest still fails closed.
- hook-augment: the Copilot dialect reads either payload form
  (tool_name/tool_input or toolName/toolArgs), maps runtime tool names to the
  Claude names (bash/powershell to Bash, grep/rg to Grep, glob to Glob),
  parses arguments passed as a JSON string, and answers with top-level
  additionalContext.
- Fast path: Copilot's forced PostToolUse goes through the no-op gate before
  executable-identity hashing. The gate also skips tools the augmenter does
  not read, because VS Code's local hook parser ignores matchers, so a
  non-search shell call or an edit exits in about 20 ms instead of paying the
  full round-trip of about 130 ms.
- The context header no longer says the search results are "below": after a
  post-tool hook they are above it.
- Tests: the three Copilot foreign-manifest tests now create
  .copilot/mcp-config.json. Without it Copilot CLI was never detected, so
  install and uninstall never reached the manifest, and the tests also passed
  with the ownership checks removed.

Refs #509

Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
2026-10-25 19:50:35 +01:00
Martin Vogel 619192a990 Merge pull request #2719 from DeusData/feat/codex-pretooluse-hook
feat(cli): give Codex shell searches graph context through a PreToolUse hook
2026-10-25 19:48:37 +01:00
Martin Vogel ced508f6a4 Merge pull request #2381 from wcy12378/fix/221-windows-cli-detection
fix(cli): resolve Windows CLI detection for long PATH and npm/mise/scoop shims (#221)
2026-10-25 19:37:14 +01:00
Martin Vogel e2f93baf5c Merge pull request #2231 from yasmoradi/fix/csharp14-extension-members
fix(extraction): recover C# 14 extension block members
2026-10-25 19:37:01 +01:00
Martin Vogel 4a1e6d1103 Merge pull request #2091 from CaptainMittens/fix/ts-lsp-walk-stack-drops-nodes
fix: grow the ts_lsp AST walk stacks so wide files keep every declaration
2026-10-25 19:36:39 +01:00
wargloom cd368cec1e fix: guard empty ObjectScript scanner state
Signed-off-by: wargloom <wargloom@gmail.com>
2026-10-25 20:24:31 +02:00
Martin Vogel f2dad9ac7a Merge origin/main into fix/cohort-lock-tmp-cleaner
Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
2026-10-25 19:16:41 +01:00
Martin Vogel 0a045b588b Merge origin/main into fix/2001-manifest-walk-skip-unreadable-subdir
Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
2026-10-25 19:10:33 +01:00
Martin Vogel 6efe33b730 Merge pull request #1999 from mikemikimike/fix/ts-inferred-receiver-calls-1974
test(ts): add regression for inferred imported receiver
2026-10-25 19:09:43 +01:00
Martin Vogel 023e997fd8 Merge pull request #2281 from knewstimek/pr/windows-aligned-delete-fix
fix(windows): use matching deallocator for CRT aligned blocks
2026-10-25 19:09:31 +01:00
Martin Vogel 46c01c479d Merge pull request #2737 from WarGloom/fix/session-index-watch-registration
fix: watch explicit MCP index targets
2026-10-25 19:04:01 +01:00