mcard-js 2.1.22 → 2.1.24
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/README.md +35 -0
- package/dist/model/PCard.d.ts +79 -33
- package/dist/model/PCard.d.ts.map +1 -1
- package/dist/model/PCard.js +91 -34
- package/dist/model/PCard.js.map +1 -1
- package/dist/ptr/Bridgelet.d.ts +180 -0
- package/dist/ptr/Bridgelet.d.ts.map +1 -0
- package/dist/ptr/Bridgelet.js +296 -0
- package/dist/ptr/Bridgelet.js.map +1 -0
- package/dist/ptr/CLMIntrospection.d.ts +169 -0
- package/dist/ptr/CLMIntrospection.d.ts.map +1 -0
- package/dist/ptr/CLMIntrospection.js +329 -0
- package/dist/ptr/CLMIntrospection.js.map +1 -0
- package/dist/ptr/OpenTelemetrySidecar.d.ts +144 -0
- package/dist/ptr/OpenTelemetrySidecar.d.ts.map +1 -0
- package/dist/ptr/OpenTelemetrySidecar.js +232 -0
- package/dist/ptr/OpenTelemetrySidecar.js.map +1 -0
- package/dist/ptr/node/Action.d.ts +19 -0
- package/dist/ptr/node/Action.d.ts.map +1 -1
- package/dist/ptr/node/Action.js +107 -0
- package/dist/ptr/node/Action.js.map +1 -1
- package/dist/ptr/node/clm/builtins/index.d.ts +4 -0
- package/dist/ptr/node/clm/builtins/index.d.ts.map +1 -1
- package/dist/ptr/node/clm/builtins/index.js +14 -0
- package/dist/ptr/node/clm/builtins/index.js.map +1 -1
- package/dist/ptr/node/clm/builtins/websocket-server.d.ts +34 -0
- package/dist/ptr/node/clm/builtins/websocket-server.d.ts.map +1 -0
- package/dist/ptr/node/clm/builtins/websocket-server.js +214 -0
- package/dist/ptr/node/clm/builtins/websocket-server.js.map +1 -0
- package/dist/ptr/node/clm/index.d.ts +2 -1
- package/dist/ptr/node/clm/index.d.ts.map +1 -1
- package/dist/ptr/node/clm/index.js +2 -1
- package/dist/ptr/node/clm/index.js.map +1 -1
- package/dist/ptr/node/clm/runner.d.ts.map +1 -1
- package/dist/ptr/node/clm/runner.js +12 -4
- package/dist/ptr/node/clm/runner.js.map +1 -1
- package/package.json +5 -3
- package/schema/mcard_schema.sql +125 -0
- package/schema/mcard_vector_schema.sql +283 -0
package/README.md
CHANGED
|
@@ -13,6 +13,8 @@ Full-featured TypeScript implementation of MCard content-addressable storage, su
|
|
|
13
13
|
- **UTF-8 Handles**: International support (文檔, مستند, ドキュメント, документ)
|
|
14
14
|
- **Monadic API**: Maybe, Either, IO monads for functional composition
|
|
15
15
|
- **PTR Runtime**: Polynomial Type Runtime with polyglot execution (JS, Python, Rust, C, WASM, Lean)
|
|
16
|
+
- **Bridgelet**: Universal Vehicle for cross-runtime execution (JS ↔ Python)
|
|
17
|
+
- **Introspection**: Recursive analysis of CLM composition and dependencies
|
|
16
18
|
- **LLM Integration**: Ollama, WebLLM (browser), and MLC-LLM providers
|
|
17
19
|
- **Vector Search**: sqlite-vec extension for semantic similarity search
|
|
18
20
|
|
|
@@ -607,6 +609,39 @@ To run integration tests against a live Ollama instance:
|
|
|
607
609
|
npx vitest tests/rag/Integration.test.ts
|
|
608
610
|
```
|
|
609
611
|
|
|
612
|
+
## Version 0.1.42 / 2.1.24 Release Notes (January 13, 2026)
|
|
613
|
+
> Single Source of Truth Schema Synchronization
|
|
614
|
+
|
|
615
|
+
### 🔄 Schema Synchronization
|
|
616
|
+
* **Unified Schema Source**: `mcard-js` now strictly uses the canonical SQL schema files (`mcard_schema.sql`, `mcard_vector_schema.sql`) from the project root.
|
|
617
|
+
* **Distribution Integrity**: The `npm` package now includes the raw SQL schema files, ensuring guaranteed parity with the Python implementation.
|
|
618
|
+
* **Path Resolution**: Robust logic to resolve schema files in both development (monorepo) and production (dependency) contexts.
|
|
619
|
+
|
|
620
|
+
---
|
|
621
|
+
|
|
622
|
+
## Version 0.1.43 / 2.1.23 Release Notes (January 8, 2026)
|
|
623
|
+
> CLM REPL Architecture, Bridgelet, and Introspection
|
|
624
|
+
|
|
625
|
+
### 🌉 Bridgelet Universal Vehicle
|
|
626
|
+
* **Cross-Language Execution**: New `Bridgelet` class allows moving execution between runtimes (e.g., JS ↔ Python) via content-addressable MCards.
|
|
627
|
+
* **Unified Interface**: `invoke(pcardHash, inputVCardHash)` works consistently across adapters.
|
|
628
|
+
* **Architecture**: Implements the "Universal Vehicle" pattern from the CLM REPL Specification.
|
|
629
|
+
|
|
630
|
+
### 🔍 Recursive CLM Introspection
|
|
631
|
+
* **Hierarchy Analysis**: `CLMIntrospector` builds a tree of CLM dependencies, enabling visualization of complex compositions.
|
|
632
|
+
* **Cycle Detection**: Automatically detects and warns about infinite recursion loops in CLM references.
|
|
633
|
+
* **Composition Analysis**: Distinguishes between Sequential (Coend) and Parallel (Tensor) compositions.
|
|
634
|
+
|
|
635
|
+
### 🔭 OpenTelemetry Observability
|
|
636
|
+
* **REPL Tracer**: `OpenTelemetrySidecar` traces `prep`, `exec`, `post`, and `await` phases of the CLM execution loop.
|
|
637
|
+
* **Distributed Tracing**: Correlates spans across polyglot boundaries (e.g., JS calling Python).
|
|
638
|
+
|
|
639
|
+
### 🧪 Test Coverage
|
|
640
|
+
* **New Tests**: Added 32 new unit tests covering Bridgelet, Introspection, and Observability.
|
|
641
|
+
* **Stability**: All 500+ existing tests passing.
|
|
642
|
+
|
|
643
|
+
---
|
|
644
|
+
|
|
610
645
|
## Version 2.1.16 Release Notes (December 16, 2025)
|
|
611
646
|
> Feature Parity, Refactoring, and UPTV Alignment
|
|
612
647
|
|
package/dist/model/PCard.d.ts
CHANGED
|
@@ -4,53 +4,77 @@
|
|
|
4
4
|
* This module defines PCard, the execution unit in the MVP Cards architecture.
|
|
5
5
|
* PCards are MCards containing a valid CLM (Cubical Logic Model) specification.
|
|
6
6
|
*
|
|
7
|
-
* ##
|
|
7
|
+
* ## Categorical Foundation: STRONG PROFUNCTOR
|
|
8
8
|
*
|
|
9
|
-
* PCard
|
|
10
|
-
* - **MCard (Monad)**: Data container
|
|
11
|
-
* - **PCard (Functor)**: Pure transformation `fmap :: (a -> b) -> F a -> F b`
|
|
12
|
-
* - **VCard (Applicative)**: Context-aware application
|
|
9
|
+
* PCard implements the Strong Profunctor pattern from category theory:
|
|
13
10
|
*
|
|
14
|
-
*
|
|
11
|
+
* P: A^op × B → Set
|
|
15
12
|
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
13
|
+
* Where:
|
|
14
|
+
* - A^op denotes contravariance in input types (accepts MORE general)
|
|
15
|
+
* - B denotes covariance in output types (produces MORE specific)
|
|
16
|
+
* - Set is the category of sets (our value space)
|
|
20
17
|
*
|
|
21
|
-
*
|
|
18
|
+
* The "Strong" property means PCard supports:
|
|
19
|
+
* - first: P(A, B) → P(C × A, C × B) (threading context through)
|
|
20
|
+
* - second: P(A, B) → P(A × C, B × C) (preserving additional structure)
|
|
21
|
+
*
|
|
22
|
+
* ## Composition via Coend
|
|
22
23
|
*
|
|
23
|
-
*
|
|
24
|
+
* Two PCards compose via the Coend (categorical integral):
|
|
24
25
|
*
|
|
25
|
-
*
|
|
26
|
-
* M' = M - •t + t•
|
|
27
|
-
* ```
|
|
26
|
+
* (P ⨾ Q)(A, C) = ∫ᴮ P(A, B) × Q(B, C)
|
|
28
27
|
*
|
|
29
28
|
* Where:
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
29
|
+
* - ∫ᴮ is the Coend over the intermediate type B
|
|
30
|
+
* - P(A, B) is the first PCard (input A, output B)
|
|
31
|
+
* - Q(B, C) is the second PCard (input B, output C)
|
|
32
|
+
* - Result is a new PCard from A to C
|
|
33
|
+
*
|
|
34
|
+
* The `andThen()` method implements this Coend composition.
|
|
33
35
|
*
|
|
34
|
-
*
|
|
36
|
+
* ## SMC Structure (Symmetric Monoidal Category)
|
|
35
37
|
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
*
|
|
38
|
+
* PCard composition forms a Symmetric Monoidal Category:
|
|
39
|
+
* - **Identity**: The "pass-through" PCard
|
|
40
|
+
* - **Composition**: Sequential chaining via `andThen()` (;)
|
|
41
|
+
* - **Tensor Product**: Parallel composition via `andAlso()` (⊗)
|
|
42
|
+
* - **Symmetry**: Port swapping via `swap()` (σ)
|
|
43
|
+
*
|
|
44
|
+
* ## Functor Role in MVP Cards Hierarchy
|
|
45
|
+
*
|
|
46
|
+
* PCard is the **Functor** in the categorical hierarchy:
|
|
47
|
+
* - **MCard (Monad)**: Data container
|
|
48
|
+
* - **PCard (Functor)**: Pure transformation `fmap :: (a -> b) -> F a -> F b`
|
|
49
|
+
* - **VCard (Applicative)**: Context-aware application
|
|
50
|
+
*
|
|
51
|
+
* ## Petri Net Role: TRANSITION
|
|
52
|
+
*
|
|
53
|
+
* In the Categorical Petri Net model, PCard is the **Transition**:
|
|
54
|
+
* - Consumes input VCards (Tokens) from input Places
|
|
55
|
+
* - Executes CLM logic (Abstract → Concrete transformation)
|
|
56
|
+
* - Produces output VCards (Tokens) for output Places
|
|
57
|
+
*
|
|
58
|
+
* ### The Firing Rule
|
|
59
|
+
*
|
|
60
|
+
* M' = M - •t + t•
|
|
61
|
+
*
|
|
62
|
+
* Where:
|
|
63
|
+
* - M = Current marking (token distribution)
|
|
64
|
+
* - •t = Pre-set (input VCards required)
|
|
65
|
+
* - t• = Post-set (output VCards produced)
|
|
42
66
|
*
|
|
43
67
|
* ## CLM Triad: Abstract, Concrete, Balanced
|
|
44
68
|
*
|
|
45
69
|
* PCard content encodes the three dimensions:
|
|
46
|
-
*
|
|
47
|
-
*
|
|
48
|
-
*
|
|
70
|
+
* - **Abstract (A)**: WHY - Specification, intent, type signature
|
|
71
|
+
* - **Concrete (C)**: HOW - Implementation, runtime logic
|
|
72
|
+
* - **Balanced (B)**: WHAT - Tests, verification expectations
|
|
49
73
|
*
|
|
50
74
|
* ## DOTS Vocabulary Role: LENS + CHART
|
|
51
75
|
*
|
|
52
|
-
*
|
|
53
|
-
*
|
|
76
|
+
* - **Lens**: Tight morphism (Abstract ↔ Concrete coherence)
|
|
77
|
+
* - **Chart**: Loose morphism (Balanced expectations wiring)
|
|
54
78
|
*
|
|
55
79
|
* @see docs/PCard_Impl.md for full implementation specification
|
|
56
80
|
*/
|
|
@@ -132,10 +156,32 @@ export declare class PCard extends MCard {
|
|
|
132
156
|
*/
|
|
133
157
|
get balancedExpectations(): any;
|
|
134
158
|
/**
|
|
135
|
-
* Sequential Composition (
|
|
159
|
+
* Sequential Composition via Coend (P ⨾ Q)
|
|
160
|
+
*
|
|
161
|
+
* Implements profunctor composition using the Coend formula:
|
|
162
|
+
*
|
|
163
|
+
* (P ⨾ Q)(A, C) = ∫ᴮ P(A, B) × Q(B, C)
|
|
164
|
+
*
|
|
165
|
+
* Where:
|
|
166
|
+
* - this is P: A → B
|
|
167
|
+
* - otherPCard is Q: B → C
|
|
168
|
+
* - Result is P ⨾ Q: A → C
|
|
169
|
+
*
|
|
170
|
+
* The Coend (∫ᴮ) "integrates out" the intermediate type B by:
|
|
171
|
+
* 1. Matching P's output type with Q's input type
|
|
172
|
+
* 2. Creating a chain where P's result feeds into Q
|
|
173
|
+
* 3. The composition is associative: (P ⨾ Q) ⨾ R = P ⨾ (Q ⨾ R)
|
|
174
|
+
*
|
|
175
|
+
* In PTR execution:
|
|
176
|
+
* - P is executed first (prep → exec → post)
|
|
177
|
+
* - P's output VCard becomes Q's input VCard
|
|
178
|
+
* - Q is executed second
|
|
179
|
+
* - Final result is Q's output VCard
|
|
180
|
+
*
|
|
181
|
+
* Note: Named 'andThen' to avoid conflict with Promise.then (Thenable).
|
|
136
182
|
*
|
|
137
|
-
*
|
|
138
|
-
*
|
|
183
|
+
* @param otherPCard - The PCard to execute after this one (Q in P ⨾ Q)
|
|
184
|
+
* @returns A new PCard representing the composed profunctor (P ⨾ Q)
|
|
139
185
|
*/
|
|
140
186
|
andThen(otherPCard: PCard): Promise<PCard>;
|
|
141
187
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PCard.d.ts","sourceRoot":"","sources":["../../src/model/PCard.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"PCard.d.ts","sourceRoot":"","sources":["../../src/model/PCard.ts"],"names":[],"mappings":"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"}
|
package/dist/model/PCard.js
CHANGED
|
@@ -4,53 +4,77 @@
|
|
|
4
4
|
* This module defines PCard, the execution unit in the MVP Cards architecture.
|
|
5
5
|
* PCards are MCards containing a valid CLM (Cubical Logic Model) specification.
|
|
6
6
|
*
|
|
7
|
-
* ##
|
|
7
|
+
* ## Categorical Foundation: STRONG PROFUNCTOR
|
|
8
8
|
*
|
|
9
|
-
* PCard
|
|
10
|
-
* - **MCard (Monad)**: Data container
|
|
11
|
-
* - **PCard (Functor)**: Pure transformation `fmap :: (a -> b) -> F a -> F b`
|
|
12
|
-
* - **VCard (Applicative)**: Context-aware application
|
|
9
|
+
* PCard implements the Strong Profunctor pattern from category theory:
|
|
13
10
|
*
|
|
14
|
-
*
|
|
11
|
+
* P: A^op × B → Set
|
|
15
12
|
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
13
|
+
* Where:
|
|
14
|
+
* - A^op denotes contravariance in input types (accepts MORE general)
|
|
15
|
+
* - B denotes covariance in output types (produces MORE specific)
|
|
16
|
+
* - Set is the category of sets (our value space)
|
|
20
17
|
*
|
|
21
|
-
*
|
|
18
|
+
* The "Strong" property means PCard supports:
|
|
19
|
+
* - first: P(A, B) → P(C × A, C × B) (threading context through)
|
|
20
|
+
* - second: P(A, B) → P(A × C, B × C) (preserving additional structure)
|
|
21
|
+
*
|
|
22
|
+
* ## Composition via Coend
|
|
22
23
|
*
|
|
23
|
-
*
|
|
24
|
+
* Two PCards compose via the Coend (categorical integral):
|
|
24
25
|
*
|
|
25
|
-
*
|
|
26
|
-
* M' = M - •t + t•
|
|
27
|
-
* ```
|
|
26
|
+
* (P ⨾ Q)(A, C) = ∫ᴮ P(A, B) × Q(B, C)
|
|
28
27
|
*
|
|
29
28
|
* Where:
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
29
|
+
* - ∫ᴮ is the Coend over the intermediate type B
|
|
30
|
+
* - P(A, B) is the first PCard (input A, output B)
|
|
31
|
+
* - Q(B, C) is the second PCard (input B, output C)
|
|
32
|
+
* - Result is a new PCard from A to C
|
|
33
|
+
*
|
|
34
|
+
* The `andThen()` method implements this Coend composition.
|
|
35
|
+
*
|
|
36
|
+
* ## SMC Structure (Symmetric Monoidal Category)
|
|
37
|
+
*
|
|
38
|
+
* PCard composition forms a Symmetric Monoidal Category:
|
|
39
|
+
* - **Identity**: The "pass-through" PCard
|
|
40
|
+
* - **Composition**: Sequential chaining via `andThen()` (;)
|
|
41
|
+
* - **Tensor Product**: Parallel composition via `andAlso()` (⊗)
|
|
42
|
+
* - **Symmetry**: Port swapping via `swap()` (σ)
|
|
43
|
+
*
|
|
44
|
+
* ## Functor Role in MVP Cards Hierarchy
|
|
45
|
+
*
|
|
46
|
+
* PCard is the **Functor** in the categorical hierarchy:
|
|
47
|
+
* - **MCard (Monad)**: Data container
|
|
48
|
+
* - **PCard (Functor)**: Pure transformation `fmap :: (a -> b) -> F a -> F b`
|
|
49
|
+
* - **VCard (Applicative)**: Context-aware application
|
|
50
|
+
*
|
|
51
|
+
* ## Petri Net Role: TRANSITION
|
|
33
52
|
*
|
|
34
|
-
*
|
|
53
|
+
* In the Categorical Petri Net model, PCard is the **Transition**:
|
|
54
|
+
* - Consumes input VCards (Tokens) from input Places
|
|
55
|
+
* - Executes CLM logic (Abstract → Concrete transformation)
|
|
56
|
+
* - Produces output VCards (Tokens) for output Places
|
|
57
|
+
*
|
|
58
|
+
* ### The Firing Rule
|
|
35
59
|
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
*
|
|
60
|
+
* M' = M - •t + t•
|
|
61
|
+
*
|
|
62
|
+
* Where:
|
|
63
|
+
* - M = Current marking (token distribution)
|
|
64
|
+
* - •t = Pre-set (input VCards required)
|
|
65
|
+
* - t• = Post-set (output VCards produced)
|
|
42
66
|
*
|
|
43
67
|
* ## CLM Triad: Abstract, Concrete, Balanced
|
|
44
68
|
*
|
|
45
69
|
* PCard content encodes the three dimensions:
|
|
46
|
-
*
|
|
47
|
-
*
|
|
48
|
-
*
|
|
70
|
+
* - **Abstract (A)**: WHY - Specification, intent, type signature
|
|
71
|
+
* - **Concrete (C)**: HOW - Implementation, runtime logic
|
|
72
|
+
* - **Balanced (B)**: WHAT - Tests, verification expectations
|
|
49
73
|
*
|
|
50
74
|
* ## DOTS Vocabulary Role: LENS + CHART
|
|
51
75
|
*
|
|
52
|
-
*
|
|
53
|
-
*
|
|
76
|
+
* - **Lens**: Tight morphism (Abstract ↔ Concrete coherence)
|
|
77
|
+
* - **Chart**: Loose morphism (Balanced expectations wiring)
|
|
54
78
|
*
|
|
55
79
|
* @see docs/PCard_Impl.md for full implementation specification
|
|
56
80
|
*/
|
|
@@ -203,13 +227,45 @@ export class PCard extends MCard {
|
|
|
203
227
|
return this.balanced;
|
|
204
228
|
}
|
|
205
229
|
// =========================================================================
|
|
206
|
-
// SMC
|
|
230
|
+
// SMC ALGEBRAIC COMBINATORS (Profunctor Composition)
|
|
231
|
+
// =========================================================================
|
|
232
|
+
//
|
|
233
|
+
// These methods implement the Symmetric Monoidal Category structure,
|
|
234
|
+
// enabling algebraic composition of PCards as profunctors.
|
|
235
|
+
//
|
|
236
|
+
// Composition Laws (Categorical Coherence):
|
|
237
|
+
// - Associativity: (f.andThen(g)).andThen(h) ≡ f.andThen(g.andThen(h))
|
|
238
|
+
// - Identity: id.andThen(f) ≡ f ≡ f.andThen(id)
|
|
239
|
+
// - Tensor Associativity: (A ⊗ B) ⊗ C ≅ A ⊗ (B ⊗ C)
|
|
240
|
+
// - Symmetry Involution: swap().swap() ≡ id
|
|
207
241
|
// =========================================================================
|
|
208
242
|
/**
|
|
209
|
-
* Sequential Composition (
|
|
243
|
+
* Sequential Composition via Coend (P ⨾ Q)
|
|
244
|
+
*
|
|
245
|
+
* Implements profunctor composition using the Coend formula:
|
|
246
|
+
*
|
|
247
|
+
* (P ⨾ Q)(A, C) = ∫ᴮ P(A, B) × Q(B, C)
|
|
248
|
+
*
|
|
249
|
+
* Where:
|
|
250
|
+
* - this is P: A → B
|
|
251
|
+
* - otherPCard is Q: B → C
|
|
252
|
+
* - Result is P ⨾ Q: A → C
|
|
253
|
+
*
|
|
254
|
+
* The Coend (∫ᴮ) "integrates out" the intermediate type B by:
|
|
255
|
+
* 1. Matching P's output type with Q's input type
|
|
256
|
+
* 2. Creating a chain where P's result feeds into Q
|
|
257
|
+
* 3. The composition is associative: (P ⨾ Q) ⨾ R = P ⨾ (Q ⨾ R)
|
|
258
|
+
*
|
|
259
|
+
* In PTR execution:
|
|
260
|
+
* - P is executed first (prep → exec → post)
|
|
261
|
+
* - P's output VCard becomes Q's input VCard
|
|
262
|
+
* - Q is executed second
|
|
263
|
+
* - Final result is Q's output VCard
|
|
264
|
+
*
|
|
265
|
+
* Note: Named 'andThen' to avoid conflict with Promise.then (Thenable).
|
|
210
266
|
*
|
|
211
|
-
*
|
|
212
|
-
*
|
|
267
|
+
* @param otherPCard - The PCard to execute after this one (Q in P ⨾ Q)
|
|
268
|
+
* @returns A new PCard representing the composed profunctor (P ⨾ Q)
|
|
213
269
|
*/
|
|
214
270
|
async andThen(otherPCard) {
|
|
215
271
|
const newClm = {
|
|
@@ -221,6 +277,7 @@ export class PCard extends MCard {
|
|
|
221
277
|
clm: {
|
|
222
278
|
abstract: {
|
|
223
279
|
type: "sequential_composition",
|
|
280
|
+
coend_formula: "∫ᴮ P(A,B) × Q(B,C)",
|
|
224
281
|
steps: [this.hash, otherPCard.hash]
|
|
225
282
|
},
|
|
226
283
|
concrete: {
|
package/dist/model/PCard.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PCard.js","sourceRoot":"","sources":["../../src/model/PCard.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PCard.js","sourceRoot":"","sources":["../../src/model/PCard.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bridgelet Universal Vehicle - Cross-Language Execution Abstraction
|
|
3
|
+
*
|
|
4
|
+
* The Bridgelet provides a universal interface for executing CLM logic across
|
|
5
|
+
* different language runtimes, enabling polyglot composition of PCards.
|
|
6
|
+
*
|
|
7
|
+
* ## Conceptual Foundation
|
|
8
|
+
*
|
|
9
|
+
* Bridgelet = Universal Vehicle for Cross-Language Execution
|
|
10
|
+
*
|
|
11
|
+
* Just as a physical bridge connects two lands, a Bridgelet connects two
|
|
12
|
+
* language runtimes, enabling data and control flow across the boundary.
|
|
13
|
+
*
|
|
14
|
+
* ## Architecture
|
|
15
|
+
*
|
|
16
|
+
* ```
|
|
17
|
+
* ┌─────────────────────────────────────────────────────────────────────┐
|
|
18
|
+
* │ Bridgelet Interface │
|
|
19
|
+
* │ invoke(pcard_hash, input_vcard) → output_vcard │
|
|
20
|
+
* └───────────────────────────┬─────────────────────────────────────────┘
|
|
21
|
+
* │
|
|
22
|
+
* ┌───────────────────┼───────────────────────┐
|
|
23
|
+
* ▼ ▼ ▼
|
|
24
|
+
* ┌────────┐ ┌────────┐ ┌────────┐
|
|
25
|
+
* │ JS │ │ Python │ │ WASM │
|
|
26
|
+
* │Runtime │ │(HTTP) │ │Runtime │
|
|
27
|
+
* └────────┘ └────────┘ └────────┘
|
|
28
|
+
* ```
|
|
29
|
+
*
|
|
30
|
+
* ## Protocol
|
|
31
|
+
*
|
|
32
|
+
* 1. Serialize input VCard to content-addressable format (MCard)
|
|
33
|
+
* 2. Invoke target runtime with PCard hash and input MCard hash
|
|
34
|
+
* 3. Receive output MCard hash
|
|
35
|
+
* 4. Deserialize output MCard to VCard
|
|
36
|
+
*
|
|
37
|
+
* All data crosses the bridge as immutable MCards (content-addressed),
|
|
38
|
+
* ensuring EOS (Experimental-Operational Symmetry).
|
|
39
|
+
*
|
|
40
|
+
* @see CLM_MCard_REPL_Implementation.md §10: Bridgelet Universal Vehicle
|
|
41
|
+
* @see PTR_MCard_CLM_Recent_Developments_Jan2026.md §5.3: Polyglot Execution
|
|
42
|
+
*/
|
|
43
|
+
/**
|
|
44
|
+
* Supported runtime types for Bridgelet execution
|
|
45
|
+
*/
|
|
46
|
+
export declare enum RuntimeType {
|
|
47
|
+
JAVASCRIPT = "javascript",
|
|
48
|
+
TYPESCRIPT = "typescript",
|
|
49
|
+
PYTHON = "python",
|
|
50
|
+
WASM = "wasm",
|
|
51
|
+
LEAN = "lean",
|
|
52
|
+
UNKNOWN = "unknown"
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Represents a cross-runtime invocation request.
|
|
56
|
+
*
|
|
57
|
+
* All data is represented by content hashes (MCard references),
|
|
58
|
+
* ensuring immutability and EOS compliance.
|
|
59
|
+
*/
|
|
60
|
+
export interface BridgeletInvocation {
|
|
61
|
+
/** PCard to execute (content hash) */
|
|
62
|
+
pcardHash: string;
|
|
63
|
+
/** Input VCard (content hash) */
|
|
64
|
+
inputVCardHash: string;
|
|
65
|
+
/** Target runtime */
|
|
66
|
+
targetRuntime: RuntimeType;
|
|
67
|
+
/** Execution context (serializable parameters) */
|
|
68
|
+
context: Record<string, any>;
|
|
69
|
+
/** Trace ID for observability */
|
|
70
|
+
traceId: string;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Result of a Bridgelet invocation.
|
|
74
|
+
*
|
|
75
|
+
* Contains the output VCard hash and execution metadata.
|
|
76
|
+
*/
|
|
77
|
+
export interface BridgeletResult {
|
|
78
|
+
/** Success status */
|
|
79
|
+
success: boolean;
|
|
80
|
+
/** Output VCard (content hash) */
|
|
81
|
+
outputVCardHash?: string;
|
|
82
|
+
/** Error message if failed */
|
|
83
|
+
error?: string;
|
|
84
|
+
/** Execution time in milliseconds */
|
|
85
|
+
executionTimeMs: number;
|
|
86
|
+
/** Runtime that executed the PCard */
|
|
87
|
+
executedBy: RuntimeType;
|
|
88
|
+
/** Additional metadata */
|
|
89
|
+
metadata: Record<string, any>;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Abstract interface for runtime-specific Bridgelet adapters.
|
|
93
|
+
*
|
|
94
|
+
* Each adapter implements the protocol for a specific runtime,
|
|
95
|
+
* handling serialization, invocation, and deserialization.
|
|
96
|
+
*/
|
|
97
|
+
export interface BridgeletAdapter {
|
|
98
|
+
/** Get the runtime type this adapter supports */
|
|
99
|
+
getRuntimeType(): RuntimeType;
|
|
100
|
+
/** Check if this runtime is available for execution */
|
|
101
|
+
isAvailable(): boolean;
|
|
102
|
+
/** Invoke a PCard in this runtime */
|
|
103
|
+
invoke(invocation: BridgeletInvocation): Promise<BridgeletResult>;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* JavaScript/TypeScript Bridgelet adapter.
|
|
107
|
+
*
|
|
108
|
+
* Executes PCards using the local JavaScript CLM runner.
|
|
109
|
+
*/
|
|
110
|
+
export declare class JavaScriptBridgeletAdapter implements BridgeletAdapter {
|
|
111
|
+
private collection;
|
|
112
|
+
constructor(collection?: any);
|
|
113
|
+
getRuntimeType(): RuntimeType;
|
|
114
|
+
isAvailable(): boolean;
|
|
115
|
+
invoke(invocation: BridgeletInvocation): Promise<BridgeletResult>;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Universal Vehicle for Cross-Language Execution.
|
|
119
|
+
*
|
|
120
|
+
* The Bridgelet manages a registry of runtime adapters and routes
|
|
121
|
+
* PCard execution requests to the appropriate runtime based on
|
|
122
|
+
* the PCard's declared runtime requirement.
|
|
123
|
+
*
|
|
124
|
+
* ## Usage
|
|
125
|
+
*
|
|
126
|
+
* ```typescript
|
|
127
|
+
* const bridgelet = new Bridgelet(collection);
|
|
128
|
+
* bridgelet.registerAdapter(new JavaScriptBridgeletAdapter());
|
|
129
|
+
* bridgelet.registerAdapter(new PythonHTTPBridgeletAdapter('http://localhost:8000'));
|
|
130
|
+
*
|
|
131
|
+
* const result = await bridgelet.invoke({
|
|
132
|
+
* pcardHash: "abc123",
|
|
133
|
+
* inputVCardHash: "def456",
|
|
134
|
+
* context: { param: "value" }
|
|
135
|
+
* });
|
|
136
|
+
* ```
|
|
137
|
+
*
|
|
138
|
+
* ## Cross-Language Composition
|
|
139
|
+
*
|
|
140
|
+
* The Bridgelet enables polyglot PCard composition:
|
|
141
|
+
*
|
|
142
|
+
* ```typescript
|
|
143
|
+
* jsPCard.andThen(pythonPCard).andThen(wasmPCard)
|
|
144
|
+
* ```
|
|
145
|
+
*
|
|
146
|
+
* Each transition crosses a runtime bridge, with data flowing
|
|
147
|
+
* as content-addressed MCards.
|
|
148
|
+
*/
|
|
149
|
+
export declare class Bridgelet {
|
|
150
|
+
private collection;
|
|
151
|
+
private adapters;
|
|
152
|
+
private traceCounter;
|
|
153
|
+
constructor(collection?: any);
|
|
154
|
+
/**
|
|
155
|
+
* Register a runtime adapter
|
|
156
|
+
*/
|
|
157
|
+
registerAdapter(adapter: BridgeletAdapter): void;
|
|
158
|
+
/**
|
|
159
|
+
* Get list of available runtimes
|
|
160
|
+
*/
|
|
161
|
+
getAvailableRuntimes(): RuntimeType[];
|
|
162
|
+
/**
|
|
163
|
+
* Generate a unique trace ID for observability
|
|
164
|
+
*/
|
|
165
|
+
private generateTraceId;
|
|
166
|
+
/**
|
|
167
|
+
* Detect the required runtime for a PCard
|
|
168
|
+
*/
|
|
169
|
+
private detectRuntime;
|
|
170
|
+
/**
|
|
171
|
+
* Invoke a PCard across the appropriate runtime bridge
|
|
172
|
+
*/
|
|
173
|
+
invoke(options: {
|
|
174
|
+
pcardHash: string;
|
|
175
|
+
inputVCardHash: string;
|
|
176
|
+
context?: Record<string, any>;
|
|
177
|
+
targetRuntime?: RuntimeType;
|
|
178
|
+
}): Promise<BridgeletResult>;
|
|
179
|
+
}
|
|
180
|
+
//# sourceMappingURL=Bridgelet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Bridgelet.d.ts","sourceRoot":"","sources":["../../src/ptr/Bridgelet.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAIH;;GAEG;AACH,oBAAY,WAAW;IACnB,UAAU,eAAe;IACzB,UAAU,eAAe;IACzB,MAAM,WAAW;IACjB,IAAI,SAAS;IACb,IAAI,SAAS;IACb,OAAO,YAAY;CACtB;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAChC,sCAAsC;IACtC,SAAS,EAAE,MAAM,CAAC;IAElB,iCAAiC;IACjC,cAAc,EAAE,MAAM,CAAC;IAEvB,qBAAqB;IACrB,aAAa,EAAE,WAAW,CAAC;IAE3B,kDAAkD;IAClD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE7B,iCAAiC;IACjC,OAAO,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC5B,qBAAqB;IACrB,OAAO,EAAE,OAAO,CAAC;IAEjB,kCAAkC;IAClC,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,qCAAqC;IACrC,eAAe,EAAE,MAAM,CAAC;IAExB,sCAAsC;IACtC,UAAU,EAAE,WAAW,CAAC;IAExB,0BAA0B;IAC1B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACjC;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC7B,iDAAiD;IACjD,cAAc,IAAI,WAAW,CAAC;IAE9B,uDAAuD;IACvD,WAAW,IAAI,OAAO,CAAC;IAEvB,qCAAqC;IACrC,MAAM,CAAC,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;CACrE;AAED;;;;GAIG;AACH,qBAAa,0BAA2B,YAAW,gBAAgB;IAC/D,OAAO,CAAC,UAAU,CAAM;gBAEZ,UAAU,CAAC,EAAE,GAAG;IAI5B,cAAc,IAAI,WAAW;IAI7B,WAAW,IAAI,OAAO;IAIhB,MAAM,CAAC,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAAC,eAAe,CAAC;CAmF1E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,qBAAa,SAAS;IAClB,OAAO,CAAC,UAAU,CAAM;IACxB,OAAO,CAAC,QAAQ,CAAiD;IACjE,OAAO,CAAC,YAAY,CAAK;gBAEb,UAAU,CAAC,EAAE,GAAG;IAO5B;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAMhD;;OAEG;IACH,oBAAoB,IAAI,WAAW,EAAE;IAMrC;;OAEG;IACH,OAAO,CAAC,eAAe;IAKvB;;OAEG;YACW,aAAa;IA0C3B;;OAEG;IACG,MAAM,CAAC,OAAO,EAAE;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;QACvB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC9B,aAAa,CAAC,EAAE,WAAW,CAAC;KAC/B,GAAG,OAAO,CAAC,eAAe,CAAC;CAqD/B"}
|