@blockml/inspect 0.9.1
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/blocks/org/blockml/bml/inspect/InspectOptions.bml +49 -0
- package/blocks/org/blockml/bml/inspect/InspectResult.bml +54 -0
- package/blocks/org/blockml/bml/inspect/InspectType.bml +33 -0
- package/blocks/org/blockml/bml/inspect/InspectTypeRef.bml +52 -0
- package/blocks/org/blockml/bml/inspect/InspectedBlock.bml +81 -0
- package/blocks/org/blockml/bml/inspect/InspectedGenericType.bml +43 -0
- package/blocks/org/blockml/bml/inspect/InspectedImplementation.bml +43 -0
- package/blocks/org/blockml/bml/inspect/InspectedInstance.bml +49 -0
- package/blocks/org/blockml/bml/inspect/InspectedMember.bml +84 -0
- package/blocks/org/blockml/bml/inspect/Library.bml +84 -0
- package/blocks/org/blockml/bml/inspect/README.bml +41 -0
- package/blocks/org/blockml/bml/inspect/capability/InspectBlock.bml +48 -0
- package/blocks/org/blockml/bml/inspect/documentation/ArchitectureOverview.bml +44 -0
- package/blocks/org/blockml/bml/inspect/documentation/DesignDecisions.bml +58 -0
- package/blocks/org/blockml/bml/inspect/documentation/Introduction.bml +43 -0
- package/blocks/org/blockml/bml/inspect/documentation/LayerSeparation.bml +43 -0
- package/blocks/org/blockml/bml/inspect/documentation/PackageOwnership.bml +40 -0
- package/blocks/org/blockml/bml/inspect/documentation/PublicApi.bml +44 -0
- package/blocks/org/blockml/bml/inspect/documentation/ScopeExclusions.bml +45 -0
- package/blocks/org/blockml/bml/inspect/documentation/V1Scope.bml +46 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -0
- package/dist/inspect.d.ts +6 -0
- package/dist/inspect.d.ts.map +1 -0
- package/dist/inspect.js +462 -0
- package/dist/inspect.js.map +1 -0
- package/dist/type-refs.d.ts +6 -0
- package/dist/type-refs.d.ts.map +1 -0
- package/dist/type-refs.js +101 -0
- package/dist/type-refs.js.map +1 -0
- package/dist/types.d.ts +96 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +7 -0
- package/dist/types.js.map +1 -0
- package/package.json +42 -0
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Inspect Capability — InspectBlock
|
|
3
|
+
FQN: org.blockml.bml.inspect.capability.InspectBlock
|
|
4
|
+
-->
|
|
5
|
+
<block
|
|
6
|
+
xmlns="http://blockml.org/bml"
|
|
7
|
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
8
|
+
xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
|
|
9
|
+
"
|
|
10
|
+
xmlns:blockml="org.blockml.bml"
|
|
11
|
+
xmlns:bom="org.blockml.bml.bom"
|
|
12
|
+
xmlns:bomapi="org.blockml.bml.bom.api"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:framework="org.blockml.bml.framework"
|
|
18
|
+
xmlns:fwcap="org.blockml.bml.framework.capability"
|
|
19
|
+
xmlns:inspect="org.blockml.bml.inspect"
|
|
20
|
+
xmlns:inspectcap="org.blockml.bml.inspect.capability"
|
|
21
|
+
xmlns:inspectdocumentation="org.blockml.bml.inspect.documentation"
|
|
22
|
+
xmlns:type="org.blockml.bml.type">
|
|
23
|
+
|
|
24
|
+
<name>InspectBlock</name>
|
|
25
|
+
<type>inspectcap:InspectBlock</type>
|
|
26
|
+
<baseType>core:Capability</baseType>
|
|
27
|
+
<is>Project a Block FQN to an InspectResult</is>
|
|
28
|
+
|
|
29
|
+
<documentation>inspectBlock(fqn, registry, options) uses an existing TypeRegistry. inspectProject(fqn, options) bootstraps via bootstrapFullProjectRegistry (validate --all corpus). No index is written.</documentation>
|
|
30
|
+
|
|
31
|
+
<references>
|
|
32
|
+
<see type="inspect:InspectResult" relation="SeeAlso" />
|
|
33
|
+
<see type="fwcap:BootstrapFullProjectRegistry" relation="SeeAlso" />
|
|
34
|
+
</references>
|
|
35
|
+
|
|
36
|
+
<properties>
|
|
37
|
+
<fqn type="type:Text">
|
|
38
|
+
<documentation>Root Block FQN. (required)</documentation>
|
|
39
|
+
</fqn>
|
|
40
|
+
<options type="inspect:InspectOptions">
|
|
41
|
+
<documentation>Inspect options. (optional)</documentation>
|
|
42
|
+
</options>
|
|
43
|
+
<result type="inspect:InspectResult">
|
|
44
|
+
<documentation>Projection. (required)</documentation>
|
|
45
|
+
</result>
|
|
46
|
+
</properties>
|
|
47
|
+
|
|
48
|
+
</block>
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Inspect Documentation — ArchitectureOverview
|
|
3
|
+
FQN: org.blockml.bml.inspect.documentation.ArchitectureOverview
|
|
4
|
+
-->
|
|
5
|
+
<block
|
|
6
|
+
xmlns="http://blockml.org/bml"
|
|
7
|
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
8
|
+
xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
|
|
9
|
+
"
|
|
10
|
+
xmlns:blockml="org.blockml.bml"
|
|
11
|
+
xmlns:bom="org.blockml.bml.bom"
|
|
12
|
+
xmlns:bomapi="org.blockml.bml.bom.api"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:framework="org.blockml.bml.framework"
|
|
18
|
+
xmlns:fwcap="org.blockml.bml.framework.capability"
|
|
19
|
+
xmlns:inspect="org.blockml.bml.inspect"
|
|
20
|
+
xmlns:inspectcap="org.blockml.bml.inspect.capability"
|
|
21
|
+
xmlns:inspectdocumentation="org.blockml.bml.inspect.documentation"
|
|
22
|
+
xmlns:type="org.blockml.bml.type"
|
|
23
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
24
|
+
|
|
25
|
+
<name>ArchitectureOverview</name>
|
|
26
|
+
<type>inspectdocumentation:ArchitectureOverview</type>
|
|
27
|
+
<baseType>core:Documentation</baseType>
|
|
28
|
+
<is>Registry to inspect projection</is>
|
|
29
|
+
|
|
30
|
+
<documentation>inspectProject: bootstrapFullProjectRegistry → TypeRegistry.get(fqn) → resolveEffectiveMembers → InspectResult JSON.
|
|
31
|
+
|
|
32
|
+
inspectBlock skips bootstrap and projects against a supplied registry.
|
|
33
|
+
|
|
34
|
+
Expansion is a flat blocks map keyed by FQN. depth 0 projects only the root. depth n projects declared member types, contracts, subBlocks, baseType generic arguments, and genericTypes defaultType FQNs up to n hops. The baseType parent is listed as ancestors and is not copied into blocks. baseType keeps generic arguments. genericTypes are declared parameters, not subBlocks.
|
|
35
|
+
|
|
36
|
+
Leaf FQNs under org.blockml.bml.type. and org.blockml.bml.core.ValueType stay as refs.
|
|
37
|
+
|
|
38
|
+
Aggregation members include authored composition instances on the member (not as extra blocks). Documentation longer than 400 characters is truncated with an ellipsis and documentationTruncated=true.</documentation>
|
|
39
|
+
|
|
40
|
+
<references>
|
|
41
|
+
<see type="inspectdocumentation:V1Scope" relation="ReadNext" />
|
|
42
|
+
</references>
|
|
43
|
+
|
|
44
|
+
</block>
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Inspect Documentation — DesignDecisions
|
|
3
|
+
FQN: org.blockml.bml.inspect.documentation.DesignDecisions
|
|
4
|
+
-->
|
|
5
|
+
<block
|
|
6
|
+
xmlns="http://blockml.org/bml"
|
|
7
|
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
8
|
+
xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
|
|
9
|
+
"
|
|
10
|
+
xmlns:blockml="org.blockml.bml"
|
|
11
|
+
xmlns:bom="org.blockml.bml.bom"
|
|
12
|
+
xmlns:bomapi="org.blockml.bml.bom.api"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:framework="org.blockml.bml.framework"
|
|
18
|
+
xmlns:fwcap="org.blockml.bml.framework.capability"
|
|
19
|
+
xmlns:inspect="org.blockml.bml.inspect"
|
|
20
|
+
xmlns:inspectcap="org.blockml.bml.inspect.capability"
|
|
21
|
+
xmlns:inspectdocumentation="org.blockml.bml.inspect.documentation"
|
|
22
|
+
xmlns:type="org.blockml.bml.type"
|
|
23
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
24
|
+
|
|
25
|
+
<name>DesignDecisions</name>
|
|
26
|
+
<type>inspectdocumentation:DesignDecisions</type>
|
|
27
|
+
<baseType>core:Documentation</baseType>
|
|
28
|
+
<is>Normative Inspect decisions INSPECT1–INSPECT10</is>
|
|
29
|
+
|
|
30
|
+
<documentation>
|
|
31
|
+
# Normative Inspect decisions INSPECT1–INSPECT10
|
|
32
|
+
|
|
33
|
+
INSPECT1 CLI verb is inspect; the projection is an Inspect view, not a Resolved BOM.
|
|
34
|
+
|
|
35
|
+
INSPECT2 JSON-only output; --json is accepted and implied.
|
|
36
|
+
|
|
37
|
+
INSPECT3 Default depth 1, allowed 0, cap 3.
|
|
38
|
+
|
|
39
|
+
INSPECT4 Members are effective; inheritedFrom from findLocalMember plus baseType/contract owners.
|
|
40
|
+
|
|
41
|
+
INSPECT5 Expansion follows declared member types, contracts, subBlocks, baseType generic arguments, and genericTypes defaultType FQNs — not the baseType parent, not generic bounds, and not inherited member types.
|
|
42
|
+
|
|
43
|
+
INSPECT6 Leaf FQNs: org.blockml.bml.type.* and org.blockml.bml.core.ValueType.
|
|
44
|
+
|
|
45
|
+
INSPECT7 Flat blocks map; cycles, unresolved, truncated are explicit FQN lists.
|
|
46
|
+
|
|
47
|
+
INSPECT8 Max 48 expanded blocks; documentation truncated to 400 characters with an ellipsis and documentationTruncated=true.
|
|
48
|
+
|
|
49
|
+
INSPECT9 No persistent index; live TypeRegistry via bootstrapFullProjectRegistry.
|
|
50
|
+
|
|
51
|
+
INSPECT10 Inspect does not flatten into BOM and does not round-trip to BML.
|
|
52
|
+
</documentation>
|
|
53
|
+
|
|
54
|
+
<references>
|
|
55
|
+
<see type="inspectdocumentation:PackageOwnership" relation="ReadNext" />
|
|
56
|
+
</references>
|
|
57
|
+
|
|
58
|
+
</block>
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Inspect Documentation — Introduction
|
|
3
|
+
FQN: org.blockml.bml.inspect.documentation.Introduction
|
|
4
|
+
-->
|
|
5
|
+
<block
|
|
6
|
+
xmlns="http://blockml.org/bml"
|
|
7
|
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
8
|
+
xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
|
|
9
|
+
"
|
|
10
|
+
xmlns:blockml="org.blockml.bml"
|
|
11
|
+
xmlns:bom="org.blockml.bml.bom"
|
|
12
|
+
xmlns:bomapi="org.blockml.bml.bom.api"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:framework="org.blockml.bml.framework"
|
|
18
|
+
xmlns:fwcap="org.blockml.bml.framework.capability"
|
|
19
|
+
xmlns:inspect="org.blockml.bml.inspect"
|
|
20
|
+
xmlns:inspectcap="org.blockml.bml.inspect.capability"
|
|
21
|
+
xmlns:inspectdocumentation="org.blockml.bml.inspect.documentation"
|
|
22
|
+
xmlns:type="org.blockml.bml.type"
|
|
23
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
24
|
+
|
|
25
|
+
<name>Introduction</name>
|
|
26
|
+
<type>inspectdocumentation:Introduction</type>
|
|
27
|
+
<baseType>core:Documentation</baseType>
|
|
28
|
+
<is>Purpose and scope of the Inspect package</is>
|
|
29
|
+
|
|
30
|
+
<documentation>The @blockml/inspect package is an LLM read tool. Given a Block FQN it returns a compact JSON projection of the BOM: effective members, type refs, and optional recursive expansion of declared member types.
|
|
31
|
+
|
|
32
|
+
Search answers where something is. Graph answers how it connects. Inspect answers: give me this part of the model already resolved so I can understand it.
|
|
33
|
+
|
|
34
|
+
Aggregation members include authored composition instances. Long documentation is truncated with an ellipsis and documentationTruncated.
|
|
35
|
+
|
|
36
|
+
The inspect view is ephemeral. It is not a canonical model format and is not written back to BML. This library (org.blockml.bml.inspect.*) is the SSOT. TypeScript in packages/inspect/src/ implements it.</documentation>
|
|
37
|
+
|
|
38
|
+
<references>
|
|
39
|
+
<see type="inspectdocumentation:LayerSeparation" relation="ReadNext" />
|
|
40
|
+
<see type="inspectcap:InspectBlock" relation="SeeAlso" />
|
|
41
|
+
</references>
|
|
42
|
+
|
|
43
|
+
</block>
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Inspect Documentation — LayerSeparation
|
|
3
|
+
FQN: org.blockml.bml.inspect.documentation.LayerSeparation
|
|
4
|
+
-->
|
|
5
|
+
<block
|
|
6
|
+
xmlns="http://blockml.org/bml"
|
|
7
|
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
8
|
+
xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
|
|
9
|
+
"
|
|
10
|
+
xmlns:blockml="org.blockml.bml"
|
|
11
|
+
xmlns:bom="org.blockml.bml.bom"
|
|
12
|
+
xmlns:bomapi="org.blockml.bml.bom.api"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:framework="org.blockml.bml.framework"
|
|
18
|
+
xmlns:fwcap="org.blockml.bml.framework.capability"
|
|
19
|
+
xmlns:inspect="org.blockml.bml.inspect"
|
|
20
|
+
xmlns:inspectcap="org.blockml.bml.inspect.capability"
|
|
21
|
+
xmlns:inspectdocumentation="org.blockml.bml.inspect.documentation"
|
|
22
|
+
xmlns:type="org.blockml.bml.type"
|
|
23
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
24
|
+
|
|
25
|
+
<name>LayerSeparation</name>
|
|
26
|
+
<type>inspectdocumentation:LayerSeparation</type>
|
|
27
|
+
<baseType>core:Documentation</baseType>
|
|
28
|
+
<is>Inspect vs framework vs parser vs CLI</is>
|
|
29
|
+
|
|
30
|
+
<documentation>Layers:
|
|
31
|
+
|
|
32
|
+
org.blockml.bml.inspect.* (@blockml/inspect) — InspectResult projection, depth/cycle/budget, leaf-type policy.
|
|
33
|
+
@blockml/framework — TypeRegistry, bootstrapFullProjectRegistry, resolveEffectiveMembers, findLocalMember.
|
|
34
|
+
@blockml/parser / @blockml/bom — BlockDefinition, TypeExpression, MemberDefinition.
|
|
35
|
+
@blockml/cli — blockml inspect command host.
|
|
36
|
+
|
|
37
|
+
Inspect does not parse BML with a second path. It does not own a corpus or an index. It does not depend on @blockml/graph.</documentation>
|
|
38
|
+
|
|
39
|
+
<references>
|
|
40
|
+
<see type="inspectdocumentation:ArchitectureOverview" relation="ReadNext" />
|
|
41
|
+
</references>
|
|
42
|
+
|
|
43
|
+
</block>
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Inspect Documentation — PackageOwnership
|
|
3
|
+
FQN: org.blockml.bml.inspect.documentation.PackageOwnership
|
|
4
|
+
-->
|
|
5
|
+
<block
|
|
6
|
+
xmlns="http://blockml.org/bml"
|
|
7
|
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
8
|
+
xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
|
|
9
|
+
"
|
|
10
|
+
xmlns:blockml="org.blockml.bml"
|
|
11
|
+
xmlns:bom="org.blockml.bml.bom"
|
|
12
|
+
xmlns:bomapi="org.blockml.bml.bom.api"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:framework="org.blockml.bml.framework"
|
|
18
|
+
xmlns:fwcap="org.blockml.bml.framework.capability"
|
|
19
|
+
xmlns:inspect="org.blockml.bml.inspect"
|
|
20
|
+
xmlns:inspectcap="org.blockml.bml.inspect.capability"
|
|
21
|
+
xmlns:inspectdocumentation="org.blockml.bml.inspect.documentation"
|
|
22
|
+
xmlns:type="org.blockml.bml.type"
|
|
23
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
24
|
+
|
|
25
|
+
<name>PackageOwnership</name>
|
|
26
|
+
<type>inspectdocumentation:PackageOwnership</type>
|
|
27
|
+
<baseType>core:Documentation</baseType>
|
|
28
|
+
<is>Toolchain responsibilities for Inspect</is>
|
|
29
|
+
|
|
30
|
+
<documentation>@blockml/inspect — InspectResult projection and this BML library.
|
|
31
|
+
|
|
32
|
+
@blockml/framework — discovery, TypeRegistry, resolveEffectiveMembers, findLocalMember.
|
|
33
|
+
@blockml/cli — blockml inspect command host.
|
|
34
|
+
@blockml/bom — BlockDefinition and TypeExpression shapes.</documentation>
|
|
35
|
+
|
|
36
|
+
<references>
|
|
37
|
+
<see type="inspectdocumentation:ScopeExclusions" relation="ReadNext" />
|
|
38
|
+
</references>
|
|
39
|
+
|
|
40
|
+
</block>
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Inspect Documentation — PublicApi
|
|
3
|
+
FQN: org.blockml.bml.inspect.documentation.PublicApi
|
|
4
|
+
-->
|
|
5
|
+
<block
|
|
6
|
+
xmlns="http://blockml.org/bml"
|
|
7
|
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
8
|
+
xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
|
|
9
|
+
"
|
|
10
|
+
xmlns:blockml="org.blockml.bml"
|
|
11
|
+
xmlns:bom="org.blockml.bml.bom"
|
|
12
|
+
xmlns:bomapi="org.blockml.bml.bom.api"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:framework="org.blockml.bml.framework"
|
|
18
|
+
xmlns:fwcap="org.blockml.bml.framework.capability"
|
|
19
|
+
xmlns:inspect="org.blockml.bml.inspect"
|
|
20
|
+
xmlns:inspectcap="org.blockml.bml.inspect.capability"
|
|
21
|
+
xmlns:inspectdocumentation="org.blockml.bml.inspect.documentation"
|
|
22
|
+
xmlns:type="org.blockml.bml.type"
|
|
23
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
24
|
+
|
|
25
|
+
<name>PublicApi</name>
|
|
26
|
+
<type>inspectdocumentation:PublicApi</type>
|
|
27
|
+
<baseType>core:Documentation</baseType>
|
|
28
|
+
<is>Exported API from packages/inspect/src/index.ts</is>
|
|
29
|
+
|
|
30
|
+
<documentation>inspectBlock(fqn, registry, options?) → InspectResult
|
|
31
|
+
inspectProject(fqn, options?) → InspectResult
|
|
32
|
+
isLeafTypeFqn(fqn) → boolean
|
|
33
|
+
projectTypeExpression(expr, typeFqn?) → InspectTypeRef | undefined
|
|
34
|
+
collectNamedFqns(expr, typeFqn?) → string[]
|
|
35
|
+
|
|
36
|
+
Options: depth?, rootDir?, srcDir?, libraries? (inspectProject), maxBlocks?.
|
|
37
|
+
Constants: DEFAULT_INSPECT_DEPTH, MAX_INSPECT_DEPTH, DEFAULT_MAX_BLOCKS, DOC_TRUNCATE.
|
|
38
|
+
InspectedBlock.baseType is an InspectTypeRef. InspectedBlock.genericTypes are declared parameters (bound + default). InspectedMember.value is a literal property value. InspectedMember.instances are authored composition children. Capability members may include InspectedImplementation (language + truncated source).</documentation>
|
|
39
|
+
|
|
40
|
+
<references>
|
|
41
|
+
<see type="inspectcap:InspectBlock" relation="Defines" />
|
|
42
|
+
</references>
|
|
43
|
+
|
|
44
|
+
</block>
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Inspect Documentation — ScopeExclusions
|
|
3
|
+
FQN: org.blockml.bml.inspect.documentation.ScopeExclusions
|
|
4
|
+
-->
|
|
5
|
+
<block
|
|
6
|
+
xmlns="http://blockml.org/bml"
|
|
7
|
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
8
|
+
xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
|
|
9
|
+
"
|
|
10
|
+
xmlns:blockml="org.blockml.bml"
|
|
11
|
+
xmlns:bom="org.blockml.bml.bom"
|
|
12
|
+
xmlns:bomapi="org.blockml.bml.bom.api"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:framework="org.blockml.bml.framework"
|
|
18
|
+
xmlns:fwcap="org.blockml.bml.framework.capability"
|
|
19
|
+
xmlns:inspect="org.blockml.bml.inspect"
|
|
20
|
+
xmlns:inspectcap="org.blockml.bml.inspect.capability"
|
|
21
|
+
xmlns:inspectdocumentation="org.blockml.bml.inspect.documentation"
|
|
22
|
+
xmlns:type="org.blockml.bml.type"
|
|
23
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
24
|
+
|
|
25
|
+
<name>ScopeExclusions</name>
|
|
26
|
+
<type>inspectdocumentation:ScopeExclusions</type>
|
|
27
|
+
<baseType>core:Documentation</baseType>
|
|
28
|
+
<is>Explicit out-of-scope for @blockml/inspect V1</is>
|
|
29
|
+
|
|
30
|
+
<documentation>Out of scope:
|
|
31
|
+
• Nested type.resolved trees
|
|
32
|
+
• --members declared / --docs full
|
|
33
|
+
• Human pretty-print
|
|
34
|
+
• Expanding the baseType chain into blocks
|
|
35
|
+
• Expanding org.blockml.bml.type.* or core:ValueType
|
|
36
|
+
• FatBlock assembly
|
|
37
|
+
• Persistent index under .blockml/
|
|
38
|
+
• Writing InspectResult back to BML
|
|
39
|
+
• MCP wrapper, documentation see-also edges</documentation>
|
|
40
|
+
|
|
41
|
+
<references>
|
|
42
|
+
<see type="inspectdocumentation:Introduction" relation="SeeAlso" />
|
|
43
|
+
</references>
|
|
44
|
+
|
|
45
|
+
</block>
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Inspect Documentation — V1Scope
|
|
3
|
+
FQN: org.blockml.bml.inspect.documentation.V1Scope
|
|
4
|
+
-->
|
|
5
|
+
<block
|
|
6
|
+
xmlns="http://blockml.org/bml"
|
|
7
|
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
8
|
+
xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
|
|
9
|
+
"
|
|
10
|
+
xmlns:blockml="org.blockml.bml"
|
|
11
|
+
xmlns:bom="org.blockml.bml.bom"
|
|
12
|
+
xmlns:bomapi="org.blockml.bml.bom.api"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:framework="org.blockml.bml.framework"
|
|
18
|
+
xmlns:fwcap="org.blockml.bml.framework.capability"
|
|
19
|
+
xmlns:inspect="org.blockml.bml.inspect"
|
|
20
|
+
xmlns:inspectcap="org.blockml.bml.inspect.capability"
|
|
21
|
+
xmlns:inspectdocumentation="org.blockml.bml.inspect.documentation"
|
|
22
|
+
xmlns:type="org.blockml.bml.type"
|
|
23
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
24
|
+
|
|
25
|
+
<name>V1Scope</name>
|
|
26
|
+
<type>inspectdocumentation:V1Scope</type>
|
|
27
|
+
<baseType>core:Documentation</baseType>
|
|
28
|
+
<is>Explicit V1 capabilities</is>
|
|
29
|
+
|
|
30
|
+
<documentation>In scope V1:
|
|
31
|
+
• inspectBlock / inspectProject over the validate --all TypeRegistry
|
|
32
|
+
• Effective members with inheritedFrom
|
|
33
|
+
• Compact TypeExpression projection; baseType keeps generic arguments; genericTypes on InspectedBlock
|
|
34
|
+
• depth 0..3 (default 1), cycle detection, 48-block budget
|
|
35
|
+
• Aggregation composition instances (enum literals, Library catalog FQNs, nested fills)
|
|
36
|
+
• Capability implementation language and truncated source
|
|
37
|
+
• documentationTruncated when documentation exceeds 400 characters
|
|
38
|
+
• JSON-only CLI: blockml inspect FQN [--depth n]
|
|
39
|
+
|
|
40
|
+
Out of scope: see ScopeExclusions.</documentation>
|
|
41
|
+
|
|
42
|
+
<references>
|
|
43
|
+
<see type="inspectdocumentation:ScopeExclusions" relation="SeeAlso" />
|
|
44
|
+
</references>
|
|
45
|
+
|
|
46
|
+
</block>
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { inspectBlock, inspectProject, isLeafTypeFqn, } from "./inspect.js";
|
|
2
|
+
export { DEFAULT_INSPECT_DEPTH, DEFAULT_MAX_BLOCKS, DOC_TRUNCATE, MAX_INSPECT_DEPTH, TYPE_PACKAGE_PREFIX, VALUE_TYPE_FQN, } from "./types.js";
|
|
3
|
+
export type { InspectBlockOptions, InspectedBlock, InspectedGenericType, InspectedImplementation, InspectedInstance, InspectedMember, InspectOrigin, InspectProjectOptions, InspectResult, InspectStructField, InspectTypeKind, InspectTypeRef, } from "./types.js";
|
|
4
|
+
export { collectNamedFqns, multiplicityLabel, projectTypeExpression } from "./type-refs.js";
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,cAAc,EACd,aAAa,GACd,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,EACnB,cAAc,GACf,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,mBAAmB,EACnB,cAAc,EACd,oBAAoB,EACpB,uBAAuB,EACvB,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,qBAAqB,EACrB,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,cAAc,GACf,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { inspectBlock, inspectProject, isLeafTypeFqn, } from "./inspect.js";
|
|
2
|
+
export { DEFAULT_INSPECT_DEPTH, DEFAULT_MAX_BLOCKS, DOC_TRUNCATE, MAX_INSPECT_DEPTH, TYPE_PACKAGE_PREFIX, VALUE_TYPE_FQN, } from "./types.js";
|
|
3
|
+
export { collectNamedFqns, multiplicityLabel, projectTypeExpression } from "./type-refs.js";
|
|
4
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,cAAc,EACd,aAAa,GACd,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,EACnB,cAAc,GACf,MAAM,YAAY,CAAC;AAepB,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type TypeRegistry } from "@blockml/framework";
|
|
2
|
+
import { type InspectBlockOptions, type InspectProjectOptions, type InspectResult } from "./types.js";
|
|
3
|
+
export declare function isLeafTypeFqn(fqn: string): boolean;
|
|
4
|
+
export declare function inspectBlock(fqn: string, registry: TypeRegistry, options?: InspectBlockOptions): InspectResult;
|
|
5
|
+
export declare function inspectProject(fqn: string, options?: InspectProjectOptions): InspectResult;
|
|
6
|
+
//# sourceMappingURL=inspect.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../src/inspect.ts"],"names":[],"mappings":"AAYA,OAAO,EAOL,KAAK,YAAY,EAClB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAOL,KAAK,mBAAmB,EAOxB,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAEnB,MAAM,YAAY,CAAC;AAUpB,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAElD;AAyaD,wBAAgB,YAAY,CAC1B,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,YAAY,EACtB,OAAO,GAAE,mBAAwB,GAChC,aAAa,CAmDf;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,qBAA0B,GAAG,aAAa,CAkB9F"}
|