@quolu/lattice 0.61.2 → 0.62.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/LICENSE +147 -147
- package/README.ja.md +374 -374
- package/README.md +300 -300
- package/bin/lattice-mcp.mjs +0 -0
- package/bin/lattice-scripted-adapter.mjs +0 -0
- package/bin/lattice-scripted-worker.mjs +0 -0
- package/bin/lattice-work-order-adapter.mjs +0 -0
- package/bin/lattice.mjs +20 -9
- package/docs/bridge-setup.md +248 -248
- package/docs/schemas/lattice.executor_packet.v1.schema.json +57 -57
- package/docs/schemas/lattice.executor_receipt.v1.schema.json +66 -66
- package/docs/schemas/lattice.phase_todo_revision.v3.schema.json +360 -360
- package/docs/schemas/lattice.plan_create_input.v1.schema.json +56 -56
- package/docs/schemas/lattice.plan_create_input.v2.schema.json +72 -72
- package/docs/schemas/lattice.plan_create_input.v3.schema.json +81 -81
- package/docs/schemas/lattice.plan_create_input.v4.schema.json +85 -85
- package/docs/schemas/lattice.plan_scope_review.v1.schema.json +55 -55
- package/docs/schemas/lattice.run_request.v1.schema.json +238 -238
- package/docs/schemas/lattice.runtime_adapter_capabilities.v2.schema.json +55 -55
- package/docs/schemas/lattice.runtime_adapter_registration_input.v1.schema.json +78 -78
- package/docs/schemas/lattice.runtime_adapter_registration_input.v2.schema.json +86 -86
- package/docs/schemas/lattice.todo_extraction.v2.schema.json +298 -298
- package/docs/schemas/lattice.todo_extraction.v3.schema.json +150 -150
- package/docs/schemas/lattice.todo_extraction.v4.schema.json +161 -161
- package/docs/schemas/lattice.todo_revision.v2.schema.json +260 -260
- package/docs/schemas/lattice.todo_revision_set.v3.schema.json +363 -363
- package/docs/schemas/lattice.todo_structure_binding.v1.schema.json +47 -47
- package/docs/schemas/lattice.todo_structure_realization.v1.schema.json +55 -55
- package/docs/schemas/lattice.todo_structure_set.v1.schema.json +264 -264
- package/package.json +109 -109
- package/sensor/LICENSE +21 -21
- package/sensor/NOTICE +19 -19
- package/sensor/dist/bin/lattice-sensor.js +9 -9
- package/sensor/dist/db/index.js +24 -24
- package/sensor/dist/db/migrations.js +41 -41
- package/sensor/dist/db/queries.js +164 -164
- package/sensor/dist/db/schema.sql +205 -205
- package/sensor/dist/directory.js +5 -5
- package/sensor/dist/extraction/wasm/tree-sitter-c_sharp.wasm +0 -0
- package/sensor/dist/extraction/wasm/tree-sitter-cfml.wasm +0 -0
- package/sensor/dist/extraction/wasm/tree-sitter-cfquery.wasm +0 -0
- package/sensor/dist/extraction/wasm/tree-sitter-cfscript.wasm +0 -0
- package/sensor/dist/extraction/wasm/tree-sitter-cobol.wasm +0 -0
- package/sensor/dist/extraction/wasm/tree-sitter-erlang.wasm +0 -0
- package/sensor/dist/extraction/wasm/tree-sitter-go.wasm +0 -0
- package/sensor/dist/extraction/wasm/tree-sitter-java.wasm +0 -0
- package/sensor/dist/extraction/wasm/tree-sitter-javascript.wasm +0 -0
- package/sensor/dist/extraction/wasm/tree-sitter-nix.wasm +0 -0
- package/sensor/dist/extraction/wasm/tree-sitter-pascal.wasm +0 -0
- package/sensor/dist/extraction/wasm/tree-sitter-python.wasm +0 -0
- package/sensor/dist/extraction/wasm/tree-sitter-tsx.wasm +0 -0
- package/sensor/dist/extraction/wasm/tree-sitter-typescript.wasm +0 -0
- package/sensor/dist/extraction/wasm/tree-sitter-vbnet.wasm +0 -0
- package/sensor/dist/mcp/liveness-watchdog.js +53 -53
- package/sensor/dist/mcp/server-instructions.js +95 -95
- package/sensor/package.json +56 -56
- package/src/cli-help.mjs +9 -5
- package/src/project-cli.mjs +22 -71
- package/src/runtime-diff-observer.mjs +34 -2
- package/src/runtime-pull-intake.mjs +15 -1
- package/src/todo-authoring-input.mjs +183 -0
- package/src/todo-cli.mjs +367 -382
- package/src/todo-independence-contracts.mjs +11 -4
- package/src/todo-independence-guidance.mjs +4 -4
- package/src/todo-store.mjs +6 -30
- package/src/witness-scaffold.mjs +11 -4
|
@@ -1,57 +1,57 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://github.com/kitepon/Lattice/blob/main/docs/schemas/lattice.executor_packet.v1.schema.json",
|
|
4
|
-
"title": "lattice.executor_packet.v1",
|
|
5
|
-
"description": "The single context packet issued at dispatch. It is the machine record of the context an executor received.",
|
|
6
|
-
"$comment": "Runtime validation additionally enforces canonical JSON bytes, the self-digest rule for `packet_digest`, and that `context_content_digest` equals the SHA-256 of the canonical JSON projection of exactly {todo_id, task_ref, scope, base_sha, verifier_refs, forbidden_operations} — plan attribution fields are excluded so that an epoch rebind is provably content-preserving.",
|
|
7
|
-
"type": "object",
|
|
8
|
-
"additionalProperties": false,
|
|
9
|
-
"required": [
|
|
10
|
-
"schema",
|
|
11
|
-
"packet_id",
|
|
12
|
-
"todo_id",
|
|
13
|
-
"task_ref",
|
|
14
|
-
"scope",
|
|
15
|
-
"base_sha",
|
|
16
|
-
"plan_ref",
|
|
17
|
-
"plan_epoch",
|
|
18
|
-
"verifier_refs",
|
|
19
|
-
"forbidden_operations",
|
|
20
|
-
"context_content_digest",
|
|
21
|
-
"packet_digest"
|
|
22
|
-
],
|
|
23
|
-
"properties": {
|
|
24
|
-
"schema": { "const": "lattice.executor_packet.v1" },
|
|
25
|
-
"packet_id": { "$ref": "#/$defs/identifier" },
|
|
26
|
-
"todo_id": {
|
|
27
|
-
"$ref": "#/$defs/identifier",
|
|
28
|
-
"$comment": "Carried through from `run_request.v1`. It is not qualified by any TODO store project/plan/revision identity."
|
|
29
|
-
},
|
|
30
|
-
"task_ref": { "$ref": "#/$defs/identifier" },
|
|
31
|
-
"scope": { "type": "object" },
|
|
32
|
-
"base_sha": { "$ref": "#/$defs/gitSha" },
|
|
33
|
-
"plan_ref": { "$ref": "#/$defs/identifier" },
|
|
34
|
-
"plan_epoch": { "type": "integer", "minimum": 0 },
|
|
35
|
-
"verifier_refs": {
|
|
36
|
-
"type": "array",
|
|
37
|
-
"maxItems": 256,
|
|
38
|
-
"items": { "type": "string" }
|
|
39
|
-
},
|
|
40
|
-
"forbidden_operations": {
|
|
41
|
-
"type": "array",
|
|
42
|
-
"maxItems": 256,
|
|
43
|
-
"items": { "type": "string" },
|
|
44
|
-
"description": "Compatibility field. Lattice-produced packets use an empty array; operation authority belongs to the host."
|
|
45
|
-
},
|
|
46
|
-
"context_content_digest": { "$ref": "#/$defs/digest" },
|
|
47
|
-
"packet_digest": { "$ref": "#/$defs/digest" }
|
|
48
|
-
},
|
|
49
|
-
"$defs": {
|
|
50
|
-
"identifier": {
|
|
51
|
-
"type": "string",
|
|
52
|
-
"pattern": "^[0-9A-Za-z](?:[0-9A-Za-z._-]{0,127})$"
|
|
53
|
-
},
|
|
54
|
-
"digest": { "type": "string", "pattern": "^[0-9a-f]{64}$" },
|
|
55
|
-
"gitSha": { "type": "string", "pattern": "^[0-9a-f]{40}$" }
|
|
56
|
-
}
|
|
57
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://github.com/kitepon/Lattice/blob/main/docs/schemas/lattice.executor_packet.v1.schema.json",
|
|
4
|
+
"title": "lattice.executor_packet.v1",
|
|
5
|
+
"description": "The single context packet issued at dispatch. It is the machine record of the context an executor received.",
|
|
6
|
+
"$comment": "Runtime validation additionally enforces canonical JSON bytes, the self-digest rule for `packet_digest`, and that `context_content_digest` equals the SHA-256 of the canonical JSON projection of exactly {todo_id, task_ref, scope, base_sha, verifier_refs, forbidden_operations} — plan attribution fields are excluded so that an epoch rebind is provably content-preserving.",
|
|
7
|
+
"type": "object",
|
|
8
|
+
"additionalProperties": false,
|
|
9
|
+
"required": [
|
|
10
|
+
"schema",
|
|
11
|
+
"packet_id",
|
|
12
|
+
"todo_id",
|
|
13
|
+
"task_ref",
|
|
14
|
+
"scope",
|
|
15
|
+
"base_sha",
|
|
16
|
+
"plan_ref",
|
|
17
|
+
"plan_epoch",
|
|
18
|
+
"verifier_refs",
|
|
19
|
+
"forbidden_operations",
|
|
20
|
+
"context_content_digest",
|
|
21
|
+
"packet_digest"
|
|
22
|
+
],
|
|
23
|
+
"properties": {
|
|
24
|
+
"schema": { "const": "lattice.executor_packet.v1" },
|
|
25
|
+
"packet_id": { "$ref": "#/$defs/identifier" },
|
|
26
|
+
"todo_id": {
|
|
27
|
+
"$ref": "#/$defs/identifier",
|
|
28
|
+
"$comment": "Carried through from `run_request.v1`. It is not qualified by any TODO store project/plan/revision identity."
|
|
29
|
+
},
|
|
30
|
+
"task_ref": { "$ref": "#/$defs/identifier" },
|
|
31
|
+
"scope": { "type": "object" },
|
|
32
|
+
"base_sha": { "$ref": "#/$defs/gitSha" },
|
|
33
|
+
"plan_ref": { "$ref": "#/$defs/identifier" },
|
|
34
|
+
"plan_epoch": { "type": "integer", "minimum": 0 },
|
|
35
|
+
"verifier_refs": {
|
|
36
|
+
"type": "array",
|
|
37
|
+
"maxItems": 256,
|
|
38
|
+
"items": { "type": "string" }
|
|
39
|
+
},
|
|
40
|
+
"forbidden_operations": {
|
|
41
|
+
"type": "array",
|
|
42
|
+
"maxItems": 256,
|
|
43
|
+
"items": { "type": "string" },
|
|
44
|
+
"description": "Compatibility field. Lattice-produced packets use an empty array; operation authority belongs to the host."
|
|
45
|
+
},
|
|
46
|
+
"context_content_digest": { "$ref": "#/$defs/digest" },
|
|
47
|
+
"packet_digest": { "$ref": "#/$defs/digest" }
|
|
48
|
+
},
|
|
49
|
+
"$defs": {
|
|
50
|
+
"identifier": {
|
|
51
|
+
"type": "string",
|
|
52
|
+
"pattern": "^[0-9A-Za-z](?:[0-9A-Za-z._-]{0,127})$"
|
|
53
|
+
},
|
|
54
|
+
"digest": { "type": "string", "pattern": "^[0-9a-f]{64}$" },
|
|
55
|
+
"gitSha": { "type": "string", "pattern": "^[0-9a-f]{40}$" }
|
|
56
|
+
}
|
|
57
|
+
}
|
|
@@ -1,66 +1,66 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://github.com/kitepon/Lattice/blob/main/docs/schemas/lattice.executor_receipt.v1.schema.json",
|
|
4
|
-
"title": "lattice.executor_receipt.v1",
|
|
5
|
-
"description": "The receipt an executor returns for one dispatched packet. `packet_digest` is what attributes it to the packet it received.",
|
|
6
|
-
"$comment": "Runtime validation additionally enforces canonical JSON bytes and the self-digest rule for `receipt_digest`. Acceptance is decided by event order, not by the receipt's own claims: the binding is checked against the `executor_dispatched` / `epoch_rebound` event that recorded the handle, worktree and packet digest for that TODO.",
|
|
7
|
-
"type": "object",
|
|
8
|
-
"additionalProperties": false,
|
|
9
|
-
"required": [
|
|
10
|
-
"schema",
|
|
11
|
-
"receipt_id",
|
|
12
|
-
"executor_handle",
|
|
13
|
-
"worktree_id",
|
|
14
|
-
"base_sha",
|
|
15
|
-
"plan_epoch",
|
|
16
|
-
"packet_digest",
|
|
17
|
-
"todo_id",
|
|
18
|
-
"checkpoint_digest",
|
|
19
|
-
"observed_diff",
|
|
20
|
-
"receipt_digest"
|
|
21
|
-
],
|
|
22
|
-
"properties": {
|
|
23
|
-
"schema": { "const": "lattice.executor_receipt.v1" },
|
|
24
|
-
"receipt_id": { "$ref": "#/$defs/identifier" },
|
|
25
|
-
"executor_handle": { "$ref": "#/$defs/identifier" },
|
|
26
|
-
"worktree_id": { "$ref": "#/$defs/identifier" },
|
|
27
|
-
"base_sha": { "$ref": "#/$defs/gitSha" },
|
|
28
|
-
"plan_epoch": { "type": "integer", "minimum": 0 },
|
|
29
|
-
"packet_digest": {
|
|
30
|
-
"$ref": "#/$defs/digest",
|
|
31
|
-
"$comment": "Attribution to the received `executor_packet.v1`. This is the only link back to the dispatch."
|
|
32
|
-
},
|
|
33
|
-
"todo_id": {
|
|
34
|
-
"$ref": "#/$defs/identifier",
|
|
35
|
-
"$comment": "Carried through from `run_request.v1`. It is not qualified by any TODO store project/plan/revision identity, so a receipt alone does not prove which TODO store task it belongs to."
|
|
36
|
-
},
|
|
37
|
-
"checkpoint_digest": { "$ref": "#/$defs/digest" },
|
|
38
|
-
"observed_diff": {
|
|
39
|
-
"type": "array",
|
|
40
|
-
"maxItems": 256,
|
|
41
|
-
"items": {
|
|
42
|
-
"type": "object",
|
|
43
|
-
"additionalProperties": false,
|
|
44
|
-
"required": ["path", "change"],
|
|
45
|
-
"properties": {
|
|
46
|
-
"path": { "$ref": "#/$defs/repoRelativePath" },
|
|
47
|
-
"change": { "enum": ["added", "modified", "deleted"] }
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
},
|
|
51
|
-
"receipt_digest": { "$ref": "#/$defs/digest" }
|
|
52
|
-
},
|
|
53
|
-
"$defs": {
|
|
54
|
-
"identifier": {
|
|
55
|
-
"type": "string",
|
|
56
|
-
"pattern": "^[0-9A-Za-z](?:[0-9A-Za-z._-]{0,127})$"
|
|
57
|
-
},
|
|
58
|
-
"digest": { "type": "string", "pattern": "^[0-9a-f]{64}$" },
|
|
59
|
-
"gitSha": { "type": "string", "pattern": "^[0-9a-f]{40}$" },
|
|
60
|
-
"repoRelativePath": {
|
|
61
|
-
"type": "string",
|
|
62
|
-
"minLength": 1,
|
|
63
|
-
"pattern": "^(?!/)(?!.*(?:^|/)\\.\\.?(?:/|$))[^\\u0000-\\u001f\\u007f\\\\]+$"
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://github.com/kitepon/Lattice/blob/main/docs/schemas/lattice.executor_receipt.v1.schema.json",
|
|
4
|
+
"title": "lattice.executor_receipt.v1",
|
|
5
|
+
"description": "The receipt an executor returns for one dispatched packet. `packet_digest` is what attributes it to the packet it received.",
|
|
6
|
+
"$comment": "Runtime validation additionally enforces canonical JSON bytes and the self-digest rule for `receipt_digest`. Acceptance is decided by event order, not by the receipt's own claims: the binding is checked against the `executor_dispatched` / `epoch_rebound` event that recorded the handle, worktree and packet digest for that TODO.",
|
|
7
|
+
"type": "object",
|
|
8
|
+
"additionalProperties": false,
|
|
9
|
+
"required": [
|
|
10
|
+
"schema",
|
|
11
|
+
"receipt_id",
|
|
12
|
+
"executor_handle",
|
|
13
|
+
"worktree_id",
|
|
14
|
+
"base_sha",
|
|
15
|
+
"plan_epoch",
|
|
16
|
+
"packet_digest",
|
|
17
|
+
"todo_id",
|
|
18
|
+
"checkpoint_digest",
|
|
19
|
+
"observed_diff",
|
|
20
|
+
"receipt_digest"
|
|
21
|
+
],
|
|
22
|
+
"properties": {
|
|
23
|
+
"schema": { "const": "lattice.executor_receipt.v1" },
|
|
24
|
+
"receipt_id": { "$ref": "#/$defs/identifier" },
|
|
25
|
+
"executor_handle": { "$ref": "#/$defs/identifier" },
|
|
26
|
+
"worktree_id": { "$ref": "#/$defs/identifier" },
|
|
27
|
+
"base_sha": { "$ref": "#/$defs/gitSha" },
|
|
28
|
+
"plan_epoch": { "type": "integer", "minimum": 0 },
|
|
29
|
+
"packet_digest": {
|
|
30
|
+
"$ref": "#/$defs/digest",
|
|
31
|
+
"$comment": "Attribution to the received `executor_packet.v1`. This is the only link back to the dispatch."
|
|
32
|
+
},
|
|
33
|
+
"todo_id": {
|
|
34
|
+
"$ref": "#/$defs/identifier",
|
|
35
|
+
"$comment": "Carried through from `run_request.v1`. It is not qualified by any TODO store project/plan/revision identity, so a receipt alone does not prove which TODO store task it belongs to."
|
|
36
|
+
},
|
|
37
|
+
"checkpoint_digest": { "$ref": "#/$defs/digest" },
|
|
38
|
+
"observed_diff": {
|
|
39
|
+
"type": "array",
|
|
40
|
+
"maxItems": 256,
|
|
41
|
+
"items": {
|
|
42
|
+
"type": "object",
|
|
43
|
+
"additionalProperties": false,
|
|
44
|
+
"required": ["path", "change"],
|
|
45
|
+
"properties": {
|
|
46
|
+
"path": { "$ref": "#/$defs/repoRelativePath" },
|
|
47
|
+
"change": { "enum": ["added", "modified", "deleted"] }
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
"receipt_digest": { "$ref": "#/$defs/digest" }
|
|
52
|
+
},
|
|
53
|
+
"$defs": {
|
|
54
|
+
"identifier": {
|
|
55
|
+
"type": "string",
|
|
56
|
+
"pattern": "^[0-9A-Za-z](?:[0-9A-Za-z._-]{0,127})$"
|
|
57
|
+
},
|
|
58
|
+
"digest": { "type": "string", "pattern": "^[0-9a-f]{64}$" },
|
|
59
|
+
"gitSha": { "type": "string", "pattern": "^[0-9a-f]{40}$" },
|
|
60
|
+
"repoRelativePath": {
|
|
61
|
+
"type": "string",
|
|
62
|
+
"minLength": 1,
|
|
63
|
+
"pattern": "^(?!/)(?!.*(?:^|/)\\.\\.?(?:/|$))[^\\u0000-\\u001f\\u007f\\\\]+$"
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|