codenib 0.2.1__tar.gz → 0.2.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {codenib-0.2.1 → codenib-0.2.2}/CHANGELOG.md +39 -1
- {codenib-0.2.1 → codenib-0.2.2}/MANIFEST.in +1 -0
- {codenib-0.2.1 → codenib-0.2.2}/PKG-INFO +52 -19
- {codenib-0.2.1 → codenib-0.2.2}/README.md +51 -18
- {codenib-0.2.1 → codenib-0.2.2}/codenib/__init__.py +12 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/_atomic_directory.py +1914 -305
- {codenib-0.2.1 → codenib-0.2.2}/codenib/_bounded_json.py +262 -1
- {codenib-0.2.1 → codenib-0.2.2}/codenib/_captured_directory.py +616 -52
- {codenib-0.2.1 → codenib-0.2.2}/codenib/_contained_source.py +124 -10
- codenib-0.2.2/codenib/_local_workspace_provider.py +218 -0
- codenib-0.2.2/codenib/_workspace_owner.py +433 -0
- codenib-0.2.2/codenib/_workspace_provider.py +836 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/lsp_provider.py +14 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/runner.py +11 -1
- {codenib-0.2.1 → codenib-0.2.2}/codenib/artifacts/__init__.py +26 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/artifacts/portable_views.py +727 -50
- {codenib-0.2.1 → codenib-0.2.2}/codenib/artifacts/runtime.py +130 -13
- codenib-0.2.2/codenib/artifacts/security.py +515 -0
- codenib-0.2.2/codenib/artifacts/strict_bm25.py +1664 -0
- codenib-0.2.2/codenib/artifacts/strict_context.py +1191 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/cli.py +1911 -57
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/_manifest.py +6 -2
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/execution/sandbox.py +13 -0
- codenib-0.2.2/codenib/clients/guardian/__init__.py +78 -0
- codenib-0.2.2/codenib/clients/guardian/agent.py +475 -0
- codenib-0.2.2/codenib/clients/guardian/aggregation.py +367 -0
- codenib-0.2.2/codenib/clients/guardian/artifacts.py +359 -0
- codenib-0.2.2/codenib/clients/guardian/contribution.py +264 -0
- codenib-0.2.2/codenib/clients/guardian/discovery.py +259 -0
- codenib-0.2.2/codenib/clients/guardian/distillation.py +78 -0
- codenib-0.2.2/codenib/clients/guardian/evidence.py +311 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/guardian/exchange.py +13 -2
- codenib-0.2.2/codenib/clients/guardian/frontier.py +63 -0
- codenib-0.2.2/codenib/clients/guardian/memory.py +423 -0
- codenib-0.2.2/codenib/clients/guardian/normalization.py +519 -0
- codenib-0.2.2/codenib/clients/guardian/patch_check.py +900 -0
- codenib-0.2.2/codenib/clients/guardian/planning.py +94 -0
- codenib-0.2.2/codenib/clients/guardian/prompts.py +605 -0
- codenib-0.2.2/codenib/clients/guardian/types.py +666 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/code_chunker.py +125 -13
- {codenib-0.2.1 → codenib-0.2.2}/codenib/code_chunking/base.py +11 -10
- codenib-0.2.2/codenib/compiler/__init__.py +234 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/compiler/artifact_quality.py +292 -1
- codenib-0.2.2/codenib/compiler/cache_import.py +838 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/compiler/cache_lock.py +280 -28
- {codenib-0.2.1 → codenib-0.2.2}/codenib/compiler/checkout_identity.py +3 -2
- codenib-0.2.2/codenib/compiler/graph_artifact.py +305 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/compiler/index_builders.py +1131 -42
- {codenib-0.2.1 → codenib-0.2.2}/codenib/compiler/index_compiler.py +237 -56
- codenib-0.2.2/codenib/compiler/manifest.py +742 -0
- codenib-0.2.2/codenib/compiler/manifest_export.py +2031 -0
- codenib-0.2.2/codenib/compiler/manifest_import.py +1523 -0
- codenib-0.2.2/codenib/compiler/manifest_materialization.py +2195 -0
- codenib-0.2.2/codenib/compiler/manifest_source.py +160 -0
- codenib-0.2.2/codenib/compiler/manifest_storage.py +2728 -0
- codenib-0.2.2/codenib/compiler/retained_manifest_contract.py +56 -0
- codenib-0.2.2/codenib/compiler/retained_snapshot.py +353 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/compiler/skill_context.py +109 -18
- codenib-0.2.2/codenib/compiler/zoekt_artifact.py +436 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/benchmarks/deepswe/reports.py +3 -2
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/code_graph.py +53 -2
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/hierarchy.py +43 -6
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/source_coverage.py +10 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/embedding/builders.py +97 -1
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/embedding/model_policy.py +118 -20
- codenib-0.2.2/codenib/index/embedding/text_policy.py +27 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/embedding/vector_store.py +70 -6
- {codenib-0.2.1 → codenib-0.2.2}/codenib/integrations/reponavigator.py +2 -24
- {codenib-0.2.1 → codenib-0.2.2}/codenib/mcp/context.py +87 -9
- {codenib-0.2.1 → codenib-0.2.2}/codenib/mcp/server.py +21 -18
- {codenib-0.2.1 → codenib-0.2.2}/codenib/repository_filters.py +51 -12
- codenib-0.2.2/codenib/repository_source_selection.py +235 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/repository_summary.py +20 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/sandbox/docker.py +77 -2
- {codenib-0.2.1 → codenib-0.2.2}/codenib/sandbox/types.py +12 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/lsp_occurrence_index.py +16 -4
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/rust_analyzer.py +8 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_indexer_ts.py +110 -4
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_query.py +275 -30
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_query_provider.py +28 -4
- codenib-0.2.2/codenib/scip_interface/typescript_semantics.py +314 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/source_fingerprint.py +770 -40
- {codenib-0.2.1 → codenib-0.2.2}/codenib/storage/__init__.py +54 -2
- {codenib-0.2.1 → codenib-0.2.2}/codenib/storage/cas.py +447 -3
- {codenib-0.2.1 → codenib-0.2.2}/codenib/storage/models.py +159 -2
- codenib-0.2.2/codenib/storage/protocols.py +470 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/storage/sqlite_catalog.py +834 -92
- {codenib-0.2.1 → codenib-0.2.2}/codenib/storage/view_bundle.py +1779 -6
- {codenib-0.2.1 → codenib-0.2.2}/codenib/toolchains.py +1 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/web/app.py +270 -41
- {codenib-0.2.1 → codenib-0.2.2}/codenib/web/codemap.py +208 -17
- {codenib-0.2.1 → codenib-0.2.2}/codenib/web/config.py +114 -5
- {codenib-0.2.1 → codenib-0.2.2}/codenib/web/local.py +31 -7
- {codenib-0.2.1 → codenib-0.2.2}/codenib/web/modulemap.py +97 -19
- {codenib-0.2.1 → codenib-0.2.2}/codenib/web/native_authority.py +17 -8
- {codenib-0.2.1 → codenib-0.2.2}/codenib/web/repo_registry.py +420 -76
- {codenib-0.2.1 → codenib-0.2.2}/codenib/web/repository_files.py +57 -7
- {codenib-0.2.1 → codenib-0.2.2}/codenib/web/schemas.py +141 -8
- {codenib-0.2.1 → codenib-0.2.2}/codenib/web/static_export.py +324 -215
- {codenib-0.2.1 → codenib-0.2.2}/codenib/wiki/agent_wiki.py +1138 -98
- {codenib-0.2.1 → codenib-0.2.2}/codenib/wiki/builder.py +152 -25
- codenib-0.2.2/codenib/wiki/cache_audit.py +309 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/wiki/evidence.py +66 -7
- codenib-0.2.2/codenib/wiki/media_generation.py +886 -0
- codenib-0.2.2/codenib/wiki/multimodal.py +147 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/wiki/outline.py +46 -28
- codenib-0.2.2/codenib/wiki/prewarm.py +316 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/wiki/quality.py +167 -19
- {codenib-0.2.1 → codenib-0.2.2}/codenib.egg-info/PKG-INFO +52 -19
- {codenib-0.2.1 → codenib-0.2.2}/codenib.egg-info/SOURCES.txt +108 -71
- codenib-0.2.2/native/workspace_owner.c +3881 -0
- {codenib-0.2.1 → codenib-0.2.2}/pyproject.toml +1 -1
- {codenib-0.2.1 → codenib-0.2.2}/server.json +3 -3
- {codenib-0.2.1 → codenib-0.2.2}/setup.py +16 -3
- {codenib-0.2.1 → codenib-0.2.2}/test/test_atomic_directory.py +2967 -156
- {codenib-0.2.1 → codenib-0.2.2}/test/test_bounded_json.py +97 -1
- {codenib-0.2.1 → codenib-0.2.2}/test/test_captured_directory.py +238 -3
- codenib-0.2.2/test/test_cli.py +4010 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_codegraph_onboarding.py +64 -2
- codenib-0.2.2/test/test_local_workspace_provider.py +771 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_mcp_registry.py +2 -2
- codenib-0.2.2/test/test_release_artifacts.py +730 -0
- codenib-0.2.2/test/test_repository_source_selection.py +321 -0
- codenib-0.2.2/test/test_repository_source_selection_cli.py +114 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_source_fingerprint.py +1203 -25
- {codenib-0.2.1 → codenib-0.2.2}/test/test_toolchains.py +15 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_vector_pre_model_authorization.py +17 -1
- codenib-0.2.2/test/test_workspace_owner.py +1098 -0
- codenib-0.2.2/test/test_workspace_provider.py +1594 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/app/[repoId]/ask/page.tsx +77 -2
- {codenib-0.2.1 → codenib-0.2.2}/web/app/[repoId]/page.tsx +309 -38
- {codenib-0.2.1 → codenib-0.2.2}/web/app/globals.css +463 -10
- {codenib-0.2.1 → codenib-0.2.2}/web/components/CodePanel.tsx +143 -14
- codenib-0.2.1/web/dist/assets/AskBar-B3upmd6s.js → codenib-0.2.2/web/dist/assets/AskBar-DiJdVsAg.js +3 -3
- codenib-0.2.1/web/dist/assets/CodeGraph-ChuiMUI1.js → codenib-0.2.2/web/dist/assets/CodeGraph-C6T8Ji-q.js +1 -1
- codenib-0.2.2/web/dist/assets/CodePanel-CuNH_lmV.js +1 -0
- codenib-0.2.1/web/dist/assets/Codemap-zdixuL_p.js → codenib-0.2.2/web/dist/assets/Codemap-EuNd3aNn.js +1 -1
- codenib-0.2.1/web/dist/assets/GraphView-DPjUPH5E.js → codenib-0.2.2/web/dist/assets/GraphView-DbU4s7e6.js +2 -2
- codenib-0.2.1/web/dist/assets/Header-BOQWmvqu.js → codenib-0.2.2/web/dist/assets/Header-DTpu1R8d.js +1 -1
- codenib-0.2.1/web/dist/assets/HighlightedBlock-Dw901pNj.js → codenib-0.2.2/web/dist/assets/HighlightedBlock-AnsqcW7n.js +1 -1
- codenib-0.2.1/web/dist/assets/HighlightedCode-1G3lmJx2.js → codenib-0.2.2/web/dist/assets/HighlightedCode-16YOPh7P.js +1 -1
- codenib-0.2.1/web/dist/assets/Mermaid-BLjyLtH5.js → codenib-0.2.2/web/dist/assets/Mermaid-DoTBXSj1.js +4 -4
- codenib-0.2.1/web/dist/assets/abnfDiagram-N423BO3Z-Dy3ss7CE.js → codenib-0.2.2/web/dist/assets/abnfDiagram-N423BO3Z-DPNUHc2-.js +1 -1
- codenib-0.2.2/web/dist/assets/api-CPMHldTq.js +1 -0
- codenib-0.2.1/web/dist/assets/arc-yUywNrmm.js → codenib-0.2.2/web/dist/assets/arc-CgMW27ju.js +1 -1
- codenib-0.2.1/web/dist/assets/architectureDiagram-T3A2C74G-CToFiY85.js → codenib-0.2.2/web/dist/assets/architectureDiagram-T3A2C74G-DPG84uEH.js +1 -1
- codenib-0.2.1/web/dist/assets/blockDiagram-VBNYF7ZC-Bnzg1RML.js → codenib-0.2.2/web/dist/assets/blockDiagram-VBNYF7ZC-gY-9wuCs.js +1 -1
- codenib-0.2.1/web/dist/assets/c4Diagram-5PPSVZJV-D5NbPc8-.js → codenib-0.2.2/web/dist/assets/c4Diagram-5PPSVZJV-Cvw3QJKZ.js +1 -1
- codenib-0.2.2/web/dist/assets/channel-DQAgHv6Q.js +1 -0
- codenib-0.2.1/web/dist/assets/chunk-2GRJ4B5K-DJfjNYon.js → codenib-0.2.2/web/dist/assets/chunk-2GRJ4B5K-Bd8b6s66.js +1 -1
- codenib-0.2.1/web/dist/assets/chunk-2Q5K7J3B-BeS_lyE4.js → codenib-0.2.2/web/dist/assets/chunk-2Q5K7J3B-D1oWLBG7.js +1 -1
- codenib-0.2.1/web/dist/assets/chunk-5RXB4S5H-BZGW3oat.js → codenib-0.2.2/web/dist/assets/chunk-5RXB4S5H-C3AxE2jy.js +1 -1
- codenib-0.2.1/web/dist/assets/chunk-5VM5RSS4-CZgw_KCU.js → codenib-0.2.2/web/dist/assets/chunk-5VM5RSS4-D6XhP-jw.js +1 -1
- codenib-0.2.1/web/dist/assets/chunk-6Q2QTUOP-C0hNnxhl.js → codenib-0.2.2/web/dist/assets/chunk-6Q2QTUOP-BqxoWlKq.js +1 -1
- codenib-0.2.1/web/dist/assets/chunk-GF5L2VYU-pUMsyRuh.js → codenib-0.2.2/web/dist/assets/chunk-GF5L2VYU-tU5u_HPV.js +1 -1
- codenib-0.2.1/web/dist/assets/chunk-JWPE2WC7-YhLqy_Wp.js → codenib-0.2.2/web/dist/assets/chunk-JWPE2WC7-Ca5gQvfo.js +1 -1
- codenib-0.2.1/web/dist/assets/chunk-KBJHAD2P-Byy1spzR.js → codenib-0.2.2/web/dist/assets/chunk-KBJHAD2P-CJGP4tzF.js +1 -1
- codenib-0.2.1/web/dist/assets/chunk-RYQCIY6F-DJKqS-rL.js → codenib-0.2.2/web/dist/assets/chunk-RYQCIY6F-CccM70iZ.js +1 -1
- codenib-0.2.1/web/dist/assets/chunk-XXDRQBXY-D_S26S9E.js → codenib-0.2.2/web/dist/assets/chunk-XXDRQBXY-CkQOD8ED.js +1 -1
- codenib-0.2.2/web/dist/assets/classDiagram-JCYQIIEL-Mm3oXoXv.js +1 -0
- codenib-0.2.2/web/dist/assets/classDiagram-v2-OCEON4UE-Mm3oXoXv.js +1 -0
- codenib-0.2.1/web/dist/assets/cose-bilkent-JH36ORCC-CcjMZZCt.js → codenib-0.2.2/web/dist/assets/cose-bilkent-JH36ORCC-Dm9rOwqG.js +1 -1
- codenib-0.2.1/web/dist/assets/cynefin-VYW2F7L2-heeOf39K.js → codenib-0.2.2/web/dist/assets/cynefin-VYW2F7L2-DHHQO_Nd.js +1 -1
- codenib-0.2.1/web/dist/assets/cynefinDiagram-MW4NZA55-CUMAEaG9.js → codenib-0.2.2/web/dist/assets/cynefinDiagram-MW4NZA55-ByewwyBe.js +1 -1
- codenib-0.2.1/web/dist/assets/dagre-VZM6K2ZE-ViLuwFOe.js → codenib-0.2.2/web/dist/assets/dagre-VZM6K2ZE-DtWG4zrD.js +1 -1
- codenib-0.2.1/web/dist/assets/diagram-7IWD3JNH-BrfBiV_t.js → codenib-0.2.2/web/dist/assets/diagram-7IWD3JNH-l6R1Fs0x.js +1 -1
- codenib-0.2.1/web/dist/assets/diagram-B4RE2ZJO-sCX6HQwa.js → codenib-0.2.2/web/dist/assets/diagram-B4RE2ZJO-DBSH3eXP.js +1 -1
- codenib-0.2.1/web/dist/assets/diagram-LBJQPF4R-BS23sT-d.js → codenib-0.2.2/web/dist/assets/diagram-LBJQPF4R-qrueljZv.js +1 -1
- codenib-0.2.1/web/dist/assets/diagram-Q27KOJAE-ClCJWNfr.js → codenib-0.2.2/web/dist/assets/diagram-Q27KOJAE-4wm74SS3.js +1 -1
- codenib-0.2.1/web/dist/assets/diagram-UB23O5K3-dgHk66lf.js → codenib-0.2.2/web/dist/assets/diagram-UB23O5K3-cd8PNmv-.js +1 -1
- codenib-0.2.1/web/dist/assets/ebnfDiagram-BXEA7PRR-DjCd7Brk.js → codenib-0.2.2/web/dist/assets/ebnfDiagram-BXEA7PRR-B4idecbY.js +1 -1
- codenib-0.2.1/web/dist/assets/erDiagram-JOGREHBK-Ck4BT9zi.js → codenib-0.2.2/web/dist/assets/erDiagram-JOGREHBK-mTJVh6E5.js +1 -1
- codenib-0.2.1/web/dist/assets/flowDiagram-UKHOOZJN-DLHDFBtl.js → codenib-0.2.2/web/dist/assets/flowDiagram-UKHOOZJN-CkrFSLB5.js +1 -1
- codenib-0.2.1/web/dist/assets/ganttDiagram-PKOTCBZU-CZMcU1od.js → codenib-0.2.2/web/dist/assets/ganttDiagram-PKOTCBZU-hrhdmpWn.js +1 -1
- codenib-0.2.1/web/dist/assets/gitGraphDiagram-DS77QQ5N-DGssT-7E.js → codenib-0.2.2/web/dist/assets/gitGraphDiagram-DS77QQ5N-C1V8kJt8.js +1 -1
- codenib-0.2.1/web/dist/assets/highlight-CatKzijE.js → codenib-0.2.2/web/dist/assets/highlight-BMMw0pcp.js +1 -1
- codenib-0.2.1/web/dist/assets/index-BSmleDd1.js → codenib-0.2.2/web/dist/assets/index-DH1ed8RR.js +6 -6
- codenib-0.2.2/web/dist/assets/index-cFUY6sEV.css +1 -0
- codenib-0.2.1/web/dist/assets/infoDiagram-6WML65LV-Db3xtGXC.js → codenib-0.2.2/web/dist/assets/infoDiagram-6WML65LV-BtARLp8i.js +1 -1
- codenib-0.2.1/web/dist/assets/ishikawaDiagram-WSZJBQD7-KKrq9NZu.js → codenib-0.2.2/web/dist/assets/ishikawaDiagram-WSZJBQD7-Da2YryI-.js +1 -1
- codenib-0.2.1/web/dist/assets/journeyDiagram-NVQOT4AX-D4TJJ2Kf.js → codenib-0.2.2/web/dist/assets/journeyDiagram-NVQOT4AX-CxuMFRtK.js +1 -1
- codenib-0.2.1/web/dist/assets/kanban-definition-27J2QSJJ-DMre8rgX.js → codenib-0.2.2/web/dist/assets/kanban-definition-27J2QSJJ-DP3K-G4t.js +1 -1
- codenib-0.2.1/web/dist/assets/linear-BQ6WF-wb.js → codenib-0.2.2/web/dist/assets/linear-CkOnLbQM.js +1 -1
- codenib-0.2.1/web/dist/assets/mindmap-definition-FAOFIHXS-D9hbLhkJ.js → codenib-0.2.2/web/dist/assets/mindmap-definition-FAOFIHXS-CtUOHHmE.js +1 -1
- codenib-0.2.1/web/dist/assets/page-DnjLV-Jl.js → codenib-0.2.2/web/dist/assets/page-CNtLIuD3.js +1 -1
- codenib-0.2.1/web/dist/assets/page-8oroBMrE.js → codenib-0.2.2/web/dist/assets/page-DcOA6uct.js +1 -1
- codenib-0.2.2/web/dist/assets/page-Qn3AJhlw.js +2 -0
- codenib-0.2.2/web/dist/assets/page-a28I-7Gb.js +1 -0
- codenib-0.2.1/web/dist/assets/pegDiagram-VL7TDLO6-CNvlJssP.js → codenib-0.2.2/web/dist/assets/pegDiagram-VL7TDLO6-CCD_MUJb.js +1 -1
- codenib-0.2.1/web/dist/assets/pieDiagram-7S7Q4E2Y-CgMkh4Jg.js → codenib-0.2.2/web/dist/assets/pieDiagram-7S7Q4E2Y-BGxAmmsz.js +1 -1
- codenib-0.2.1/web/dist/assets/quadrantDiagram-CIZ2JOQS-f5OLyUaA.js → codenib-0.2.2/web/dist/assets/quadrantDiagram-CIZ2JOQS-Ba7_9Wax.js +1 -1
- codenib-0.2.1/web/dist/assets/railroadDiagram-AXF67PYL-CnMSfPV6.js → codenib-0.2.2/web/dist/assets/railroadDiagram-AXF67PYL-Da5bAMQ3.js +1 -1
- codenib-0.2.1/web/dist/assets/requirementDiagram-LRYGKXZP-BzIKmVVu.js → codenib-0.2.2/web/dist/assets/requirementDiagram-LRYGKXZP-DPG4aOUi.js +1 -1
- codenib-0.2.1/web/dist/assets/sankeyDiagram-W5VNT64P-Bst4UhUv.js → codenib-0.2.2/web/dist/assets/sankeyDiagram-W5VNT64P-Wzo-1gO4.js +1 -1
- codenib-0.2.1/web/dist/assets/sequenceDiagram-SI44F4Z6-ctzfVTBi.js → codenib-0.2.2/web/dist/assets/sequenceDiagram-SI44F4Z6-CMyW1qkg.js +1 -1
- codenib-0.2.1/web/dist/assets/sizeCapture-X5ZJPWSS-CZ003cCI.js → codenib-0.2.2/web/dist/assets/sizeCapture-X5ZJPWSS-CznbH2Pl.js +1 -1
- codenib-0.2.1/web/dist/assets/stateDiagram-OKZ733FA-Cj8btPKt.js → codenib-0.2.2/web/dist/assets/stateDiagram-OKZ733FA-C6TxOIOY.js +1 -1
- codenib-0.2.2/web/dist/assets/stateDiagram-v2-UEYNNEHI-DvtHOaBR.js +1 -0
- codenib-0.2.1/web/dist/assets/swimlanes-SLNWSIFB-DkUrCUSS.js → codenib-0.2.2/web/dist/assets/swimlanes-SLNWSIFB-SpEJSmLX.js +2 -2
- codenib-0.2.2/web/dist/assets/swimlanesDiagram-ULZ7WXOC-oYfpSIrb.js +8 -0
- codenib-0.2.1/web/dist/assets/timeline-definition-Z64GVDOM-DOLDEiwe.js → codenib-0.2.2/web/dist/assets/timeline-definition-Z64GVDOM-Dzws7tk8.js +1 -1
- codenib-0.2.1/web/dist/assets/vennDiagram-T6HMQDX7-CcO80YRi.js → codenib-0.2.2/web/dist/assets/vennDiagram-T6HMQDX7-Bz8ACBBt.js +1 -1
- codenib-0.2.1/web/dist/assets/wardleyDiagram-T6FBY63Y-cQ2FAMfk.js → codenib-0.2.2/web/dist/assets/wardleyDiagram-T6FBY63Y-Dba4Uv1N.js +1 -1
- codenib-0.2.1/web/dist/assets/xychartDiagram-ELKLHX3M-DRPK-jDh.js → codenib-0.2.2/web/dist/assets/xychartDiagram-ELKLHX3M-BQVriCQJ.js +1 -1
- {codenib-0.2.1 → codenib-0.2.2}/web/dist/index.html +10 -2
- {codenib-0.2.1 → codenib-0.2.2}/web/index.html +8 -0
- codenib-0.2.2/web/lib/api.test.ts +341 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/lib/api.ts +152 -10
- {codenib-0.2.1 → codenib-0.2.2}/web/lib/citations.test.ts +15 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/lib/citations.ts +8 -1
- codenib-0.2.2/web/lib/relatedWiki.test.ts +127 -0
- codenib-0.2.2/web/lib/relatedWiki.ts +164 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/lib/runtime.test.ts +16 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/lib/runtime.ts +20 -0
- codenib-0.2.2/web/lib/sourceNavigation.test.ts +24 -0
- codenib-0.2.2/web/lib/sourceNavigation.ts +24 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/src/main.tsx +8 -1
- codenib-0.2.2/web/vite.config.test.ts +27 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/vite.config.ts +14 -6
- codenib-0.2.1/codenib/artifacts/security.py +0 -211
- codenib-0.2.1/codenib/clients/guardian/__init__.py +0 -45
- codenib-0.2.1/codenib/clients/guardian/agent.py +0 -122
- codenib-0.2.1/codenib/clients/guardian/aggregation.py +0 -53
- codenib-0.2.1/codenib/clients/guardian/artifacts.py +0 -68
- codenib-0.2.1/codenib/clients/guardian/discovery.py +0 -66
- codenib-0.2.1/codenib/clients/guardian/evidence.py +0 -101
- codenib-0.2.1/codenib/clients/guardian/memory.py +0 -316
- codenib-0.2.1/codenib/clients/guardian/normalization.py +0 -141
- codenib-0.2.1/codenib/clients/guardian/prompts.py +0 -242
- codenib-0.2.1/codenib/clients/guardian/types.py +0 -287
- codenib-0.2.1/codenib/compiler/__init__.py +0 -110
- codenib-0.2.1/codenib/compiler/manifest.py +0 -243
- codenib-0.2.1/codenib/scip_interface/typescript_semantics.py +0 -269
- codenib-0.2.1/codenib/storage/protocols.py +0 -172
- codenib-0.2.1/test/test_cli.py +0 -1577
- codenib-0.2.1/test/test_release_artifacts.py +0 -367
- codenib-0.2.1/web/dist/assets/CodePanel-Djgxf9yA.js +0 -1
- codenib-0.2.1/web/dist/assets/api-R6_McIFV.js +0 -1
- codenib-0.2.1/web/dist/assets/channel-ChMrQwZ3.js +0 -1
- codenib-0.2.1/web/dist/assets/classDiagram-JCYQIIEL-D2TB-l75.js +0 -1
- codenib-0.2.1/web/dist/assets/classDiagram-v2-OCEON4UE-D2TB-l75.js +0 -1
- codenib-0.2.1/web/dist/assets/index-D9elJNZV.css +0 -1
- codenib-0.2.1/web/dist/assets/page-BqZS9Ckw.js +0 -2
- codenib-0.2.1/web/dist/assets/page-D1eysQ-j.js +0 -1
- codenib-0.2.1/web/dist/assets/stateDiagram-v2-UEYNNEHI-Daf8jmFv.js +0 -1
- codenib-0.2.1/web/dist/assets/swimlanesDiagram-ULZ7WXOC-Bf7bI_O3.js +0 -8
- codenib-0.2.1/web/lib/api.test.ts +0 -30
- {codenib-0.2.1 → codenib-0.2.2}/CONTRIBUTING.md +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/LICENSE +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/__main__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/_lazy.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/_optional_entrypoints.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/_owned_file_publication.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/_secret_fields.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/_version.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/_windows_fs_authority.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/agent_types.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/boundary.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/compile.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/extract_agent.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/harness.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/history.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/lsp_graph.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/rerank_agent.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/resource_guard.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/route_context.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/runtime/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/runtime/context.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/runtime/explorer.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/runtime/trace.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/_graphnav.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/bm25_search/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/bm25_search/config.yaml +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/bm25_search/executor.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/bm25_search/skill.md +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/code_to_query/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/code_to_query/config.yaml +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/code_to_query/executor.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/code_to_query/skill.md +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/codenib_context/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/codenib_context/config.yaml +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/codenib_context/executor.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/codenib_context/skill.md +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/context.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/core.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/crossencoder_rerank/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/crossencoder_rerank/config.yaml +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/crossencoder_rerank/executor.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/crossencoder_rerank/skill.md +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/embedding_search/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/embedding_search/config.yaml +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/embedding_search/executor.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/embedding_search/skill.md +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/find_callees/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/find_callees/config.yaml +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/find_callees/executor.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/find_callees/skill.md +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/find_callers/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/find_callers/config.yaml +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/find_callers/executor.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/find_callers/skill.md +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/hybrid_search/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/hybrid_search/config.yaml +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/hybrid_search/executor.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/hybrid_search/skill.md +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/llm_rerank/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/llm_rerank/config.yaml +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/llm_rerank/executor.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/llm_rerank/skill.md +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/loader.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/lsp_definition/config.yaml +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/lsp_definition/executor.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/lsp_definition/skill.md +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/lsp_references/config.yaml +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/lsp_references/executor.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/lsp_references/skill.md +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/lsp_route/config.yaml +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/lsp_route/executor.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/lsp_route/skill.md +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/registry.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/repository_search/config.yaml +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/repository_search/executor.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/repository_search/skill.md +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/trace/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/trace/config.yaml +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/trace/executor.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/trace/skill.md +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/skills/typecheck.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/tool_schema.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/tools/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/tools/defaults.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/tools/grep_worker.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/tools/sandbox.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/tools/spec.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/agent/utils.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/artifacts/archive.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/artifacts/context.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/artifacts/github.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/artifacts/mcp_config.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/agentless_agent.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/agentless_protocol.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/claude_agent.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/codex_agent.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/cosil_agent.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/cosil_protocol.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/execution/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/execution/codex.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/execution/process.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/execution/protocol.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/execution/types.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/guardian/interaction.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/guardian/provenance.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/locagent_agent.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/locagent_protocol.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/clients/orcaloca_agent.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/code_chunking/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/code_chunking/cpp_chunker.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/code_chunking/csharp_chunker.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/code_chunking/go_chunker.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/code_chunking/java_chunker.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/code_chunking/js_chunker.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/code_chunking/kotlin_chunker.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/code_chunking/lua_chunker.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/code_chunking/php_chunker.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/code_chunking/python_chunker.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/code_chunking/ruby_chunker.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/code_chunking/rust_chunker.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/code_chunking/scala_chunker.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/code_chunking/swift_chunker.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/codegraph_onboarding.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/compat_pickle.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/compiler/artifact_fingerprints.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/compiler/params.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/compiler/resources.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/compiler/snapshot_store.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/compiler/verification.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/context_delivery.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/base.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/codenib_base.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/codenib_synthesis.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/collect/difficulty_classifier.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/collect/swebench_sample.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/gt_locate.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/local_json.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/locbench.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/swebench.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/swebench_multilingual.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/synthesize/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/synthesize/_agent.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/synthesize/_types.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/synthesize/context_loader.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/synthesize/query_curator.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/synthesize/query_synthesizer.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/synthesize/verifier.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/synthesize/vocab_guard.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset/utils.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/dataset_ids.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/baseline.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/batch.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/contexts.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/feedback.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/feedback_summary.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/format_diagnostics.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/live_lsp_provider.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/loc_baseline.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_agent_ab.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_agent_study.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_agent_study_analysis.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_agent_study_artifacts.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_agent_study_manifest.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_agent_study_runner.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_baseline.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_latency.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_provider_cli.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_provider_validation.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_readiness.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/lsp_replay_benchmark.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/metrics.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/orchestrator.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/pareto.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/prebuilt.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/preload.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/promotion.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/query_sweep.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/results.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/scoring.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/sweep.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/sweep_config.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/symbols.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/trace_summary.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/agent_runner/verify_expand.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/artifact_bundle.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/artifact_integrity.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/artifact_manifest.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/baseline.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/benchmarks/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/benchmarks/agentless.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/benchmarks/cosil.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/benchmarks/deepswe/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/benchmarks/deepswe/metrics.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/benchmarks/deepswe/results.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/benchmarks/locagent.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/benchmarks/orcaloca.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/benchmarks/policy_benchmark.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/benchmarks/policy_compat.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/benchmarks/swe_explore.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/benchmarks/swe_explore_runner.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/benchmarks/swebench_policy_cases.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/experiments/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/experiments/lsp_agent_study_policy.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/loc_agent_runner.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/pricing/anthropic-direct-2026-08-04.json +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/reports/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/reports/cost_arm_report.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/reports/pricing.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/reports/quality_cost.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/eval/retrieval_eval.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/facts/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/facts/adapters.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/facts/clangd.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/facts/convergence.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/facts/generation.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/facts/model.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/facts/resolver.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/facts/storage.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/git_snapshot.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/backend_alignment.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/dependency.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/incremental/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/incremental/change_mgr.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/incremental/graph_patcher.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/incremental/lsp_client.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/incremental/patcher_base.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/incremental/patcher_cpp.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/incremental/patcher_go.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/incremental/patcher_python.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/incremental/patcher_rust.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/incremental/patcher_ts.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/incremental/subgraph_mgr.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/layers.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/roi_subgraph.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/setup.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/graph/traverse_graph.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/embedding/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/embedding/_lifecycle.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/embedding/artifact_integrity.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/embedding/prompt_registry.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/incremental/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/incremental/chunk_store.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/incremental/embeddings_cache.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/incremental/git_diff.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/incremental/index_updater.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/incremental/state.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/regex_idx/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/regex_idx/regex_idx.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/rerank/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/rerank/cross_encoder.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/sparse_idx/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/sparse_idx/bm25_index.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/trigram/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/index/trigram/zoekt_searcher.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/integrations/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/integrations/_orcaloca_python.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/integrations/_repository.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/integrations/agentless.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/integrations/cosil.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/integrations/locagent.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/integrations/orcaloca.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/integrations/swe_explore.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/languages.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/llm/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/llm/diagnostics.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/llm/litellm_chat.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/llm/options.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/llm/usage.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/log_utils.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/ls_index/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/ls_index/clangd_contract.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/ls_index/clangd_decode.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/ls_index/clangd_indexer.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/ls_index/index_quality.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/ls_index/lsp_graph_decode.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/ls_index/lsp_indexer.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/ls_router.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/mcp/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/mcp/__main__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/mcp/explore_bounds.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/mcp/explore_session.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/mcp/prompts.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/mcp/tool_surface.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/mcp/tools/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/mcp/tools/_validation.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/mcp/tools/dependency.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/mcp/tools/explore.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/mcp/tools/lsp.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/mcp/tools/search.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/mcp/tools/source.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/model/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/model/agentless_pipeline.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/model/bm25_retrieve_pipeline.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/model/dense_graph_expand_rerank_pipeline.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/model/embedding_retrieve_pipeline.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/model/graph_augmented_rerank_pipeline.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/model/graph_retrieve_pipeline.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/model/hybrid_retrieve_pipeline.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/model/retrieval_planner.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/model/retrieve_rerank_pipeline.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/native_index_authorization.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/ops/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/ops/expand.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/ops/filter.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/ops/rerank.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/ops/retrieve.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/ops/transform.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/paths.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/profiler.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/provider_routes.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/sandbox/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/sandbox/protocol.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/fact_batch_buffer.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/query_surface.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip-environment.yml +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip.proto +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_decode_core.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_decode_csharp.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_decode_go.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_decode_java.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_decode_php.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_decode_python.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_decode_ruby.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_decode_rust.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_decode_ts.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_decode_utils.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_filter.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_indexer_base.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_indexer_csharp.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_indexer_go.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_indexer_java.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_indexer_php.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_indexer_python.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_indexer_ruby.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_indexer_rust.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_install.sh +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/scip_interface/scip_pb2.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/search.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/serving/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/serving/drafter/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/serving/drafter/base.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/serving/drafter/copy.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/serving/drafter/fusion.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/serving/drafter/retrieval.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/serving/drafter/suffix_automaton.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/serving/server/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/serving/server/api.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/serving/server/hf_engine.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/serving/server/real_model.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/serving/server/schemas.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/serving/server/sglang.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/serving/server/tokenization.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/serving/server/worker.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/serving/types.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/types.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/utils.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/web/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/web/commit_window.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/web/edge_label.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/web/entrypoints.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/web/launcher.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/web/limits.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/web/ports.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/web/request_limits.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/web/static_server.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/wiki/__init__.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib/wiki/narrator.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib.egg-info/dependency_links.txt +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib.egg-info/entry_points.txt +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib.egg-info/requires.txt +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/codenib.egg-info/top_level.txt +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/setup.cfg +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_ci_policy.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_cli_entrypoints.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_cli_remote_embeddings.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_compat_pickle.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_context_delivery.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_git_snapshot.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_language_capability_matrix.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_languages.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_lazy_imports.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_log_utils.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_ls_router_registry.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_namespace.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_namespace_contract.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_native_index_authorization.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_owned_file_publication.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_paths.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_provider_routes.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_release_metadata.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_repository_summary.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_search.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/test/test_source_classification.py +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/app/add-repo/page.tsx +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/app/page.tsx +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/components/AskBar.tsx +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/components/AskPanel.tsx +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/components/CitationItem.tsx +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/components/CodeGraph.tsx +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/components/Codemap.tsx +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/components/GraphView.tsx +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/components/Header.tsx +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/components/HierarchyMap.test.tsx +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/components/HierarchyMap.tsx +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/components/HighlightedBlock.tsx +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/components/HighlightedCode.tsx +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/components/Markdown.test.tsx +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/components/Markdown.tsx +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/components/Mermaid.tsx +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/components/SystemMap.test.tsx +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/components/SystemMap.tsx +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/dist/assets/cytoscape.esm-CkSuTymj.js +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/dist/assets/defaultLocale-DX6XiGOO.js +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/dist/assets/graph-DOmOIIwC.js +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/dist/assets/highlight-CDab0zVI.css +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/dist/assets/init-Gi6I4Gst.js +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/dist/assets/katex-HP8lGamR.js +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/dist/assets/layout-D-LzfAck.js +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/dist/assets/map-DxJ2ADlA.js +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/dist/assets/ordinal-Cboi1Yqb.js +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/dist/codenib-icon.svg +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/dist/runtime-config.js +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/lib/filesLayout.test.ts +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/lib/filesLayout.ts +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/lib/highlight.test.ts +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/lib/highlight.ts +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/lib/router.tsx +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/loopshot.mjs +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/modules_verify.mjs +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/package-lock.json +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/package.json +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/public/codenib-icon.svg +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/public/runtime-config.js +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/qa_verify.mjs +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/tsconfig.json +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/types/cytoscape-dagre.d.ts +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/types/cytoscape-fcose.d.ts +0 -0
- {codenib-0.2.1 → codenib-0.2.2}/web/verify.mjs +0 -0
|
@@ -11,6 +11,43 @@ All notable user-facing changes are recorded here. CodeNib follows
|
|
|
11
11
|
|
|
12
12
|
## [Unreleased]
|
|
13
13
|
|
|
14
|
+
## [0.2.2] - 2026-08-21
|
|
15
|
+
|
|
16
|
+
### Added
|
|
17
|
+
|
|
18
|
+
- Persistent, exact repository-relative source exclusions through
|
|
19
|
+
`--exclude-dir` and `--clear-exclude-dirs`, with one recorded policy reused
|
|
20
|
+
by CodeGraph, indexing, MCP, Wiki, Web, and public compiler entry points.
|
|
21
|
+
- Manifest 1.2 source-selection identities and builder receipts, while retaining
|
|
22
|
+
strict read compatibility for manifest 1.1 artifacts.
|
|
23
|
+
- Authenticated optional SCIP occurrence-sidecar receipts bound to the same
|
|
24
|
+
owned symbol-graph generation as `graph.pkl`.
|
|
25
|
+
|
|
26
|
+
### Changed
|
|
27
|
+
|
|
28
|
+
- Authenticated indexing now accepts absolute symbolic links only when their
|
|
29
|
+
lexical target remains inside the same pinned repository authority. Expo,
|
|
30
|
+
CocoaPods, and pnpm-style contained link layouts no longer require a broad
|
|
31
|
+
default-ignore rule.
|
|
32
|
+
- CodeGraph status reports the effective source selection, and Wiki, publish,
|
|
33
|
+
doctor, and toolchain flows reuse it instead of silently widening the source
|
|
34
|
+
surface.
|
|
35
|
+
- Manifest-bound C and C++ queries temporarily use the verified persisted
|
|
36
|
+
symbol graph instead of consuming project-local clangd postings directly.
|
|
37
|
+
|
|
38
|
+
### Security
|
|
39
|
+
|
|
40
|
+
- Source paths, graph artifacts, native query routes, and retained manifests
|
|
41
|
+
are checked against the same authenticated source selection before they can
|
|
42
|
+
be published or served. Unproven native routes fail closed to the persisted
|
|
43
|
+
graph.
|
|
44
|
+
- Zoekt builds use a fixed commit-tree contract, private generation
|
|
45
|
+
publication, and an authenticated shard-tree receipt; custom exclusions are
|
|
46
|
+
rejected until the backend can prove that narrower surface end to end.
|
|
47
|
+
- Authenticated MCP `search_zoekt` serving uses a retained Linux `/proc`
|
|
48
|
+
descriptor snapshot. Other platforms fail closed until they have an
|
|
49
|
+
equivalent immutable runtime handoff.
|
|
50
|
+
|
|
14
51
|
## [0.2.1] - 2026-08-14
|
|
15
52
|
|
|
16
53
|
### Added
|
|
@@ -156,7 +193,8 @@ All notable user-facing changes are recorded here. CodeNib follows
|
|
|
156
193
|
- Prepared secretless PyPI publishing through a dedicated GitHub Actions OIDC
|
|
157
194
|
workflow.
|
|
158
195
|
|
|
159
|
-
[Unreleased]: https://github.com/sysevol-ai/CodeNib/compare/v0.2.
|
|
196
|
+
[Unreleased]: https://github.com/sysevol-ai/CodeNib/compare/v0.2.2...HEAD
|
|
197
|
+
[0.2.2]: https://github.com/sysevol-ai/CodeNib/compare/v0.2.1...v0.2.2
|
|
160
198
|
[0.2.1]: https://github.com/sysevol-ai/CodeNib/compare/v0.2.0...v0.2.1
|
|
161
199
|
[0.2.0]: https://github.com/sysevol-ai/CodeNib/compare/v0.1.0...v0.2.0
|
|
162
200
|
[0.2.0a2]: https://github.com/sysevol-ai/CodeNib/compare/620a82d...78e12ac
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: codenib
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.2
|
|
4
4
|
Summary: A multi-view data system for serving repository context to coding agents
|
|
5
5
|
Author-email: Zhongming Yu <zhy025@ucsd.edu>
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -143,15 +143,17 @@ SPDX-License-Identifier: Apache-2.0
|
|
|
143
143
|
</p>
|
|
144
144
|
<p>
|
|
145
145
|
<a href="https://github.com/sysevol-ai/CodeNib/actions/workflows/ci-full.yml"><img src="https://github.com/sysevol-ai/CodeNib/actions/workflows/ci-full.yml/badge.svg" alt="CI"></a>
|
|
146
|
-
<a href="https://pypi.org/project/codenib/"><img src="https://img.shields.io/pypi/v/codenib.svg" alt="PyPI version"></a>
|
|
146
|
+
<a href="https://pypi.org/project/codenib/"><img src="https://img.shields.io/pypi/v/codenib.svg?cacheSeconds=300" alt="PyPI version"></a>
|
|
147
|
+
<a href="https://docs.codenib.ai/codegraph/#one-command-setup"><img src="https://img.shields.io/badge/Claude_Code-D97757?logo=claude&logoColor=fff" alt="Claude Code supported"></a>
|
|
148
|
+
<a href="https://docs.codenib.ai/codegraph/#one-command-setup"><img src="https://img.shields.io/badge/Codex-000?logo=openai&logoColor=fff" alt="Codex supported"></a>
|
|
147
149
|
<a href="https://github.com/sysevol-ai/CodeNib/blob/main/LICENSE"><img src="https://img.shields.io/badge/License-Apache_2.0-blue.svg" alt="License: Apache 2.0"></a>
|
|
148
150
|
<a href="https://github.com/sysevol-ai/CodeNib/blob/main/pyproject.toml"><img src="https://img.shields.io/badge/Python-3.10%2B-3776AB.svg" alt="Python 3.10+"></a>
|
|
149
|
-
<img src="https://img.shields.io/badge/Release-0.2.
|
|
151
|
+
<img src="https://img.shields.io/badge/Release-0.2.2-2563EB.svg" alt="CodeNib 0.2.2">
|
|
150
152
|
</p>
|
|
151
153
|
</div>
|
|
152
154
|
|
|
153
155
|
```bash
|
|
154
|
-
python -m pip install "codenib[graph,mcp]==0.2.
|
|
156
|
+
python -m pip install "codenib[graph,mcp]==0.2.2"
|
|
155
157
|
codenib codegraph init /path/to/your/repo
|
|
156
158
|
```
|
|
157
159
|
|
|
@@ -163,6 +165,11 @@ does not write configuration or indexes into the target repository.
|
|
|
163
165
|
|
|
164
166
|
## News
|
|
165
167
|
|
|
168
|
+
- **2026-08-21 — CodeNib 0.2.2 repository source authority.** Authenticated
|
|
169
|
+
indexing now admits absolute symlinks only when they resolve inside the same
|
|
170
|
+
pinned checkout, and exact root-relative exclusions persist across indexing,
|
|
171
|
+
CodeGraph, MCP, Wiki, and Web runtimes.
|
|
172
|
+
[Release notes](https://docs.codenib.ai/releases/0.2.2/)
|
|
166
173
|
- **2026-08-13 — CodeNib 0.2.1 CodeGraph onboarding.** One command prepares a
|
|
167
174
|
repository graph and connects it to Codex and Claude Code, with idempotent
|
|
168
175
|
status, safe uninstall, and installed-wheel MCP graph verification.
|
|
@@ -196,23 +203,23 @@ does not write configuration or indexes into the target repository.
|
|
|
196
203
|
|
|
197
204
|
| Layer | Responsibility |
|
|
198
205
|
|---|---|
|
|
199
|
-
|
|
|
206
|
+
| View compiler | Chunk source and materialize BM25, dense, graph, and navigation views; reuse current artifacts and atomically rebuild affected views |
|
|
200
207
|
| View manifest | Record repository identity, source fingerprint, builder profile, capabilities, status, and artifact location independently for each view |
|
|
201
208
|
| Context serving | Execute lexical, semantic, hybrid, reranked, and structural query plans while preserving repository-relative source locations |
|
|
202
209
|
| Agent runtime | Expose capability-aware MCP and LSP-shaped tools, assemble bounded evidence, and return citations that agents and humans can inspect |
|
|
203
210
|
|
|
204
211
|
```text
|
|
205
212
|
repository change
|
|
206
|
-
->
|
|
213
|
+
-> reuse current views or rebuild affected views
|
|
207
214
|
-> publish a capability-bearing manifest
|
|
208
215
|
-> plan repository queries
|
|
209
216
|
-> deliver bounded, source-linked context
|
|
210
217
|
```
|
|
211
218
|
|
|
212
|
-
On a later commit, CodeNib
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
219
|
+
On a later commit, CodeNib reuses views whose source and builder identities are
|
|
220
|
+
still current. A requested view affected by source or policy changes currently
|
|
221
|
+
rebuilds in an isolated generation; file- and symbol-level delta repair remains
|
|
222
|
+
disabled until it can use the same pinned source authority.
|
|
216
223
|
|
|
217
224
|
## Quickstart
|
|
218
225
|
|
|
@@ -220,7 +227,7 @@ Requires Python 3.10+ and Git. For an agent-ready CodeGraph with no model or API
|
|
|
220
227
|
key, install the graph and MCP extras and run one command:
|
|
221
228
|
|
|
222
229
|
```bash
|
|
223
|
-
python -m pip install "codenib[graph,mcp]==0.2.
|
|
230
|
+
python -m pip install "codenib[graph,mcp]==0.2.2"
|
|
224
231
|
codenib codegraph init /path/to/repository
|
|
225
232
|
```
|
|
226
233
|
|
|
@@ -231,16 +238,42 @@ Run `codenib codegraph status /path/to/repository` to diagnose the complete
|
|
|
231
238
|
path or `codenib codegraph uninstall /path/to/repository` to remove only the
|
|
232
239
|
managed client registrations. The index remains reusable.
|
|
233
240
|
|
|
241
|
+
Repositories can persist exact root-relative subtree exclusions when generated
|
|
242
|
+
or vendored content should not be indexed:
|
|
243
|
+
|
|
244
|
+
```bash
|
|
245
|
+
codenib codegraph init /path/to/repository \
|
|
246
|
+
--exclude-dir ios/Pods \
|
|
247
|
+
--exclude-dir generated/api
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
Paths use repository-relative POSIX spelling (`/`) and name exact subtrees,
|
|
251
|
+
not globs. Repeat `--exclude-dir` to replace the complete custom exclusion set. Later
|
|
252
|
+
`init` and `index` runs reuse that policy from the manifest; use
|
|
253
|
+
`--clear-exclude-dirs` to return to the default source surface. CodeNib does not
|
|
254
|
+
implicitly treat `.gitignore` as an indexing policy, because tracked and local
|
|
255
|
+
ignored source can still be intentional input.
|
|
256
|
+
|
|
257
|
+
Zoekt supports the default source policy only when its fixed commit tree
|
|
258
|
+
exactly matches the authenticated checkout and contains no tracked path that
|
|
259
|
+
the default policy excludes. It does not currently support a non-empty custom
|
|
260
|
+
exclusion set. A command that explicitly requests the `zoekt` view, including
|
|
261
|
+
`--preset full`, fails closed when either condition is unmet; use the
|
|
262
|
+
CodeGraph, `fast`, or semantic paths instead.
|
|
263
|
+
In 0.2.2 the authenticated MCP `search_zoekt` runtime requires Linux `/proc`
|
|
264
|
+
so the child process can inherit the exact retained shard generation; other
|
|
265
|
+
platforms fail closed instead of reopening a mutable shard path.
|
|
266
|
+
|
|
234
267
|
For a browser Wiki with hybrid BM25+dense retrieval, install the semantic extra:
|
|
235
268
|
|
|
236
269
|
```bash
|
|
237
|
-
python -m pip install "codenib[semantic]==0.2.
|
|
270
|
+
python -m pip install "codenib[semantic]==0.2.2"
|
|
238
271
|
codenib wiki /path/to/repository
|
|
239
272
|
```
|
|
240
273
|
|
|
241
274
|
Both paths keep reusable state under `~/.codenib/repositories` and leave the
|
|
242
275
|
target checkout unchanged. Set `CODENIB_HOME` to relocate state. The
|
|
243
|
-
[0.2.
|
|
276
|
+
[0.2.2 release notes](https://docs.codenib.ai/releases/0.2.2/) record the
|
|
244
277
|
upgrade boundary and installed-product evidence.
|
|
245
278
|
|
|
246
279
|
Preview the CodeGraph operations without installing, indexing, or configuring
|
|
@@ -255,7 +288,7 @@ only their package-level providers; operating-system and project prerequisites
|
|
|
255
288
|
remain explicit:
|
|
256
289
|
|
|
257
290
|
```bash
|
|
258
|
-
python -m pip install "codenib[graph]==0.2.
|
|
291
|
+
python -m pip install "codenib[graph]==0.2.2"
|
|
259
292
|
codenib toolchain install /path/to/repository --scope graph
|
|
260
293
|
codenib doctor /path/to/repository --require graph
|
|
261
294
|
```
|
|
@@ -273,7 +306,7 @@ provider credential; interactive Ask and runtime graph exploration remain on
|
|
|
273
306
|
the local or MCP serving path.
|
|
274
307
|
|
|
275
308
|
For a repository-hosted Wiki, CodeNib also ships a reusable GitHub workflow
|
|
276
|
-
that
|
|
309
|
+
that builds or reuses the same manifest, deploys the static site to Pages,
|
|
277
310
|
and uploads the matching commit-addressed context artifact. Its default
|
|
278
311
|
`semantic` route builds BM25 and vector views with a cached local Hugging Face
|
|
279
312
|
model and needs no API key. An explicit `fast` route avoids the model download;
|
|
@@ -297,7 +330,7 @@ The recommended path configures installed Codex and Claude Code clients through
|
|
|
297
330
|
their native CLIs:
|
|
298
331
|
|
|
299
332
|
```bash
|
|
300
|
-
python -m pip install "codenib[graph,mcp]==0.2.
|
|
333
|
+
python -m pip install "codenib[graph,mcp]==0.2.2"
|
|
301
334
|
codenib codegraph init /path/to/repository
|
|
302
335
|
```
|
|
303
336
|
|
|
@@ -327,7 +360,7 @@ capabilities, loaded views, fusion, graph, and reranking trace.
|
|
|
327
360
|
|
|
328
361
|
| Surface | Purpose |
|
|
329
362
|
|---|---|
|
|
330
|
-
|
|
|
363
|
+
| View compiler | Build independently managed views, reuse current generations, and atomically rebuild changed views under one source identity |
|
|
331
364
|
| Agent context runtime | Plan capability-aware retrieval and navigation, then assemble bounded source-linked evidence |
|
|
332
365
|
| Retrieval | BM25, dense-vector, regex/trigram, Zoekt, fusion, and reranking paths; see the [validated model matrix](https://docs.codenib.ai/rag_ops/#validated-models) |
|
|
333
366
|
| Structural context | SCIP/LSP-backed symbol graphs with source locations and typed edges |
|
|
@@ -376,8 +409,8 @@ running the credential- or toolchain-dependent tiers.
|
|
|
376
409
|
|
|
377
410
|
## Status
|
|
378
411
|
|
|
379
|
-
CodeNib `0.
|
|
380
|
-
|
|
412
|
+
CodeNib `0.2.2` is a beta release. The CLI and manifest format are usable, but
|
|
413
|
+
public interfaces may still change before a stable release. Historical
|
|
381
414
|
research artifacts retain their published dataset identifiers; the maintained
|
|
382
415
|
package, import namespace, commands, and repository use `CodeNib`. See
|
|
383
416
|
[Naming](https://docs.codenib.ai/branding/).
|
|
@@ -34,15 +34,17 @@ SPDX-License-Identifier: Apache-2.0
|
|
|
34
34
|
</p>
|
|
35
35
|
<p>
|
|
36
36
|
<a href="https://github.com/sysevol-ai/CodeNib/actions/workflows/ci-full.yml"><img src="https://github.com/sysevol-ai/CodeNib/actions/workflows/ci-full.yml/badge.svg" alt="CI"></a>
|
|
37
|
-
<a href="https://pypi.org/project/codenib/"><img src="https://img.shields.io/pypi/v/codenib.svg" alt="PyPI version"></a>
|
|
37
|
+
<a href="https://pypi.org/project/codenib/"><img src="https://img.shields.io/pypi/v/codenib.svg?cacheSeconds=300" alt="PyPI version"></a>
|
|
38
|
+
<a href="https://docs.codenib.ai/codegraph/#one-command-setup"><img src="https://img.shields.io/badge/Claude_Code-D97757?logo=claude&logoColor=fff" alt="Claude Code supported"></a>
|
|
39
|
+
<a href="https://docs.codenib.ai/codegraph/#one-command-setup"><img src="https://img.shields.io/badge/Codex-000?logo=openai&logoColor=fff" alt="Codex supported"></a>
|
|
38
40
|
<a href="https://github.com/sysevol-ai/CodeNib/blob/main/LICENSE"><img src="https://img.shields.io/badge/License-Apache_2.0-blue.svg" alt="License: Apache 2.0"></a>
|
|
39
41
|
<a href="https://github.com/sysevol-ai/CodeNib/blob/main/pyproject.toml"><img src="https://img.shields.io/badge/Python-3.10%2B-3776AB.svg" alt="Python 3.10+"></a>
|
|
40
|
-
<img src="https://img.shields.io/badge/Release-0.2.
|
|
42
|
+
<img src="https://img.shields.io/badge/Release-0.2.2-2563EB.svg" alt="CodeNib 0.2.2">
|
|
41
43
|
</p>
|
|
42
44
|
</div>
|
|
43
45
|
|
|
44
46
|
```bash
|
|
45
|
-
python -m pip install "codenib[graph,mcp]==0.2.
|
|
47
|
+
python -m pip install "codenib[graph,mcp]==0.2.2"
|
|
46
48
|
codenib codegraph init /path/to/your/repo
|
|
47
49
|
```
|
|
48
50
|
|
|
@@ -54,6 +56,11 @@ does not write configuration or indexes into the target repository.
|
|
|
54
56
|
|
|
55
57
|
## News
|
|
56
58
|
|
|
59
|
+
- **2026-08-21 — CodeNib 0.2.2 repository source authority.** Authenticated
|
|
60
|
+
indexing now admits absolute symlinks only when they resolve inside the same
|
|
61
|
+
pinned checkout, and exact root-relative exclusions persist across indexing,
|
|
62
|
+
CodeGraph, MCP, Wiki, and Web runtimes.
|
|
63
|
+
[Release notes](https://docs.codenib.ai/releases/0.2.2/)
|
|
57
64
|
- **2026-08-13 — CodeNib 0.2.1 CodeGraph onboarding.** One command prepares a
|
|
58
65
|
repository graph and connects it to Codex and Claude Code, with idempotent
|
|
59
66
|
status, safe uninstall, and installed-wheel MCP graph verification.
|
|
@@ -87,23 +94,23 @@ does not write configuration or indexes into the target repository.
|
|
|
87
94
|
|
|
88
95
|
| Layer | Responsibility |
|
|
89
96
|
|---|---|
|
|
90
|
-
|
|
|
97
|
+
| View compiler | Chunk source and materialize BM25, dense, graph, and navigation views; reuse current artifacts and atomically rebuild affected views |
|
|
91
98
|
| View manifest | Record repository identity, source fingerprint, builder profile, capabilities, status, and artifact location independently for each view |
|
|
92
99
|
| Context serving | Execute lexical, semantic, hybrid, reranked, and structural query plans while preserving repository-relative source locations |
|
|
93
100
|
| Agent runtime | Expose capability-aware MCP and LSP-shaped tools, assemble bounded evidence, and return citations that agents and humans can inspect |
|
|
94
101
|
|
|
95
102
|
```text
|
|
96
103
|
repository change
|
|
97
|
-
->
|
|
104
|
+
-> reuse current views or rebuild affected views
|
|
98
105
|
-> publish a capability-bearing manifest
|
|
99
106
|
-> plan repository queries
|
|
100
107
|
-> deliver bounded, source-linked context
|
|
101
108
|
```
|
|
102
109
|
|
|
103
|
-
On a later commit, CodeNib
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
110
|
+
On a later commit, CodeNib reuses views whose source and builder identities are
|
|
111
|
+
still current. A requested view affected by source or policy changes currently
|
|
112
|
+
rebuilds in an isolated generation; file- and symbol-level delta repair remains
|
|
113
|
+
disabled until it can use the same pinned source authority.
|
|
107
114
|
|
|
108
115
|
## Quickstart
|
|
109
116
|
|
|
@@ -111,7 +118,7 @@ Requires Python 3.10+ and Git. For an agent-ready CodeGraph with no model or API
|
|
|
111
118
|
key, install the graph and MCP extras and run one command:
|
|
112
119
|
|
|
113
120
|
```bash
|
|
114
|
-
python -m pip install "codenib[graph,mcp]==0.2.
|
|
121
|
+
python -m pip install "codenib[graph,mcp]==0.2.2"
|
|
115
122
|
codenib codegraph init /path/to/repository
|
|
116
123
|
```
|
|
117
124
|
|
|
@@ -122,16 +129,42 @@ Run `codenib codegraph status /path/to/repository` to diagnose the complete
|
|
|
122
129
|
path or `codenib codegraph uninstall /path/to/repository` to remove only the
|
|
123
130
|
managed client registrations. The index remains reusable.
|
|
124
131
|
|
|
132
|
+
Repositories can persist exact root-relative subtree exclusions when generated
|
|
133
|
+
or vendored content should not be indexed:
|
|
134
|
+
|
|
135
|
+
```bash
|
|
136
|
+
codenib codegraph init /path/to/repository \
|
|
137
|
+
--exclude-dir ios/Pods \
|
|
138
|
+
--exclude-dir generated/api
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
Paths use repository-relative POSIX spelling (`/`) and name exact subtrees,
|
|
142
|
+
not globs. Repeat `--exclude-dir` to replace the complete custom exclusion set. Later
|
|
143
|
+
`init` and `index` runs reuse that policy from the manifest; use
|
|
144
|
+
`--clear-exclude-dirs` to return to the default source surface. CodeNib does not
|
|
145
|
+
implicitly treat `.gitignore` as an indexing policy, because tracked and local
|
|
146
|
+
ignored source can still be intentional input.
|
|
147
|
+
|
|
148
|
+
Zoekt supports the default source policy only when its fixed commit tree
|
|
149
|
+
exactly matches the authenticated checkout and contains no tracked path that
|
|
150
|
+
the default policy excludes. It does not currently support a non-empty custom
|
|
151
|
+
exclusion set. A command that explicitly requests the `zoekt` view, including
|
|
152
|
+
`--preset full`, fails closed when either condition is unmet; use the
|
|
153
|
+
CodeGraph, `fast`, or semantic paths instead.
|
|
154
|
+
In 0.2.2 the authenticated MCP `search_zoekt` runtime requires Linux `/proc`
|
|
155
|
+
so the child process can inherit the exact retained shard generation; other
|
|
156
|
+
platforms fail closed instead of reopening a mutable shard path.
|
|
157
|
+
|
|
125
158
|
For a browser Wiki with hybrid BM25+dense retrieval, install the semantic extra:
|
|
126
159
|
|
|
127
160
|
```bash
|
|
128
|
-
python -m pip install "codenib[semantic]==0.2.
|
|
161
|
+
python -m pip install "codenib[semantic]==0.2.2"
|
|
129
162
|
codenib wiki /path/to/repository
|
|
130
163
|
```
|
|
131
164
|
|
|
132
165
|
Both paths keep reusable state under `~/.codenib/repositories` and leave the
|
|
133
166
|
target checkout unchanged. Set `CODENIB_HOME` to relocate state. The
|
|
134
|
-
[0.2.
|
|
167
|
+
[0.2.2 release notes](https://docs.codenib.ai/releases/0.2.2/) record the
|
|
135
168
|
upgrade boundary and installed-product evidence.
|
|
136
169
|
|
|
137
170
|
Preview the CodeGraph operations without installing, indexing, or configuring
|
|
@@ -146,7 +179,7 @@ only their package-level providers; operating-system and project prerequisites
|
|
|
146
179
|
remain explicit:
|
|
147
180
|
|
|
148
181
|
```bash
|
|
149
|
-
python -m pip install "codenib[graph]==0.2.
|
|
182
|
+
python -m pip install "codenib[graph]==0.2.2"
|
|
150
183
|
codenib toolchain install /path/to/repository --scope graph
|
|
151
184
|
codenib doctor /path/to/repository --require graph
|
|
152
185
|
```
|
|
@@ -164,7 +197,7 @@ provider credential; interactive Ask and runtime graph exploration remain on
|
|
|
164
197
|
the local or MCP serving path.
|
|
165
198
|
|
|
166
199
|
For a repository-hosted Wiki, CodeNib also ships a reusable GitHub workflow
|
|
167
|
-
that
|
|
200
|
+
that builds or reuses the same manifest, deploys the static site to Pages,
|
|
168
201
|
and uploads the matching commit-addressed context artifact. Its default
|
|
169
202
|
`semantic` route builds BM25 and vector views with a cached local Hugging Face
|
|
170
203
|
model and needs no API key. An explicit `fast` route avoids the model download;
|
|
@@ -188,7 +221,7 @@ The recommended path configures installed Codex and Claude Code clients through
|
|
|
188
221
|
their native CLIs:
|
|
189
222
|
|
|
190
223
|
```bash
|
|
191
|
-
python -m pip install "codenib[graph,mcp]==0.2.
|
|
224
|
+
python -m pip install "codenib[graph,mcp]==0.2.2"
|
|
192
225
|
codenib codegraph init /path/to/repository
|
|
193
226
|
```
|
|
194
227
|
|
|
@@ -218,7 +251,7 @@ capabilities, loaded views, fusion, graph, and reranking trace.
|
|
|
218
251
|
|
|
219
252
|
| Surface | Purpose |
|
|
220
253
|
|---|---|
|
|
221
|
-
|
|
|
254
|
+
| View compiler | Build independently managed views, reuse current generations, and atomically rebuild changed views under one source identity |
|
|
222
255
|
| Agent context runtime | Plan capability-aware retrieval and navigation, then assemble bounded source-linked evidence |
|
|
223
256
|
| Retrieval | BM25, dense-vector, regex/trigram, Zoekt, fusion, and reranking paths; see the [validated model matrix](https://docs.codenib.ai/rag_ops/#validated-models) |
|
|
224
257
|
| Structural context | SCIP/LSP-backed symbol graphs with source locations and typed edges |
|
|
@@ -267,8 +300,8 @@ running the credential- or toolchain-dependent tiers.
|
|
|
267
300
|
|
|
268
301
|
## Status
|
|
269
302
|
|
|
270
|
-
CodeNib `0.
|
|
271
|
-
|
|
303
|
+
CodeNib `0.2.2` is a beta release. The CLI and manifest format are usable, but
|
|
304
|
+
public interfaces may still change before a stable release. Historical
|
|
272
305
|
research artifacts retain their published dataset identifiers; the maintained
|
|
273
306
|
package, import namespace, commands, and repository use `CodeNib`. See
|
|
274
307
|
[Naming](https://docs.codenib.ai/branding/).
|
|
@@ -16,6 +16,8 @@ from ._lazy import exported_dir, load_export
|
|
|
16
16
|
from ._version import __version__
|
|
17
17
|
|
|
18
18
|
if TYPE_CHECKING: # pragma: no cover - imported only by static analyzers
|
|
19
|
+
from codenib._captured_directory import PublishedWorkspaceReceiptOwner
|
|
20
|
+
from codenib._local_workspace_provider import LocalWorkspaceProvider
|
|
19
21
|
from codenib.agent.extract_agent import KeywordExtractor
|
|
20
22
|
from codenib.agent.rerank_agent import RerankAgent
|
|
21
23
|
from codenib.code_chunker import CodeChunker, RepoChunkingConfig
|
|
@@ -30,6 +32,14 @@ if TYPE_CHECKING: # pragma: no cover - imported only by static analyzers
|
|
|
30
32
|
from codenib.search import CodeSearchEngine
|
|
31
33
|
|
|
32
34
|
_EXPORTS = {
|
|
35
|
+
"PublishedWorkspaceReceiptOwner": (
|
|
36
|
+
"codenib._captured_directory",
|
|
37
|
+
"PublishedWorkspaceReceiptOwner",
|
|
38
|
+
),
|
|
39
|
+
"LocalWorkspaceProvider": (
|
|
40
|
+
"codenib._local_workspace_provider",
|
|
41
|
+
"LocalWorkspaceProvider",
|
|
42
|
+
),
|
|
33
43
|
"LSIndexer": ("codenib.ls_router", "LSIndexer"),
|
|
34
44
|
"CodeGraph": ("codenib.graph.code_graph", "CodeGraph"),
|
|
35
45
|
"BM25CodeIndexer": (
|
|
@@ -54,6 +64,8 @@ _EXPORTS = {
|
|
|
54
64
|
|
|
55
65
|
__all__ = [
|
|
56
66
|
"__version__",
|
|
67
|
+
"PublishedWorkspaceReceiptOwner",
|
|
68
|
+
"LocalWorkspaceProvider",
|
|
57
69
|
"LSIndexer",
|
|
58
70
|
"CodeGraph",
|
|
59
71
|
"BM25CodeIndexer",
|