@descryy/adapter-java 0.3.3 → 0.4.0
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.
- package/dist/adapter.d.ts.map +1 -1
- package/dist/adapter.js +34 -7
- package/dist/adapter.js.map +1 -1
- package/dist/extract.d.ts +24 -0
- package/dist/extract.d.ts.map +1 -1
- package/dist/extract.js +76 -47
- package/dist/extract.js.map +1 -1
- package/dist/shape-reach.d.ts +84 -0
- package/dist/shape-reach.d.ts.map +1 -0
- package/dist/shape-reach.js +79 -0
- package/dist/shape-reach.js.map +1 -0
- package/package.json +4 -4
package/dist/adapter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH,OAAO,EAML,KAAK,eAAe,EAGpB,KAAK,eAAe,EAKrB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAyB,cAAc,EAAwB,MAAM,yBAAyB,CAAC;AAItG,OAAO,
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH,OAAO,EAML,KAAK,eAAe,EAGpB,KAAK,eAAe,EAKrB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAyB,cAAc,EAAwB,MAAM,yBAAyB,CAAC;AAItG,OAAO,EAA0C,QAAQ,EAAmB,MAAM,cAAc,CAAC;AAIjG,eAAO,MAAM,UAAU,iBAAiB,CAAC;AACzC;;;;;;kCAMkC;AAClC,eAAO,MAAM,eAAe,EAAE,MAErB,CAAC;AACV,eAAO,MAAM,kBAAkB,wBAAyB,CAAC;AAsCzD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,aAAa,CAAC,EAAE,eAAe,CAAC;CAC1C;AAcD,MAAM,WAAW,WAAY,SAAQ,eAAe;IAClD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,kBAAuB,GAAG,WAAW,CA0P/E;AAED,2DAA2D;AAC3D,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAW7D;AAED,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC"}
|
package/dist/adapter.js
CHANGED
|
@@ -16,7 +16,8 @@ import { CLIENT_CALL_EXTRACTOR, ORM_EXTRACTOR, ROUTE_EXTRACTOR, ROUTE_HANDLER_EX
|
|
|
16
16
|
import { discover, isolateFile, toRepoRelative } from "@descryy/adapter-common";
|
|
17
17
|
import { parserFor, parseText } from "@descryy/adapter-treesitter";
|
|
18
18
|
import { readUnit } from "./parse.js";
|
|
19
|
-
import { extract, DEFAULT_PACKAGE, LANGUAGE } from "./extract.js";
|
|
19
|
+
import { extract, readEntities, DEFAULT_PACKAGE, LANGUAGE } from "./extract.js";
|
|
20
|
+
import { reachedFor, shapeReach } from "./shape-reach.js";
|
|
20
21
|
import { anchorOf, identityPackage, sourceRootOf } from "./roots.js";
|
|
21
22
|
export const ADAPTER_ID = "adapter-java";
|
|
22
23
|
/** The installed package's own declared version — read directly from this
|
|
@@ -64,7 +65,14 @@ function isBuildOutput(file) {
|
|
|
64
65
|
}
|
|
65
66
|
export function createJavaAdapter(options = {}) {
|
|
66
67
|
const globs = options.globs ?? DEFAULT_JAVA_GLOBS;
|
|
67
|
-
|
|
68
|
+
/**
|
|
69
|
+
* The highest level this adapter can reach, not the level a given run does.
|
|
70
|
+
* 3 because `extract.ts` genuinely mints a mapped field shape there from a
|
|
71
|
+
* declared JPA mapping (DEC-202's ground, no type checker); what a run
|
|
72
|
+
* actually reached is `prepare()`'s return, which `shape-reach.ts` measures
|
|
73
|
+
* per repository instead of echoing this number back.
|
|
74
|
+
*/
|
|
75
|
+
const ceiling = options.maxResolution ?? 3;
|
|
68
76
|
let session;
|
|
69
77
|
let parser;
|
|
70
78
|
let nestedCheckouts = [];
|
|
@@ -106,6 +114,13 @@ export function createJavaAdapter(options = {}) {
|
|
|
106
114
|
},
|
|
107
115
|
capabilities() {
|
|
108
116
|
return {
|
|
117
|
+
/**
|
|
118
|
+
* The maximum, declared before any repository is read and therefore
|
|
119
|
+
* never a measurement. R3 is honest as a maximum because a JPA mapping
|
|
120
|
+
* *declares* a shape — see `shape-reach.ts` for what is and is not R3
|
|
121
|
+
* here, and why no `DATABASE_TABLE` is minted from it. A repository
|
|
122
|
+
* with no entity in it runs at R2 and says so in `reachedResolution`.
|
|
123
|
+
*/
|
|
109
124
|
maxResolution: ceiling,
|
|
110
125
|
/**
|
|
111
126
|
* `API_ROUTE`/`API_ENDPOINT`/`MODEL` are claimed: Spring and JPA extractors
|
|
@@ -157,7 +172,11 @@ export function createJavaAdapter(options = {}) {
|
|
|
157
172
|
// materially different framework, reachable without Spring at all.
|
|
158
173
|
// `spring-data-mongodb` names `jpa.ts`'s `@Document` admission, since
|
|
159
174
|
// the field/nullability machinery is shared verbatim with JPA.
|
|
160
|
-
|
|
175
|
+
// Frameworks only, by their own names. `client-call-extractor` was listed
|
|
176
|
+
// here too and is a capability, not a framework — it names what the client
|
|
177
|
+
// reader supplies, already stated correctly in `frameworkCapabilities`
|
|
178
|
+
// below. Listing it twice claimed five bound extractors where four exist.
|
|
179
|
+
frameworkExtractors: ["spring", "jaxrs", "jpa", "spring-data-mongodb"],
|
|
161
180
|
frameworkCapabilities: [ROUTE_EXTRACTOR, ORM_EXTRACTOR, CLIENT_CALL_EXTRACTOR, ROUTE_HANDLER_EXTRACTOR],
|
|
162
181
|
};
|
|
163
182
|
},
|
|
@@ -212,10 +231,15 @@ export function createJavaAdapter(options = {}) {
|
|
|
212
231
|
});
|
|
213
232
|
outcome.tree.delete();
|
|
214
233
|
}
|
|
215
|
-
//
|
|
216
|
-
//
|
|
217
|
-
|
|
218
|
-
|
|
234
|
+
// Not `units.length === 0 ? 0 : ceiling`. A flat ceiling published the
|
|
235
|
+
// same number for every repository that parsed at all — and with the
|
|
236
|
+
// ceiling now 3, it would publish R3 for one containing no mapped
|
|
237
|
+
// entity anywhere, where the highest level any fact in the same batch
|
|
238
|
+
// carries is 2. `shape-reach.ts` holds the reasoning; the rule is that
|
|
239
|
+
// the run publishes the level some fact in it actually carries.
|
|
240
|
+
const reach = units.length === 0 ? undefined : shapeReach(readEntities(units));
|
|
241
|
+
const reached = reachedFor(ceiling, units.length > 0, reach);
|
|
242
|
+
session = { root: ctx.root, files, units, reached, reach, failures, unfinished };
|
|
219
243
|
return reached;
|
|
220
244
|
},
|
|
221
245
|
async parseFiles(files) {
|
|
@@ -269,6 +293,9 @@ export function createJavaAdapter(options = {}) {
|
|
|
269
293
|
producedBy: PRODUCED_BY,
|
|
270
294
|
reached: active.reached,
|
|
271
295
|
units: active.units,
|
|
296
|
+
// Already read in `prepare()`, to decide `reached` — handed on rather
|
|
297
|
+
// than resolved again, so deciding the level costs nothing.
|
|
298
|
+
...(active.reach === undefined ? {} : { entities: active.reach.entities }),
|
|
272
299
|
});
|
|
273
300
|
}
|
|
274
301
|
}
|
package/dist/adapter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAUL,qBAAqB,EACrB,aAAa,EACb,eAAe,EACf,uBAAuB,GACxB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAwB,MAAM,yBAAyB,CAAC;AACtG,OAAO,EAAE,SAAS,EAAE,SAAS,EAAkC,MAAM,6BAA6B,CAAC;AAEnG,OAAO,EAAE,QAAQ,EAAiB,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAmB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
|
package/dist/extract.d.ts
CHANGED
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
*/
|
|
21
21
|
import { type IdentityScope, type IREdge, type IRNode, type ResolutionLevel, type UnresolvedRef } from "@descryy/ir";
|
|
22
22
|
import type { JavaUnit } from "./parse.ts";
|
|
23
|
+
import { type JpaModel } from "./jpa.ts";
|
|
23
24
|
export declare const LANGUAGE = "java";
|
|
24
25
|
/** A compilation unit with no `package` declaration. Not a legal package name,
|
|
25
26
|
* so it cannot collide with one. */
|
|
@@ -30,7 +31,30 @@ export interface ExtractInput {
|
|
|
30
31
|
readonly producedBy: string;
|
|
31
32
|
readonly reached: ResolutionLevel;
|
|
32
33
|
readonly units: readonly JavaUnit[];
|
|
34
|
+
/**
|
|
35
|
+
* The JPA entity map, when the caller already has it. `prepare()` reads it
|
|
36
|
+
* to decide the run's resolution level (`shape-reach.ts`), one step before
|
|
37
|
+
* `extract()` needs it to decide `MODEL` vs `CLASS` — handed on so deciding
|
|
38
|
+
* the level costs nothing. Omitted, it is read here.
|
|
39
|
+
*/
|
|
40
|
+
readonly entities?: ReadonlyMap<string, JpaModel>;
|
|
33
41
|
}
|
|
42
|
+
/**
|
|
43
|
+
* Every declared type, indexed before any node id exists, then every JPA
|
|
44
|
+
* entity resolved against that index.
|
|
45
|
+
*
|
|
46
|
+
* A `MODEL` is a `CLASS` by another name only after the entity decision, and
|
|
47
|
+
* the id hashes the kind (DEC-004) — so the kind must be settled before
|
|
48
|
+
* minting, but settling it needs `@MappedSuperclass` resolution *across*
|
|
49
|
+
* compilation units. Hence a second index, without ids: the alternative,
|
|
50
|
+
* minting a `CLASS` then rewriting its id, is exactly what DEC-004 forbids.
|
|
51
|
+
*
|
|
52
|
+
* Keyed by `identityPackage::fqn`, not `fqn` alone — a fqn isn't unique across
|
|
53
|
+
* source sets (airbyte declares `...RedisDataFactory` twice in two that never
|
|
54
|
+
* share a classpath), and keying on fqn alone would let an `@Entity` in one
|
|
55
|
+
* source set turn its namesake in another into a MODEL it never was.
|
|
56
|
+
*/
|
|
57
|
+
export declare function readEntities(units: readonly JavaUnit[]): ReadonlyMap<string, JpaModel>;
|
|
34
58
|
export interface Extraction {
|
|
35
59
|
readonly nodes: readonly IRNode[];
|
|
36
60
|
readonly edges: readonly IREdge[];
|
package/dist/extract.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract.d.ts","sourceRoot":"","sources":["../src/extract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAOL,KAAK,aAAa,EAClB,KAAK,MAAM,EACX,KAAK,MAAM,EACX,KAAK,eAAe,EACpB,KAAK,aAAa,EACnB,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAiC,QAAQ,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"extract.d.ts","sourceRoot":"","sources":["../src/extract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAOL,KAAK,aAAa,EAClB,KAAK,MAAM,EACX,KAAK,MAAM,EACX,KAAK,eAAe,EACpB,KAAK,aAAa,EACnB,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAiC,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC1E,OAAO,EAAa,KAAK,QAAQ,EAAE,MAAM,UAAU,CAAC;AAKpD,eAAO,MAAM,QAAQ,SAAS,CAAC;AAK/B;qCACqC;AACrC,eAAO,MAAM,eAAe,cAAc,CAAC;AAyC3C,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAClC,QAAQ,CAAC,KAAK,EAAE,SAAS,QAAQ,EAAE,CAAC;IACpC;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CACnD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,QAAQ,EAAE,GAAG,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CA6BtF;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,SAAS,aAAa,EAAE,CAAC;CAC/C;AA6ID,wBAAgB,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,UAAU,CAqrBvD"}
|
package/dist/extract.js
CHANGED
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
*/
|
|
21
21
|
import { edgeId, endpointQsp, nodeId, normaliseEndpointPath, symbolQsp, testCaseQsp, } from "@descryy/ir";
|
|
22
22
|
import { jpaModels } from "./jpa.js";
|
|
23
|
+
import { SHAPE_LEVEL } from "./shape-reach.js";
|
|
23
24
|
import { jaxrsRoutes, springRoutes } from "./spring.js";
|
|
24
25
|
import { clientCalls, endpointFor } from "./client.js";
|
|
25
26
|
export const LANGUAGE = "java";
|
|
@@ -57,6 +58,53 @@ const REASONS = {
|
|
|
57
58
|
"run's analysed set — most often inherited from a supertype or interface this run did not " +
|
|
58
59
|
"read, rather than declared directly on the controller.",
|
|
59
60
|
};
|
|
61
|
+
/**
|
|
62
|
+
* Every declared type, indexed before any node id exists, then every JPA
|
|
63
|
+
* entity resolved against that index.
|
|
64
|
+
*
|
|
65
|
+
* A `MODEL` is a `CLASS` by another name only after the entity decision, and
|
|
66
|
+
* the id hashes the kind (DEC-004) — so the kind must be settled before
|
|
67
|
+
* minting, but settling it needs `@MappedSuperclass` resolution *across*
|
|
68
|
+
* compilation units. Hence a second index, without ids: the alternative,
|
|
69
|
+
* minting a `CLASS` then rewriting its id, is exactly what DEC-004 forbids.
|
|
70
|
+
*
|
|
71
|
+
* Keyed by `identityPackage::fqn`, not `fqn` alone — a fqn isn't unique across
|
|
72
|
+
* source sets (airbyte declares `...RedisDataFactory` twice in two that never
|
|
73
|
+
* share a classpath), and keying on fqn alone would let an `@Entity` in one
|
|
74
|
+
* source set turn its namesake in another into a MODEL it never was.
|
|
75
|
+
*/
|
|
76
|
+
export function readEntities(units) {
|
|
77
|
+
const typesByFqn = new Map();
|
|
78
|
+
for (const unit of units) {
|
|
79
|
+
for (const type of unit.types) {
|
|
80
|
+
const bucket = typesByFqn.get(type.fqn);
|
|
81
|
+
if (bucket === undefined)
|
|
82
|
+
typesByFqn.set(type.fqn, [{ type, unit }]);
|
|
83
|
+
else
|
|
84
|
+
bucket.push({ type, unit });
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
/** A supertype name as written, resolved to its declaration. Same rules as edges. */
|
|
88
|
+
const resolveSuper = (unit, written) => {
|
|
89
|
+
for (const scope of scopesFor(typesByFqn, unit, written)) {
|
|
90
|
+
const found = pick(unit, scope.candidates);
|
|
91
|
+
if ("declared" in found)
|
|
92
|
+
return found.declared;
|
|
93
|
+
// Ambiguous supertype refused rather than guessed — two candidates means
|
|
94
|
+
// two different tables, and picking one puts real columns on the wrong one.
|
|
95
|
+
if (scope.decides)
|
|
96
|
+
return undefined;
|
|
97
|
+
}
|
|
98
|
+
return undefined;
|
|
99
|
+
};
|
|
100
|
+
const entitiesByType = new Map();
|
|
101
|
+
for (const unit of units) {
|
|
102
|
+
for (const model of jpaModels(unit, resolveSuper)) {
|
|
103
|
+
entitiesByType.set(`${unit.identityPackage}::${model.fqn}`, model);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
return entitiesByType;
|
|
107
|
+
}
|
|
60
108
|
/**
|
|
61
109
|
* The qualified symbol path for a Java symbol.
|
|
62
110
|
*
|
|
@@ -232,51 +280,10 @@ export function extract(input) {
|
|
|
232
280
|
const moduleIdOf = new Map();
|
|
233
281
|
/** Simple name -> every analysed fully-qualified name that ends with it. */
|
|
234
282
|
const bySimpleName = new Map();
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
* resolution across compilation units, which needs an index `byFqn` can't
|
|
240
|
-
* be (it holds ids). So types are indexed twice: once without ids for the
|
|
241
|
-
* entity decision, once with them for edges — the alternative, minting then
|
|
242
|
-
* rewriting a `CLASS` id, is exactly what DEC-004 forbids.
|
|
243
|
-
*/
|
|
244
|
-
const typesByFqn = new Map();
|
|
245
|
-
for (const unit of input.units) {
|
|
246
|
-
for (const type of unit.types) {
|
|
247
|
-
const bucket = typesByFqn.get(type.fqn);
|
|
248
|
-
if (bucket === undefined)
|
|
249
|
-
typesByFqn.set(type.fqn, [{ type, unit }]);
|
|
250
|
-
else
|
|
251
|
-
bucket.push({ type, unit });
|
|
252
|
-
}
|
|
253
|
-
}
|
|
254
|
-
/** A supertype name as written, resolved to its declaration. Same rules as edges. */
|
|
255
|
-
const resolveSuper = (unit, written) => {
|
|
256
|
-
for (const scope of scopesFor(typesByFqn, unit, written)) {
|
|
257
|
-
const found = pick(unit, scope.candidates);
|
|
258
|
-
if ("declared" in found)
|
|
259
|
-
return found.declared;
|
|
260
|
-
// Ambiguous supertype refused rather than guessed — two candidates means
|
|
261
|
-
// two different tables, and picking one puts real columns on the wrong one.
|
|
262
|
-
if (scope.decides)
|
|
263
|
-
return undefined;
|
|
264
|
-
}
|
|
265
|
-
return undefined;
|
|
266
|
-
};
|
|
267
|
-
/**
|
|
268
|
-
* The entity map for the whole batch, resolved once before any id is minted.
|
|
269
|
-
* Keyed by `identityPackage::fqn`, not `fqn` alone — a fqn isn't unique
|
|
270
|
-
* across source sets (the same airbyte duplicate `byFqn` records), and
|
|
271
|
-
* keying on fqn alone would let an `@Entity` in one source set turn its
|
|
272
|
-
* namesake in another into a MODEL it never was.
|
|
273
|
-
*/
|
|
274
|
-
const entitiesByType = new Map();
|
|
275
|
-
for (const unit of input.units) {
|
|
276
|
-
for (const model of jpaModels(unit, resolveSuper)) {
|
|
277
|
-
entitiesByType.set(`${unit.identityPackage}::${model.fqn}`, model);
|
|
278
|
-
}
|
|
279
|
-
}
|
|
283
|
+
// Resolved once before any id is minted. `prepare()` needs the same map one
|
|
284
|
+
// step earlier — it decides the run's resolution level from it — so it is
|
|
285
|
+
// read there and handed on here rather than computed twice (`shape-reach.ts`).
|
|
286
|
+
const entitiesByType = input.entities ?? readEntities(input.units);
|
|
280
287
|
for (const unit of input.units) {
|
|
281
288
|
const pkg = unit.identityPackage;
|
|
282
289
|
// Named by its *primary* type, which Java requires to match the file name
|
|
@@ -330,6 +337,19 @@ export function extract(input) {
|
|
|
330
337
|
else
|
|
331
338
|
bucket.push(type.fqn);
|
|
332
339
|
const attrs = { declarationForm: type.kind };
|
|
340
|
+
/**
|
|
341
|
+
* The level this node's strongest fact carries, which for a mapped
|
|
342
|
+
* entity is its shape and for everything else is nothing above R0.
|
|
343
|
+
*
|
|
344
|
+
* A `MODEL` bundles two different claims — *this class is persisted*
|
|
345
|
+
* (one annotation, read at R0/R1) and *this is its mapped shape* (the
|
|
346
|
+
* column-by-column read below) — and only the second is R3-grade. So
|
|
347
|
+
* the shape's level is also stated separately in `attrs.shapeResolution`,
|
|
348
|
+
* DEC-058's carrier, which `descry-core`'s contract engine already
|
|
349
|
+
* reads: a consumer comparing shapes gets the shape's evidence, not the
|
|
350
|
+
* node's weakest.
|
|
351
|
+
*/
|
|
352
|
+
let level = 0;
|
|
333
353
|
if (model !== undefined) {
|
|
334
354
|
attrs["orm"] = "jpa";
|
|
335
355
|
if (model.table !== null)
|
|
@@ -338,8 +358,17 @@ export function extract(input) {
|
|
|
338
358
|
// declaration the framework enforces, not an inference, so its
|
|
339
359
|
// resolution is the evidence's rather than the run's (DEC-058), same
|
|
340
360
|
// as adapter-python's SQLAlchemy reasoning.
|
|
341
|
-
if (model.fields.length > 0)
|
|
361
|
+
if (model.fields.length > 0) {
|
|
342
362
|
attrs["fields"] = model.fields;
|
|
363
|
+
// Never above what the run reached: a caller that capped this
|
|
364
|
+
// adapter at R2 gets the same shape one level down, and the
|
|
365
|
+
// Normaliser rejects a node claiming more than its batch.
|
|
366
|
+
level = Math.min(SHAPE_LEVEL, input.reached);
|
|
367
|
+
attrs["shapeResolution"] = level;
|
|
368
|
+
}
|
|
369
|
+
// A stated nullability this reader could not evaluate is listed, never
|
|
370
|
+
// guessed — and a model with nothing *but* those has had no shape read,
|
|
371
|
+
// so it earns no level here (`shape-reach.ts` counts the same thing).
|
|
343
372
|
if (model.undecided.length > 0)
|
|
344
373
|
attrs["undecidedNullability"] = model.undecided;
|
|
345
374
|
}
|
|
@@ -351,7 +380,7 @@ export function extract(input) {
|
|
|
351
380
|
range: { startLine: type.startLine, endLine: type.endLine },
|
|
352
381
|
language: LANGUAGE,
|
|
353
382
|
producedBy: input.producedBy,
|
|
354
|
-
resolution:
|
|
383
|
+
resolution: level,
|
|
355
384
|
attrs,
|
|
356
385
|
});
|
|
357
386
|
/**
|
package/dist/extract.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../src/extract.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../src/extract.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Which resolution level this repository actually gets Java to.
|
|
3
|
+
*
|
|
4
|
+
* The defect this exists to fix is `adapter-php`'s, one language over:
|
|
5
|
+
* `prepare()` returned a flat `options.maxResolution ?? 2` whenever a single
|
|
6
|
+
* file parsed, so the run published one number for every repository
|
|
7
|
+
* regardless of what was in it. Java's version of that was an *under*claim
|
|
8
|
+
* rather than an over-claim — `jpa.ts` has read column nullability since
|
|
9
|
+
* DEC-127, through a five-step precedence chain, and the level that evidence
|
|
10
|
+
* earns was thrown away. Golden pattern 06 (`requiredAtResolution: 3`) has
|
|
11
|
+
* reported **N/R** for Java rather than SKIP ever since: not "this adapter
|
|
12
|
+
* cannot read ORM nullability", but "this adapter reads it and declares a
|
|
13
|
+
* ceiling below the rung that grades it".
|
|
14
|
+
*
|
|
15
|
+
* ## What is R3 here, and what is not
|
|
16
|
+
*
|
|
17
|
+
* R3 is "+ type checker (shapes)", and **no type checker runs here.** The
|
|
18
|
+
* precedent that makes this honest anyway is DEC-202, already in force for
|
|
19
|
+
* `adapter-php` and for `adapter-sql` (which reaches R3 with no language
|
|
20
|
+
* adapter at all): *a declared schema is R3-grade because the declaration
|
|
21
|
+
* states the shape rather than inferring it.* A JPA mapping is exactly that
|
|
22
|
+
* — `@Entity` admits the class, `@Column(nullable = …)`, `@Id`, `@NotNull`,
|
|
23
|
+
* the primitive/boxed distinction and JPA's own documented default decide
|
|
24
|
+
* each column, and Hibernate enforces the result. Nothing is guessed and
|
|
25
|
+
* nothing is resolved by a checker, in either language.
|
|
26
|
+
*
|
|
27
|
+
* **Exactly one fact kind in this package reaches 3**: the mapped field shape
|
|
28
|
+
* on a `MODEL` (`extract.ts`, the only `SHAPE_LEVEL` there). Routes, calls,
|
|
29
|
+
* type references, inheritance and test coverage all push at 2 or below and
|
|
30
|
+
* are unaffected. If a second fact kind ever earns R3, it is added here in
|
|
31
|
+
* the same commit that earns it — never inferred from the fact that some
|
|
32
|
+
* extractor exists.
|
|
33
|
+
*
|
|
34
|
+
* ## Why a count of shapes and not a density
|
|
35
|
+
*
|
|
36
|
+
* `adapter-python` gates its R3 on measured *annotation density*, because
|
|
37
|
+
* Python's R3 comes from annotations spread across ordinary code and "enough
|
|
38
|
+
* of them" is a real question with a distribution behind it. Java's R3 comes
|
|
39
|
+
* from a mapping that is either declared or is not, so there is no density to
|
|
40
|
+
* measure and a threshold here would be a number with nothing under it — the
|
|
41
|
+
* same reasoning `adapter-php`'s `shape-reach.ts` records for the same split.
|
|
42
|
+
*
|
|
43
|
+
* ## What this does NOT do
|
|
44
|
+
*
|
|
45
|
+
* It does not mint `DATABASE_TABLE`/`DATABASE_COLUMN`. Measured on the
|
|
46
|
+
* conformance corpus: the entity declares `discountCode` and the migration
|
|
47
|
+
* declares `discount_code`, because the physical column name is decided by a
|
|
48
|
+
* *configurable* naming strategy (Spring Boot's `SpringPhysicalNamingStrategy`
|
|
49
|
+
* camel-to-snake, plain Hibernate's implicit strategy as-written) that no
|
|
50
|
+
* source file states. Minting from the class would mint ids that do not join
|
|
51
|
+
* with `adapter-sql`'s for the same table — the exact non-join
|
|
52
|
+
* `databaseTableNodesFromModel` exists to prevent (DEC-240). Precision over
|
|
53
|
+
* recall: the shape is claimed, the physical schema is not.
|
|
54
|
+
*/
|
|
55
|
+
import type { ResolutionLevel } from "@descryy/ir";
|
|
56
|
+
import type { JpaModel } from "./jpa.ts";
|
|
57
|
+
/**
|
|
58
|
+
* The one level `adapter-java` can reach that R2 machinery cannot supply, and
|
|
59
|
+
* the one place in this package that mints at it (`extract.ts`'s `MODEL`
|
|
60
|
+
* shape attrs).
|
|
61
|
+
*/
|
|
62
|
+
export declare const SHAPE_LEVEL: ResolutionLevel;
|
|
63
|
+
export interface ShapeReach {
|
|
64
|
+
/** The entity map, handed on so the caller never pays for it twice. */
|
|
65
|
+
readonly entities: ReadonlyMap<string, JpaModel>;
|
|
66
|
+
/**
|
|
67
|
+
* Entities carrying at least one mapped column whose nullability this run
|
|
68
|
+
* actually decided — the exact condition `extract.ts` uses before writing
|
|
69
|
+
* `attrs.fields` (`model.fields.length > 0`), so this cannot drift into
|
|
70
|
+
* counting a shape that is never emitted. An entity whose every column
|
|
71
|
+
* landed in `undecided` is deliberately not one: a stated answer this
|
|
72
|
+
* reader failed to read is a disclosed refusal, not a shape.
|
|
73
|
+
*/
|
|
74
|
+
readonly mappedShapes: number;
|
|
75
|
+
/** True when at least one fact in this repository genuinely rests on R3. */
|
|
76
|
+
readonly reachesShapes: boolean;
|
|
77
|
+
}
|
|
78
|
+
export declare function shapeReach(entities: ReadonlyMap<string, JpaModel>): ShapeReach;
|
|
79
|
+
/**
|
|
80
|
+
* The level to publish for a run: never above the caller's ceiling, never
|
|
81
|
+
* above what the repository supplied, and 0 when nothing parsed at all.
|
|
82
|
+
*/
|
|
83
|
+
export declare function reachedFor(ceiling: ResolutionLevel, parsedAnything: boolean, reach: ShapeReach | undefined): ResolutionLevel;
|
|
84
|
+
//# sourceMappingURL=shape-reach.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shape-reach.d.ts","sourceRoot":"","sources":["../src/shape-reach.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzC;;;;GAIG;AACH,eAAO,MAAM,WAAW,EAAE,eAAmB,CAAC;AAE9C,MAAM,WAAW,UAAU;IACzB,uEAAuE;IACvE,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACjD;;;;;;;OAOG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,4EAA4E;IAC5E,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;CACjC;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,UAAU,CAI9E;AAED;;;GAGG;AACH,wBAAgB,UAAU,CACxB,OAAO,EAAE,eAAe,EACxB,cAAc,EAAE,OAAO,EACvB,KAAK,EAAE,UAAU,GAAG,SAAS,GAC5B,eAAe,CAIjB"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Which resolution level this repository actually gets Java to.
|
|
3
|
+
*
|
|
4
|
+
* The defect this exists to fix is `adapter-php`'s, one language over:
|
|
5
|
+
* `prepare()` returned a flat `options.maxResolution ?? 2` whenever a single
|
|
6
|
+
* file parsed, so the run published one number for every repository
|
|
7
|
+
* regardless of what was in it. Java's version of that was an *under*claim
|
|
8
|
+
* rather than an over-claim — `jpa.ts` has read column nullability since
|
|
9
|
+
* DEC-127, through a five-step precedence chain, and the level that evidence
|
|
10
|
+
* earns was thrown away. Golden pattern 06 (`requiredAtResolution: 3`) has
|
|
11
|
+
* reported **N/R** for Java rather than SKIP ever since: not "this adapter
|
|
12
|
+
* cannot read ORM nullability", but "this adapter reads it and declares a
|
|
13
|
+
* ceiling below the rung that grades it".
|
|
14
|
+
*
|
|
15
|
+
* ## What is R3 here, and what is not
|
|
16
|
+
*
|
|
17
|
+
* R3 is "+ type checker (shapes)", and **no type checker runs here.** The
|
|
18
|
+
* precedent that makes this honest anyway is DEC-202, already in force for
|
|
19
|
+
* `adapter-php` and for `adapter-sql` (which reaches R3 with no language
|
|
20
|
+
* adapter at all): *a declared schema is R3-grade because the declaration
|
|
21
|
+
* states the shape rather than inferring it.* A JPA mapping is exactly that
|
|
22
|
+
* — `@Entity` admits the class, `@Column(nullable = …)`, `@Id`, `@NotNull`,
|
|
23
|
+
* the primitive/boxed distinction and JPA's own documented default decide
|
|
24
|
+
* each column, and Hibernate enforces the result. Nothing is guessed and
|
|
25
|
+
* nothing is resolved by a checker, in either language.
|
|
26
|
+
*
|
|
27
|
+
* **Exactly one fact kind in this package reaches 3**: the mapped field shape
|
|
28
|
+
* on a `MODEL` (`extract.ts`, the only `SHAPE_LEVEL` there). Routes, calls,
|
|
29
|
+
* type references, inheritance and test coverage all push at 2 or below and
|
|
30
|
+
* are unaffected. If a second fact kind ever earns R3, it is added here in
|
|
31
|
+
* the same commit that earns it — never inferred from the fact that some
|
|
32
|
+
* extractor exists.
|
|
33
|
+
*
|
|
34
|
+
* ## Why a count of shapes and not a density
|
|
35
|
+
*
|
|
36
|
+
* `adapter-python` gates its R3 on measured *annotation density*, because
|
|
37
|
+
* Python's R3 comes from annotations spread across ordinary code and "enough
|
|
38
|
+
* of them" is a real question with a distribution behind it. Java's R3 comes
|
|
39
|
+
* from a mapping that is either declared or is not, so there is no density to
|
|
40
|
+
* measure and a threshold here would be a number with nothing under it — the
|
|
41
|
+
* same reasoning `adapter-php`'s `shape-reach.ts` records for the same split.
|
|
42
|
+
*
|
|
43
|
+
* ## What this does NOT do
|
|
44
|
+
*
|
|
45
|
+
* It does not mint `DATABASE_TABLE`/`DATABASE_COLUMN`. Measured on the
|
|
46
|
+
* conformance corpus: the entity declares `discountCode` and the migration
|
|
47
|
+
* declares `discount_code`, because the physical column name is decided by a
|
|
48
|
+
* *configurable* naming strategy (Spring Boot's `SpringPhysicalNamingStrategy`
|
|
49
|
+
* camel-to-snake, plain Hibernate's implicit strategy as-written) that no
|
|
50
|
+
* source file states. Minting from the class would mint ids that do not join
|
|
51
|
+
* with `adapter-sql`'s for the same table — the exact non-join
|
|
52
|
+
* `databaseTableNodesFromModel` exists to prevent (DEC-240). Precision over
|
|
53
|
+
* recall: the shape is claimed, the physical schema is not.
|
|
54
|
+
*/
|
|
55
|
+
/**
|
|
56
|
+
* The one level `adapter-java` can reach that R2 machinery cannot supply, and
|
|
57
|
+
* the one place in this package that mints at it (`extract.ts`'s `MODEL`
|
|
58
|
+
* shape attrs).
|
|
59
|
+
*/
|
|
60
|
+
export const SHAPE_LEVEL = 3;
|
|
61
|
+
export function shapeReach(entities) {
|
|
62
|
+
let mappedShapes = 0;
|
|
63
|
+
for (const model of entities.values())
|
|
64
|
+
if (model.fields.length > 0)
|
|
65
|
+
mappedShapes += 1;
|
|
66
|
+
return { entities, mappedShapes, reachesShapes: mappedShapes > 0 };
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* The level to publish for a run: never above the caller's ceiling, never
|
|
70
|
+
* above what the repository supplied, and 0 when nothing parsed at all.
|
|
71
|
+
*/
|
|
72
|
+
export function reachedFor(ceiling, parsedAnything, reach) {
|
|
73
|
+
if (!parsedAnything)
|
|
74
|
+
return 0;
|
|
75
|
+
if (ceiling < SHAPE_LEVEL)
|
|
76
|
+
return ceiling;
|
|
77
|
+
return reach?.reachesShapes === true ? ceiling : Math.min(2, ceiling);
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=shape-reach.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shape-reach.js","sourceRoot":"","sources":["../src/shape-reach.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AAMH;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAoB,CAAC,CAAC;AAkB9C,MAAM,UAAU,UAAU,CAAC,QAAuC;IAChE,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE;QAAE,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,YAAY,IAAI,CAAC,CAAC;IACtF,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,GAAG,CAAC,EAAE,CAAC;AACrE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,UAAU,CACxB,OAAwB,EACxB,cAAuB,EACvB,KAA6B;IAE7B,IAAI,CAAC,cAAc;QAAE,OAAO,CAAC,CAAC;IAC9B,IAAI,OAAO,GAAG,WAAW;QAAE,OAAO,OAAO,CAAC;IAC1C,OAAO,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAqB,CAAC;AAC7F,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@descryy/adapter-java",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Java adapter, breadth tier. One grammar and one query set over the shared tree-sitter harness — no JDT, no SCIP, no Spring. Reaches R1 on explicit imports, which is further than a breadth adapter reaches in most languages.",
|
|
6
6
|
"license": "UNLICENSED",
|
|
@@ -37,9 +37,9 @@
|
|
|
37
37
|
"@descryy/adapter-common": "0.2.0",
|
|
38
38
|
"@descryy/adapter-jvm": "0.1.0",
|
|
39
39
|
"@descryy/adapter-treesitter": "0.2.0",
|
|
40
|
-
"@descryy/ir": "0.
|
|
40
|
+
"@descryy/ir": "0.7.0",
|
|
41
41
|
"tree-sitter-java": "0.23.5",
|
|
42
|
-
"@descryy/adapter-sql": "0.
|
|
43
|
-
"@descryy/adapter-openapi": "0.
|
|
42
|
+
"@descryy/adapter-sql": "0.4.0",
|
|
43
|
+
"@descryy/adapter-openapi": "0.4.0"
|
|
44
44
|
}
|
|
45
45
|
}
|