@@ -7,6 +7,45 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77
88## [ Unreleased]
99
10+ ## [ v2.0.0-rc.1] - 2026-07-16
11+
12+ First release candidate for 2.0.0 — the schema-v2 release. Both the TypeScript and Python
13+ facades now speak the analyzers' ** schema 2.0.0** end to end and fail fast on any other version.
14+
15+ ### Changed
16+ - ** BREAKING (Python): the SDK speaks analysis schema 2.0.0 and requires ` codeanalyzer-python>=1.0.2 ` .**
17+ The re-exported Python models follow the schema-v2 renames: ` PyModule.classes ` → ` types ` ,
18+ ` PyClass.methods ` /` inner_classes ` → ` callables ` /` types ` , ` PyCallable.inner_callables ` /` inner_classes `
19+ → ` callables ` /` types ` , and ` PyCallEdge ` is now ` src ` /` dst ` /` prov ` . A callable's source text no
20+ longer lives on a ` code ` field — the SDK recovers it by slicing ` PyModule.source ` with the
21+ callable's byte-offset ` span ` (accessor behavior such as ` get_method_bodies ` is unchanged).
22+ Call-graph node keys remain dotted signatures: schema v2's CanNode (` can:// ` ) edge endpoints are
23+ translated back to signatures; unresolved externals keep their raw ` can:// ` ids. Both Python
24+ backends fail fast on a schema mismatch: the in-process backend checks the ` Analysis ` envelope's
25+ ` schema_version ` , and the Neo4j backend checks the stamp on the scoped ` :PyApplication ` node —
26+ re-analyze / re-emit with ` codeanalyzer-python>=1.0.2 ` if you hit ` CldkSchemaMismatchException ` .
27+ - ** BREAKING (TypeScript): the SDK speaks graph schema 2.0.0 and requires ` codeanalyzer-typescript 1.0.0 ` .**
28+ TS-prefixed graph vocabulary, CanNode keys, and a fail-fast ` schema_version ` check on the
29+ ` :Application ` node. Accessors whose vocabulary is not projected into graph schema 2.0.0
30+ (decorators, fields, imports/exports, variables) raise ` NotImplementedError ` on the Neo4j
31+ backend instead of silently returning wrong data. (#268 )
32+
33+ ### Added
34+ - ** Canonical schema-v2 CPG models** (` cldk.models.cpg ` ): the shared, language-neutral
35+ ` Application ` model tree for schema-2.0.0 analyzer output, modeled once and validated against
36+ real L1–L4 samples from multiple analyzers. (#240 , #274 )
37+ - ** L3/L4 program-slice engine core** (` cldk.graph ` ): forward/backward slicing over schema-v2
38+ CFG/CDG/DDG program graphs. (#270 , #271 )
39+
40+ ### Fixed
41+ - ** TypeScript Neo4j backend guards ambiguous application matches** instead of silently merging
42+ two applications' module scopes. (#268 )
43+
44+ ### Dependencies
45+ - ` codeanalyzer-python ` 0.3.1 → ** 1.0.2** (schema 2.0.0; includes the emitter fix for null ` code `
46+ node properties, codellm-devkit/codeanalyzer-python #104 )
47+ - ` codeanalyzer-typescript ` 0.4.3 → ** 1.0.0** (graph schema 2.0.0)
48+
1049## [ v1.4.3] - 2026-07-14
1150
1251### Fixed
0 commit comments