Skip to content

sync: reconcile upstream checkpoints through 13L - #32

Merged
ngallodev merged 785 commits into
mainfrom
rescue/upstream-remainder-with-main-20261104
Nov 4, 2026
Merged

ngallodev merged 785 commits into
mainfrom
rescue/upstream-remainder-with-main-20261104

Conversation

@ngallodev

Copy link
Copy Markdown
Owner

Ancestry and scope

Draft for independent regression review. This reconciles the CLI fork with upstream checkpoints 13C–13L while retaining the fork's CLI-first architecture and Jenkins-only automatic CI. Fork base: 2093ca07efd1fad484f5d6d0f1c89e67b635b2fb; current upstream tip: e0c7a1da6c067149716afad5a06f2465c114840d; head: 7d6f0cbffda3e9786f59e8bd9b4b5946fe80fcb9. The head is a true merge of the earlier integration e3aadea3423020febf0032faf3f05e093b3d6c9b and current fork main. Its upstream ancestry includes 13L endpoint a5b248f47272413189746589b9a2c551c6b6c5ec; upstream-only ancestry decreases from 929 to 175 at the current upstream tip. No squash or rewritten upstream history.

Shared integration includes language extraction and resolution, graph and source freshness, unresolved-call reporting, persistence and daemon improvements, and allocator updates. MCP server, transport, JSON-RPC and registration remain excluded; CLI hooks and native interfaces are retained/adapted. Installer resource limits, workspace authorization and security-sensitive boundaries require independent review. Consult docs/upstream-sync/13c.md through 13l.md for individual batch receipts, adaptations and exclusions. Graph coverage/schema and existing-index compatibility require independent verification; no migration claim is made for this final merge.

Verification and outstanding gates

  • GitHub Actions policy checker and its four focused tests pass at this head: automatic CI remains Jenkins-only.
  • git diff --check outside vendored/mimalloc passes; the whole diff reports upstream vendored whitespace.
  • The integration receipt records Jenkins release-tooling build fix(platform): fall back to USERPROFILE when HOME is unset DeusData/codebase-memory-mcp#88 SUCCESS at 214b87b84a40e170fd8b3db2c603ab651ba5fe2c, with 4,141 tests passed, 2 skipped. That is not a result for this later merge head, which merges current main and changes source.
  • Independent graph/semantic and security/persistence regression reviews are pending. Exact-head Jenkins qualification, native Windows checks, and review of lock/fork behavior remain pending. Do not interpret prior validation as a full pass for this SHA.
  • No unmerged PR dependency. Keep draft until reviews and required verification are complete; no automatic merge.

divakantpandey and others added 30 commits October 28, 2026 16:51
feat(cli): note when a Claude Code session keeps searching without the graph
…ved-call-coverage

fix(pipeline): expose unresolved call coverage
…user-symlink-alias

fix(cli): trust root-owned per-user /home entries during activation walk
…remaining-fixed-size-tsnode-w

fix(extract): YAML walkers grow their stacks instead of capping content
…nsion-string-enum

fix(cli): emit string enums as Type.String({ enum }) in Pi adapter (DeusData#2787)
The MSan output handler checked msg[0] before marking the text
initialized, so MSan reported the handler's own read
(tests/test_main.c:2151). Unpoison first, then test for the empty
replay.

Signed-off-by: Martin Vogel <[email protected]>
nate and others added 20 commits November 2, 2026 09:09
…tream-remainder-20261102

# Conflicts:
#	README.md
#	graph-ui/package-lock.json
#	graph-ui/package.json
#	src/mcp/mcp.c
#	src/pipeline/pipeline.c
#	tests/test_cli.c
#	tests/test_mcp.c
…tream-remainder-20261102

# Conflicts:
#	.github/workflows/cache-warm.yml
#	.github/workflows/codeql.yml
#	.github/workflows/pr.yml
#	.github/workflows/scorecard.yml
#	.github/workflows/test-impact-artifact.yml
#	README.md
#	scripts/smoke-test.sh
#	src/cli/cli.c
#	src/cli/client_adapter.c
#	src/cli/client_adapter.h
#	src/main.c
#	src/mcp/mcp.c
#	tests/test_agent_clients.c
#	tests/test_cli.c
#	tests/test_mcp.c
…tream-remainder-20261102

# Conflicts:
#	.github/workflows/_smoke.yml
#	.github/workflows/cache-warm.yml
#	.github/workflows/pr.yml
#	.github/workflows/scorecard.yml
#	README.md
Preserve both histories for later review; source, security, and full Jenkins qualification remain required.
@coderabbitai

coderabbitai Bot commented Nov 4, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Too many files!

This PR contains 285 files, which is 185 over the limit of 100.

To get a review, reduce the PR to 100 files or fewer by splitting it into smaller PRs or changing its base branch.

Upgrade to a paid plan to raise the limit.

This review couldn't start because sufficient usage credits or metered capacity aren't available. Add credits or update usage-based reviews in the billing tab, then retry.

Run configuration
Commits

Reviewing files that changed from the base of the PR and between 2093ca0 and 2f5fb5e.

Files ignored due to path filters: 6
  • docs/images/lens-chat.gif is excluded by !**/*.gif
  • docs/images/lens-galaxy.gif is excluded by !**/*.gif
  • docs/images/lens-overview.gif is excluded by !**/*.gif
  • graph-ui/package-lock.json is excluded by !**/package-lock.json
  • scripts/test-impact/fixtures/2026-09-real-failures.tsv is excluded by !**/*.tsv
  • tests/fixtures/select-lanes/cases.tsv is excluded by !**/*.tsv
Files selected for processing: 285
  • .github/codeql/codeql-config.yml
  • .github/dependabot.yml
  • .github/workflows/_build.yml
  • .github/workflows/_lint.yml
  • .github/workflows/_memwaste.yml
  • .github/workflows/_smoke.yml
  • .github/workflows/_soak.yml
  • .github/workflows/_test.yml
  • .github/workflows/bug-repro.yml
  • .github/workflows/codeql.yml
  • .github/workflows/dry-run.yml
  • .github/workflows/fast-repro.yml
  • .github/workflows/nightly-soak.yml
  • .github/workflows/release.yml
  • .github/workflows/smoke.yml
  • .gitignore
  • CONTRIBUTING.md
  • MAINTAINERS.md
  • Makefile.cbm
  • README.md
  • THIRD_PARTY.md
  • docs/CONFIGURATION.md
  • docs/UPSTREAM_308_CANDIDATE_AUDIT_20260912.md
  • docs/WINDOWS_TROUBLESHOOTING.md
  • docs/images/README.md
  • docs/sitemap.xml
  • docs/upstream-sync/13c.md
  • docs/upstream-sync/13d.md
  • docs/upstream-sync/13e.md
  • docs/upstream-sync/13f.md
  • docs/upstream-sync/13g.md
  • docs/upstream-sync/13i.md
  • docs/upstream-sync/13j.md
  • docs/upstream-sync/13k.md
  • docs/upstream-sync/13l.md
  • docs/upstream-sync/CONTINUE.md
  • docs/upstream-sync/PLAN.md
  • docs/upstream-sync/adr-recovery.md
  • docs/upstream-sync/ledger.json
  • graph-ui/package.json
  • graph-ui/src/architecture/container-topology.test.ts
  • graph-ui/src/architecture/container-topology.ts
  • graph-ui/src/architecture/repository-guide.test.ts
  • graph-ui/src/architecture/repository-guide.ts
  • graph-ui/src/browser-ai/file-facts.test.ts
  • graph-ui/src/browser-ai/file-facts.ts
  • graph-ui/src/galaxy/GalaxyPanel.reader-focus.test.tsx
  • graph-ui/src/galaxy/GalaxyPanel.tsx
  • graph-ui/tools/codeql-input-boundaries.test.mjs
  • graph-ui/tools/handtest-fixes-architecture.mjs
  • graph-ui/tools/handtest-fixes-chat.mjs
  • graph-ui/tools/handtest-fixes-k27.mjs
  • graph-ui/tools/handtest-locators.mjs
  • graph-ui/tools/handtest-locators.test.mjs
  • graph-ui/tools/literal-pattern.mjs
  • graph-ui/tools/smoke-spike.mjs
  • graph-ui/tools/smoke-static-assets.mjs
  • install.ps1
  • internal/cbm/cbm.c
  • internal/cbm/cbm.h
  • internal/cbm/diagram.c
  • internal/cbm/extract_calls.c
  • internal/cbm/extract_channels.c
  • internal/cbm/extract_defs.c
  • internal/cbm/extract_k8s.c
  • internal/cbm/extract_unified.c
  • internal/cbm/extract_url_fold.c
  • internal/cbm/extract_usages.c
  • internal/cbm/helpers.c
  • internal/cbm/helpers.h
  • internal/cbm/lang_specs.c
  • internal/cbm/lsp/cs_lsp.c
  • internal/cbm/lsp/cs_lsp.h
  • internal/cbm/lsp/go_lsp.c
  • internal/cbm/lsp/go_lsp.h
  • internal/cbm/lsp/py_lsp.c
  • internal/cbm/lsp/py_lsp.h
  • internal/cbm/lsp/ts_lsp.c
  • internal/cbm/lsp/ts_lsp.h
  • internal/cbm/result_compact.c
  • internal/cbm/service_patterns.c
  • internal/cbm/service_patterns.h
  • internal/cbm/sqlite_writer.c
  • internal/cbm/sqlite_writer.h
  • internal/cbm/vendored/grammars/MANIFEST.md
  • internal/cbm/vendored/grammars/objectscript_routine/scanner.c
  • internal/cbm/vendored/grammars/objectscript_udl/scanner.c
  • scripts/build.sh
  • scripts/ci/codeql-retrace-vendored.sh
  • scripts/ci/generate-sbom.py
  • scripts/ci/require-all-green.sh
  • scripts/ci/select-lanes.sh
  • scripts/ci/soak-matrix.sh
  • scripts/embed-frontend.sh
  • scripts/memory-core-baseline.txt
  • scripts/test.sh
  • scripts/vendored-checksums.txt
  • src/cli/activation_transaction.c
  • src/cli/activation_transaction.h
  • src/cli/cli.c
  • src/cli/cli.h
  • src/cli/config_text_edit.c
  • src/cli/config_text_edit.h
  • src/cli/config_toml_edit.c
  • src/cli/config_toml_edit.h
  • src/cli/hook_augment.c
  • src/cypher/cypher.c
  • src/cypher/cypher.h
  • src/daemon/application.c
  • src/daemon/application_internal.h
  • src/daemon/host.c
  • src/daemon/host_internal.h
  • src/daemon/ipc.c
  • src/daemon/ipc.h
  • src/daemon/runtime.c
  • src/daemon/runtime.h
  • src/daemon/version_cohort.c
  • src/daemon/version_cohort.h
  • src/discover/discover.c
  • src/discover/discover.h
  • src/discover/discover_policy_internal.h
  • src/discover/inventory_filter.c
  • src/discover/language.c
  • src/discover/userconfig.c
  • src/foundation/compat.h
  • src/foundation/mem_core.c
  • src/foundation/mem_core.h
  • src/foundation/mem_override_win.c
  • src/foundation/platform.c
  • src/foundation/platform.h
  • src/foundation/private_file_lock.c
  • src/foundation/private_file_lock_internal.h
  • src/foundation/str_util.c
  • src/foundation/workspace.c
  • src/foundation/workspace.h
  • src/main.c
  • src/pipeline/artifact.c
  • src/pipeline/doc_links_md.c
  • src/pipeline/fqn.c
  • src/pipeline/helm_template.c
  • src/pipeline/helm_template.h
  • src/pipeline/lsp_resolve.h
  • src/pipeline/lsp_surface.c
  • src/pipeline/lsp_surface.h
  • src/pipeline/pass_calls.c
  • src/pipeline/pass_ci.c
  • src/pipeline/pass_cross_repo.c
  • src/pipeline/pass_definitions.c
  • src/pipeline/pass_docker.c
  • src/pipeline/pass_k8s.c
  • src/pipeline/pass_lsp_cross.c
  • src/pipeline/pass_lsp_cross.h
  • src/pipeline/pass_parallel.c
  • src/pipeline/pass_pkgmap.c
  • src/pipeline/pass_route_nodes.c
  • src/pipeline/pass_shell.c
  • src/pipeline/pass_terraform.c
  • src/pipeline/pass_usages.c
  • src/pipeline/pipeline.c
  • src/pipeline/pipeline.h
  • src/pipeline/pipeline_delta.c
  • src/pipeline/pipeline_incremental.c
  • src/pipeline/pipeline_internal.h
  • src/pipeline/registry.c
  • src/pipeline/worker_pool.c
  • src/pipeline/worker_pool.h
  • src/store/store.c
  • src/store/store.h
  • src/store/store_content_digest.c
  • src/store/store_graph_digest.c
  • src/store/store_graph_digest.h
  • src/ui/http_server.c
  • src/ui/layout3d.c
  • src/ui/layout3d.h
  • src/watcher/watcher.c
  • tests/fixtures/complexity/Kubernetes/chart/Chart.yaml
  • tests/fixtures/complexity/Kubernetes/chart/templates/_helpers.tpl
  • tests/fixtures/complexity/Kubernetes/chart/templates/deploy.yaml
  • tests/fixtures/complexity/Kubernetes/chart/values.yaml
  • tests/repro/repro_invariant_discovery_fqn.c
  • tests/repro/repro_lexical_binding_precision.c
  • tests/repro/repro_lsp_ts.c
  • tests/test_activation_transaction.c
  • tests/test_artifact.c
  • tests/test_c_lsp.c
  • tests/test_call_reference_contract.c
  • tests/test_cli.c
  • tests/test_codeql_retrace.sh
  • tests/test_conditional_variants.c
  • tests/test_config_text_edit.c
  • tests/test_config_toml_edit.c
  • tests/test_cross_repo.c
  • tests/test_cs_lsp.c
  • tests/test_cypher.c
  • tests/test_daemon_application.c
  • tests/test_daemon_ipc.c
  • tests/test_daemon_runtime.c
  • tests/test_diagrams.c
  • tests/test_discover.c
  • tests/test_doc_links_md.c
  • tests/test_doc_mentions_jvm.c
  • tests/test_edge_imports.c
  • tests/test_extraction.c
  • tests/test_go_lsp.c
  • tests/test_grammar_labels.c
  • tests/test_grammar_probe_f.c
  • tests/test_grammar_regression.c
  • tests/test_infrascan.c
  • tests/test_lane_gate_contract.sh
  • tests/test_lang_contract.c
  • tests/test_language.c
  • tests/test_language_count_contract.sh
  • tests/test_log.c
  • tests/test_main.c
  • tests/test_mem.c
  • tests/test_parallel.c
  • tests/test_parse_coverage.c
  • tests/test_pipeline.c
  • tests/test_platform.c
  • tests/test_private_file_lock.c
  • tests/test_prod_allocator_contract.sh
  • tests/test_py_lsp.c
  • tests/test_registry.c
  • tests/test_select_lanes.sh
  • tests/test_sqlite_writer.c
  • tests/test_stack_overflow.c
  • tests/test_store_arch.c
  • tests/test_store_bulk.c
  • tests/test_store_graph_digest.c
  • tests/test_store_nodes.c
  • tests/test_ts_lsp.c
  • tests/test_ui.c
  • tests/test_userconfig.c
  • tests/test_venue_parity_contract.sh
  • tests/test_version_cohort.c
  • tests/test_version_metadata_contract.sh
  • tests/test_watcher.c
  • tests/test_windows_bundle_contract.sh
  • tests/test_workspace.c
  • tests/windows/test_daemon_stability.py
  • vendored/mimalloc/PATCHES.md
  • vendored/mimalloc/include/mimalloc-new-delete.h
  • vendored/mimalloc/include/mimalloc-profile.h
  • vendored/mimalloc/include/mimalloc-stats.h
  • vendored/mimalloc/include/mimalloc.h
  • vendored/mimalloc/include/mimalloc/atomic.h
  • vendored/mimalloc/include/mimalloc/bits.h
  • vendored/mimalloc/include/mimalloc/internal.h
  • vendored/mimalloc/include/mimalloc/prim-tls.h
  • vendored/mimalloc/include/mimalloc/prim.h
  • vendored/mimalloc/include/mimalloc/track.h
  • vendored/mimalloc/include/mimalloc/types.h
  • vendored/mimalloc/src/alloc-aligned.c
  • vendored/mimalloc/src/alloc-override.c
  • vendored/mimalloc/src/alloc-posix.c
  • vendored/mimalloc/src/alloc.c
  • vendored/mimalloc/src/arena-meta.c
  • vendored/mimalloc/src/arena.c
  • vendored/mimalloc/src/bitmap.c
  • vendored/mimalloc/src/bitmap.h
  • vendored/mimalloc/src/free.c
  • vendored/mimalloc/src/heap.c
  • vendored/mimalloc/src/init.c
  • vendored/mimalloc/src/libc.c
  • vendored/mimalloc/src/options.c
  • vendored/mimalloc/src/os.c
  • vendored/mimalloc/src/page-map.c
  • vendored/mimalloc/src/page-queue.c
  • vendored/mimalloc/src/page.c
  • vendored/mimalloc/src/prim/emscripten/prim.c
  • vendored/mimalloc/src/prim/osx/alloc-override-zone.c
  • vendored/mimalloc/src/prim/prim-tls.c
  • vendored/mimalloc/src/prim/prim.c
  • vendored/mimalloc/src/prim/readme.md
  • vendored/mimalloc/src/prim/unix/prim.c
  • vendored/mimalloc/src/prim/wasi/prim.c
  • vendored/mimalloc/src/prim/windows/prim.c
  • vendored/mimalloc/src/random.c
  • vendored/mimalloc/src/sample-guarded.c
  • vendored/mimalloc/src/sample-profile.c
  • vendored/mimalloc/src/static.c
  • vendored/mimalloc/src/stats.c
  • vendored/mimalloc/src/subproc.c
  • vendored/mimalloc/src/theap.c
  • vendored/mimalloc/src/threadlocal.c

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

@ngallodev
ngallodev marked this pull request as ready for review November 4, 2026 10:03

@ngallodev ngallodev left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Targeted independent review of head 7d6f0cbffda3 (not a full audit of all 781 commits / 290 patches). Recommendation: hold merge pending evidence for the following gates.

  1. Workspace authorization (src/foundation/workspace.c, .h) — high priority. --approve-broad now permits an explicit override of shallow-root denial. Please demonstrate negative tests proving that only an exact, human-approved path receives this grant; manifests, agent-controlled configuration, ancestor grants, and alternate marker types cannot authorize it; filesystem roots and cache-containing roots remain non-overridable. Include canonicalization and symlink/path-alias cases.

  2. ADR persistence (src/store/store.c) — high priority. Moving ADRs to <db_path>.adr.db introduces a second durable SQLite lifecycle. Please provide migration/compatibility tests for existing stores, interrupted migration/writes, graph reindex/replacement, backup/restore (including the sidecar), and read-only opening. Document recovery semantics and verify ADRs are neither lost nor duplicated.

  3. Daemon coordination (src/daemon/ipc.c, src/foundation/private_file_lock.c) — high priority. The new inode-identity heartbeat and nonblocking release semantics need targeted tests for renamed/unlinked/replaced locks, transient EIO/ESTALE/permission failures, concurrent startup/teardown, and cleanup retry exhaustion. Qualify Windows separately from POSIX, including held-handle and mutex contention behavior.

  4. Graph coverage (src/store/store.c, src/store/store_content_digest.c) — medium priority. Validate that unresolved-call candidate storage and exclusion from the missed-index shadow graph preserve complete check_index_coverage / trace_path reporting, legacy read-only DB compatibility, and deterministic digests across full and incremental reindex.

  5. CI/installer — medium priority. Confirm changed reusable .github/workflows/* files do not restore automatic GitHub Actions triggers (Jenkins-only automatic CI is a fork requirement). Exercise install.ps1 against malformed, duplicate/case-conflicting, path-traversal and valid-but-version-mismatched archives.

  6. Exact-head qualification. The PR's 4,141-pass Jenkins receipt is for 214b87b..., not this merge head. Please attach Jenkins results for 7d6f0cbffda3, plus native Windows qualification, before requesting approval.

These are verification gaps and risk areas, not claims of confirmed bugs. GitHub's mergeable status is not evidence of regression safety. Please keep this PR unmerged until the gates are addressed.

ngallodev added a commit that referenced this pull request Nov 4, 2026
License gate step 3/3 ran `npm ci` only when graph-ui/node_modules was
missing. Jenkins main build #32 (commit 2093ca0) reused a node_modules
tree left in the persistent workspace by build #31 (2026-10-06), which was
installed from a lockfile that predates the @types/node devDependency.
The install was skipped, `tsc -b` failed with TS2688 "Cannot find type
definition file for 'node'", and every later stage was skipped.

A stale tree is also a correctness problem for the gate itself: the npm
license check would inspect packages that are not the ones this candidate
ships.

The gate now reuses an existing tree only when `npm ls --all` confirms it
matches package.json and package-lock.json. Otherwise it runs
`npm ci --ignore-scripts`, which replaces the tree. A fresh `npm ci` of the
current lockfile passes `npm ls --all`, so a matching tree does not trigger
a reinstall on every run.

Since 9f26f16 the Jenkinsfile also cleans the workspace after each
build. This change keeps the gate correct for local runs and for any
workspace the cleanup misses.
@ngallodev
ngallodev merged commit cf63fe6 into main Nov 4, 2026
1 check passed
@ngallodev
ngallodev deleted the rescue/upstream-remainder-with-main-20261104 branch November 4, 2026 22:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants