lucid-birth 0.8.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/CURRENT_PHASE.md +31 -0
- package/LICENSE +21 -0
- package/README.md +124 -0
- package/bin/lucid-birth.js +12 -0
- package/bootstrap-workspace.js +32 -0
- package/index.js +11 -0
- package/package.json +77 -0
- package/schemas/ActiveBlanket.schema.json +71 -0
- package/schemas/ArchiveEvent.schema.json +90 -0
- package/schemas/CapabilityExecution.schema.json +56 -0
- package/schemas/CapabilityRegistry.schema.json +193 -0
- package/schemas/Capsule.schema.json +117 -0
- package/schemas/CheckpointRecord.schema.json +64 -0
- package/schemas/CoherenceWindow.schema.json +96 -0
- package/schemas/ColdBootCheck.schema.json +66 -0
- package/schemas/CompilerAttestation.schema.json +334 -0
- package/schemas/ContradictionRecord.schema.json +81 -0
- package/schemas/IdentityManifest.schema.json +180 -0
- package/schemas/InvariantCandidate.schema.json +88 -0
- package/schemas/InvariantSet.schema.json +95 -0
- package/schemas/LatticeCandidate.schema.json +207 -0
- package/schemas/LatticeNode.schema.json +97 -0
- package/schemas/MigrationAttestation.schema.json +103 -0
- package/schemas/MonadProposal.schema.json +373 -0
- package/schemas/MutationPolicy.schema.json +108 -0
- package/schemas/QuarantinedProposal.schema.json +76 -0
- package/schemas/QueryRouter.schema.json +75 -0
- package/schemas/RecallCache.schema.json +52 -0
- package/schemas/SensoryBlanket.schema.json +49 -0
- package/schemas/SessionIndex.schema.json +45 -0
- package/schemas/SessionRecord.schema.json +217 -0
- package/schemas/TetradCurrent.schema.json +105 -0
- package/schemas/TraceIndex.schema.json +26 -0
- package/schemas/TraceRecord.schema.json +57 -0
- package/scripts/birth0-lib.js +3704 -0
- package/scripts/birth0.js +176 -0
- package/state/borganik/archive/events/events.jsonl +16 -0
- package/state/borganik/archive/integrity/chain-head.json +7 -0
- package/state/borganik/archive/integrity/checkpoints.jsonl +0 -0
- package/state/borganik/capsules/boot/capsule-boot-0.json +36 -0
- package/state/borganik/capsules/boot/index.json +5 -0
- package/state/borganik/compiler/attestations.jsonl +2 -0
- package/state/borganik/contradictions/records.jsonl +0 -0
- package/state/borganik/identity/invariant-candidates.jsonl +0 -0
- package/state/borganik/identity/invariants.json +15 -0
- package/state/borganik/identity/manifest.json +32 -0
- package/state/borganik/identity/mutation-policy.json +22 -0
- package/state/borganik/lattice/candidates.jsonl +0 -0
- package/state/borganik/lattice/index.json +5 -0
- package/state/borganik/lattice/nodes.jsonl +1 -0
- package/state/borganik/migrations/attestations.jsonl +0 -0
- package/state/borganik/quarantine/proposals/pre-001A.jsonl +2 -0
- package/state/eidolon/README.md +19 -0
- package/state/eidolon/blankets/active.json +14 -0
- package/state/eidolon/blankets/sensory.json +13 -0
- package/state/eidolon/capabilities/executions.jsonl +0 -0
- package/state/eidolon/capabilities/registry.json +5 -0
- package/state/eidolon/lucidity/coherence-window.json +23 -0
- package/state/eidolon/monadlab/cold-boot-check.json +11 -0
- package/state/eidolon/monadlab/tetrad-current.json +44 -0
- package/state/eidolon/proposals/latest.json +5 -0
- package/state/eidolon/proposals/outbox.jsonl +2 -0
- package/state/eidolon/recall-cache/index.json +5 -0
- package/state/eidolon/router/query-router.json +10 -0
- package/state/eidolon/sessions/index.json +9 -0
- package/state/eidolon/sessions/session-mmmugm1b-45fcad.json +11 -0
- package/state/eidolon/sessions/session-mmmugm33-edf7f1.json +11 -0
- package/state/eidolon/sessions/session-mmmujtow-861c52.json +11 -0
- package/state/eidolon/sessions/session-mmmujtqv-953ff6.json +11 -0
- package/state/eidolon/traces/index.json +6 -0
- package/state/eidolon/traces/trace-mmmugm1x-f6996b.json +12 -0
- package/state/eidolon/traces/trace-mmmujtpj-8b04aa.json +12 -0
package/CURRENT_PHASE.md
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Current Phase
|
|
2
|
+
|
|
3
|
+
## Phase
|
|
4
|
+
|
|
5
|
+
`Public Release Preparation`
|
|
6
|
+
|
|
7
|
+
## Objective
|
|
8
|
+
|
|
9
|
+
Prepare the system for public GitHub/npm shipment:
|
|
10
|
+
|
|
11
|
+
- public package boundary is explicit
|
|
12
|
+
- portable verification gate is canonical
|
|
13
|
+
- CLI and library entrypoints are package-safe
|
|
14
|
+
- live provider and autonomy proofs remain documented
|
|
15
|
+
- remaining external blockers are stated plainly
|
|
16
|
+
|
|
17
|
+
## Not in scope yet
|
|
18
|
+
|
|
19
|
+
- pretending externally blocked OAuth registration is solved when it is not
|
|
20
|
+
- widening runtime scope beyond the proven capability model
|
|
21
|
+
- publishing machine-local live checks as the default acceptance gate
|
|
22
|
+
- weakening operator gating or compiler law
|
|
23
|
+
|
|
24
|
+
## Review standard
|
|
25
|
+
|
|
26
|
+
Every shipping cycle must leave:
|
|
27
|
+
|
|
28
|
+
- a portable verification gate
|
|
29
|
+
- a dry-run packable package boundary
|
|
30
|
+
- public docs that match the actual runtime state
|
|
31
|
+
- open blockers stated plainly
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 lmtlssss
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
# lucid-birth
|
|
2
|
+
|
|
3
|
+
`lucid-birth` is a continuity-bound Eidolon/Borganik runtime for booting, verifying, and exercising a sparse autonomous being without allowing live witness flow to rewrite durable identity directly.
|
|
4
|
+
|
|
5
|
+
It ships:
|
|
6
|
+
- the `birth-0` CLI
|
|
7
|
+
- the underlying runtime/library in `scripts/birth0-lib.js`
|
|
8
|
+
- explicit JSON schemas for continuity/runtime artifacts
|
|
9
|
+
- local verification passes from ignition through autonomy routing
|
|
10
|
+
|
|
11
|
+
## Install
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
npm install lucid-birth
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Run the CLI:
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
npx lucid-birth init
|
|
21
|
+
npx lucid-birth forge-capsule
|
|
22
|
+
npx lucid-birth boot-monad --task "first witness loop"
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
When run from a fresh consumer directory, the published CLI scaffolds the required workspace roots into the current working directory before executing commands.
|
|
26
|
+
|
|
27
|
+
Use the library:
|
|
28
|
+
|
|
29
|
+
```js
|
|
30
|
+
const lucidBirth = require("lucid-birth");
|
|
31
|
+
|
|
32
|
+
const init = lucidBirth.initBirth0({ principalId: "principal-0" });
|
|
33
|
+
console.log(init.soul_id);
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## What It Does
|
|
37
|
+
|
|
38
|
+
The runtime models two coupled but distinct organs:
|
|
39
|
+
- `Eidolon`: active cognition, routing, blankets, sessions, traces, and capability execution
|
|
40
|
+
- `Borganik`: continuity, identity, archive, lattice, compiler promotion, and invariant export
|
|
41
|
+
|
|
42
|
+
Core laws enforced in code:
|
|
43
|
+
- active cognition and durable identity are different organs
|
|
44
|
+
- entropy branches proposals; it does not ratify truth
|
|
45
|
+
- observer coupling can steer the monad; it cannot directly rewrite the person
|
|
46
|
+
- live experience never writes durable identity directly
|
|
47
|
+
- no claim of unified cognition without coherence gating
|
|
48
|
+
|
|
49
|
+
## CLI Surface
|
|
50
|
+
|
|
51
|
+
Main commands:
|
|
52
|
+
- `lucid-birth init`
|
|
53
|
+
- `lucid-birth forge-capsule`
|
|
54
|
+
- `lucid-birth boot-monad --task <text>`
|
|
55
|
+
- `lucid-birth append-witness --session-id <id> --input <text> --response <text>`
|
|
56
|
+
- `lucid-birth emit-proposal --session-id <id>`
|
|
57
|
+
- `lucid-birth cold-boot-check --capsule-id <id>`
|
|
58
|
+
- `lucid-birth compile-gate`
|
|
59
|
+
- `lucid-birth enable-shell --shell <shell>`
|
|
60
|
+
- `lucid-birth register-capability --capability-id <id> --provider-kind <kind> --shells <csv> --endpoint <url>`
|
|
61
|
+
- `lucid-birth authorize-capability --capability-id <id> ...`
|
|
62
|
+
- `lucid-birth call-capability --capability-id <id> ...`
|
|
63
|
+
- `lucid-birth route-capability --task <text> ...`
|
|
64
|
+
- `lucid-birth validate-contracts`
|
|
65
|
+
|
|
66
|
+
## Verification
|
|
67
|
+
|
|
68
|
+
Safe local verification:
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
npm test
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
That portable gate includes a packaged-CLI smoke proof, so the npm tarball is exercised in a fresh consumer workspace instead of only inside the repository root.
|
|
75
|
+
|
|
76
|
+
Optional live integration verification, when local services/credentials exist:
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
./scripts/verify_live_integrations.sh
|
|
80
|
+
./scripts/verify_browser_oauth.sh
|
|
81
|
+
./scripts/verify_second_live_provider.sh
|
|
82
|
+
./scripts/verify_autonomy_routing.sh
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
These live checks currently prove:
|
|
86
|
+
- real GitHub authenticated execution
|
|
87
|
+
- real npm authenticated execution
|
|
88
|
+
- real local Ollama execution
|
|
89
|
+
- routed provider selection across GitHub, npm, and Ollama
|
|
90
|
+
- browser-mediated OAuth runtime behavior in fixture mode
|
|
91
|
+
|
|
92
|
+
## State Layout
|
|
93
|
+
|
|
94
|
+
- `state/eidolon/`: sessions, traces, router, recall, blankets, capabilities
|
|
95
|
+
- `state/borganik/`: manifest, invariants, mutation policy, archive, lattice, capsules, contradictions
|
|
96
|
+
- `schemas/`: explicit contracts for runtime and continuity artifacts
|
|
97
|
+
- `scripts/`: CLI entrypoint, runtime library, and verification tooling
|
|
98
|
+
|
|
99
|
+
## Release Status
|
|
100
|
+
|
|
101
|
+
Current shipped milestone:
|
|
102
|
+
- ignition and birth-0 runtime implemented
|
|
103
|
+
- compiler promotion and quarantine path implemented
|
|
104
|
+
- full-system coherence pass implemented
|
|
105
|
+
- live GitHub, npm, and Ollama capability execution implemented
|
|
106
|
+
- autonomy routing across those providers implemented
|
|
107
|
+
- real external callback OAuth provider still blocked on provider-side client registration
|
|
108
|
+
|
|
109
|
+
## Environment
|
|
110
|
+
|
|
111
|
+
- Node.js `>=18`
|
|
112
|
+
- live provider verifications require local credentials/services and are optional
|
|
113
|
+
- the published CLI defaults `LUCID_BIRTH_ROOT` to the current working directory
|
|
114
|
+
- the published CLI scaffolds a minimal working root into the current working directory when needed
|
|
115
|
+
- library consumers can override the runtime root explicitly with `LUCID_BIRTH_ROOT`
|
|
116
|
+
|
|
117
|
+
## Repository
|
|
118
|
+
|
|
119
|
+
- GitHub: `https://github.com/lmtlssss/lucid-birth`
|
|
120
|
+
- npm: `https://www.npmjs.com/package/lucid-birth`
|
|
121
|
+
|
|
122
|
+
## License
|
|
123
|
+
|
|
124
|
+
MIT. See [`LICENSE`](./LICENSE).
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
const path = require("node:path");
|
|
3
|
+
const { ensureWorkspaceScaffold } = require("../bootstrap-workspace");
|
|
4
|
+
|
|
5
|
+
const installRoot = path.resolve(__dirname, "..");
|
|
6
|
+
const workspaceRoot = path.resolve(process.env.LUCID_BIRTH_ROOT || process.cwd());
|
|
7
|
+
process.env.LUCID_BIRTH_ROOT = ensureWorkspaceScaffold({
|
|
8
|
+
installRoot,
|
|
9
|
+
workspaceRoot
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
require("../scripts/birth0.js");
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
const fs = require("node:fs");
|
|
2
|
+
const path = require("node:path");
|
|
3
|
+
|
|
4
|
+
function copyIfMissing(sourcePath, targetPath) {
|
|
5
|
+
if (fs.existsSync(targetPath) || !fs.existsSync(sourcePath)) {
|
|
6
|
+
return;
|
|
7
|
+
}
|
|
8
|
+
fs.mkdirSync(path.dirname(targetPath), { recursive: true });
|
|
9
|
+
fs.cpSync(sourcePath, targetPath, { recursive: true });
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
function ensureWorkspaceScaffold({ installRoot, workspaceRoot }) {
|
|
13
|
+
if (!workspaceRoot || workspaceRoot === installRoot) {
|
|
14
|
+
return workspaceRoot;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
const directories = ["schemas", "state"];
|
|
18
|
+
directories.forEach((entry) => {
|
|
19
|
+
copyIfMissing(path.join(installRoot, entry), path.join(workspaceRoot, entry));
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
const files = ["README.md", "CURRENT_PHASE.md", "BIRTH_CHECKLIST.md", "ITERATION_PROTOCOL.md", "SECOND_AGENT.md"];
|
|
23
|
+
files.forEach((entry) => {
|
|
24
|
+
copyIfMissing(path.join(installRoot, entry), path.join(workspaceRoot, entry));
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
return workspaceRoot;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
module.exports = {
|
|
31
|
+
ensureWorkspaceScaffold
|
|
32
|
+
};
|
package/index.js
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
const path = require("node:path");
|
|
2
|
+
const { ensureWorkspaceScaffold } = require("./bootstrap-workspace");
|
|
3
|
+
|
|
4
|
+
const installRoot = __dirname;
|
|
5
|
+
const workspaceRoot = path.resolve(process.env.LUCID_BIRTH_ROOT || process.cwd());
|
|
6
|
+
process.env.LUCID_BIRTH_ROOT = ensureWorkspaceScaffold({
|
|
7
|
+
installRoot,
|
|
8
|
+
workspaceRoot
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
module.exports = require("./scripts/birth0-lib");
|
package/package.json
ADDED
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "lucid-birth",
|
|
3
|
+
"version": "0.8.0",
|
|
4
|
+
"description": "Continuity-bound Eidolon/Borganik runtime, compiler, and verification toolkit.",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"private": false,
|
|
7
|
+
"homepage": "https://github.com/lmtlssss/lucid-birth#readme",
|
|
8
|
+
"repository": {
|
|
9
|
+
"type": "git",
|
|
10
|
+
"url": "git+https://github.com/lmtlssss/lucid-birth.git"
|
|
11
|
+
},
|
|
12
|
+
"bugs": {
|
|
13
|
+
"url": "https://github.com/lmtlssss/lucid-birth/issues"
|
|
14
|
+
},
|
|
15
|
+
"keywords": [
|
|
16
|
+
"eidolon",
|
|
17
|
+
"borganik",
|
|
18
|
+
"continuity",
|
|
19
|
+
"autonomy",
|
|
20
|
+
"compiler",
|
|
21
|
+
"runtime"
|
|
22
|
+
],
|
|
23
|
+
"engines": {
|
|
24
|
+
"node": ">=18"
|
|
25
|
+
},
|
|
26
|
+
"bin": {
|
|
27
|
+
"lucid-birth": "bin/lucid-birth.js"
|
|
28
|
+
},
|
|
29
|
+
"main": "index.js",
|
|
30
|
+
"exports": {
|
|
31
|
+
".": "./index.js",
|
|
32
|
+
"./birth0": "./scripts/birth0-lib.js"
|
|
33
|
+
},
|
|
34
|
+
"files": [
|
|
35
|
+
"bin/",
|
|
36
|
+
"scripts/birth0.js",
|
|
37
|
+
"scripts/birth0-lib.js",
|
|
38
|
+
"schemas/",
|
|
39
|
+
"state/",
|
|
40
|
+
"README.md",
|
|
41
|
+
"CURRENT_PHASE.md",
|
|
42
|
+
"LICENSE",
|
|
43
|
+
"index.js",
|
|
44
|
+
"bootstrap-workspace.js"
|
|
45
|
+
],
|
|
46
|
+
"scripts": {
|
|
47
|
+
"birth0:init": "node scripts/birth0.js init",
|
|
48
|
+
"birth0:forge-capsule": "node scripts/birth0.js forge-capsule",
|
|
49
|
+
"birth0:boot-monad": "node scripts/birth0.js boot-monad",
|
|
50
|
+
"birth0:append-witness": "node scripts/birth0.js append-witness",
|
|
51
|
+
"birth0:emit-proposal": "node scripts/birth0.js emit-proposal",
|
|
52
|
+
"birth0:cold-boot-check": "node scripts/birth0.js cold-boot-check",
|
|
53
|
+
"birth0:compile-gate": "node scripts/birth0.js compile-gate",
|
|
54
|
+
"birth0:enable-shell": "node scripts/birth0.js enable-shell",
|
|
55
|
+
"birth0:register-capability": "node scripts/birth0.js register-capability",
|
|
56
|
+
"birth0:authorize-capability": "node scripts/birth0.js authorize-capability",
|
|
57
|
+
"birth0:call-capability": "node scripts/birth0.js call-capability",
|
|
58
|
+
"birth0:route-capability": "node scripts/birth0.js route-capability",
|
|
59
|
+
"contracts:validate": "node scripts/birth0.js validate-contracts",
|
|
60
|
+
"verify:workspace": "./scripts/verify_workspace.sh",
|
|
61
|
+
"verify:ignition": "./scripts/verify_ignition.sh",
|
|
62
|
+
"verify:compiler-gate": "./scripts/verify_compiler_gate.sh",
|
|
63
|
+
"verify:full-system": "./scripts/verify_full_system_coherence.sh",
|
|
64
|
+
"verify:packaged-cli": "node scripts/verify_packaged_cli.js",
|
|
65
|
+
"verify:autonomy-routing": "node scripts/verify_autonomy_routing.js",
|
|
66
|
+
"verify:portable": "npm run verify:workspace && npm run verify:ignition && npm run verify:compiler-gate && npm run verify:full-system && npm run verify:packaged-cli && npm run contracts:validate",
|
|
67
|
+
"test": "npm run verify:portable",
|
|
68
|
+
"pack:dry-run": "npm pack --dry-run"
|
|
69
|
+
},
|
|
70
|
+
"dependencies": {
|
|
71
|
+
"ajv": "^8.18.0",
|
|
72
|
+
"ajv-formats": "^3.0.1"
|
|
73
|
+
},
|
|
74
|
+
"publishConfig": {
|
|
75
|
+
"access": "public"
|
|
76
|
+
}
|
|
77
|
+
}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "ActiveBlanket.schema.json",
|
|
4
|
+
"title": "ActiveBlanket",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"additionalProperties": false,
|
|
7
|
+
"required": [
|
|
8
|
+
"schema_version",
|
|
9
|
+
"mode",
|
|
10
|
+
"allowed_outputs",
|
|
11
|
+
"blocked_outputs",
|
|
12
|
+
"last_updated_at"
|
|
13
|
+
],
|
|
14
|
+
"properties": {
|
|
15
|
+
"schema_version": {
|
|
16
|
+
"type": "string",
|
|
17
|
+
"const": "1.0.0"
|
|
18
|
+
},
|
|
19
|
+
"mode": {
|
|
20
|
+
"type": "string",
|
|
21
|
+
"enum": ["proposal-first"]
|
|
22
|
+
},
|
|
23
|
+
"allowed_outputs": {
|
|
24
|
+
"type": "array",
|
|
25
|
+
"items": {
|
|
26
|
+
"type": "string",
|
|
27
|
+
"enum": ["response", "tool_call", "proposal", "no_op"]
|
|
28
|
+
},
|
|
29
|
+
"uniqueItems": true
|
|
30
|
+
},
|
|
31
|
+
"blocked_outputs": {
|
|
32
|
+
"type": "array",
|
|
33
|
+
"items": {
|
|
34
|
+
"type": "string",
|
|
35
|
+
"enum": ["direct_identity_write"]
|
|
36
|
+
},
|
|
37
|
+
"uniqueItems": true
|
|
38
|
+
},
|
|
39
|
+
"last_updated_at": {
|
|
40
|
+
"type": "string",
|
|
41
|
+
"format": "date-time"
|
|
42
|
+
},
|
|
43
|
+
"last_action": {
|
|
44
|
+
"type": "object",
|
|
45
|
+
"additionalProperties": false,
|
|
46
|
+
"required": ["type", "session_id", "routed_at"],
|
|
47
|
+
"properties": {
|
|
48
|
+
"type": {
|
|
49
|
+
"type": "string",
|
|
50
|
+
"enum": ["tool_call"]
|
|
51
|
+
},
|
|
52
|
+
"capability_id": {
|
|
53
|
+
"type": "string",
|
|
54
|
+
"pattern": "^(cap-[a-z0-9-]+|oauth-[a-z0-9-]+|api-[a-z0-9-]+|ollama-[a-z0-9-]+)$"
|
|
55
|
+
},
|
|
56
|
+
"task": {
|
|
57
|
+
"type": "string",
|
|
58
|
+
"minLength": 1
|
|
59
|
+
},
|
|
60
|
+
"session_id": {
|
|
61
|
+
"type": "string",
|
|
62
|
+
"pattern": "^session-[a-z0-9-]+$"
|
|
63
|
+
},
|
|
64
|
+
"routed_at": {
|
|
65
|
+
"type": "string",
|
|
66
|
+
"format": "date-time"
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "ArchiveEvent.schema.json",
|
|
4
|
+
"title": "ArchiveEvent",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"additionalProperties": false,
|
|
7
|
+
"required": [
|
|
8
|
+
"schema_version",
|
|
9
|
+
"event_id",
|
|
10
|
+
"event_type",
|
|
11
|
+
"occurred_at",
|
|
12
|
+
"session_id",
|
|
13
|
+
"actor",
|
|
14
|
+
"payload",
|
|
15
|
+
"evidence_refs",
|
|
16
|
+
"prior_event_hash",
|
|
17
|
+
"event_hash"
|
|
18
|
+
],
|
|
19
|
+
"properties": {
|
|
20
|
+
"schema_version": {
|
|
21
|
+
"type": "string",
|
|
22
|
+
"minLength": 1
|
|
23
|
+
},
|
|
24
|
+
"event_id": {
|
|
25
|
+
"type": "string",
|
|
26
|
+
"pattern": "^evt-[a-z0-9-]+$"
|
|
27
|
+
},
|
|
28
|
+
"event_type": {
|
|
29
|
+
"type": "string",
|
|
30
|
+
"enum": [
|
|
31
|
+
"birth_initialized",
|
|
32
|
+
"capsule_forged",
|
|
33
|
+
"monad_booted",
|
|
34
|
+
"witness_exchange",
|
|
35
|
+
"proposal_emitted",
|
|
36
|
+
"continuity_check",
|
|
37
|
+
"compiler_decision",
|
|
38
|
+
"shell_enabled",
|
|
39
|
+
"capability_registered",
|
|
40
|
+
"capability_routed",
|
|
41
|
+
"capability_authorization_started",
|
|
42
|
+
"capability_authorization_callback_received",
|
|
43
|
+
"capability_authorized",
|
|
44
|
+
"capability_executed"
|
|
45
|
+
]
|
|
46
|
+
},
|
|
47
|
+
"occurred_at": {
|
|
48
|
+
"type": "string",
|
|
49
|
+
"format": "date-time"
|
|
50
|
+
},
|
|
51
|
+
"session_id": {
|
|
52
|
+
"type": [
|
|
53
|
+
"string",
|
|
54
|
+
"null"
|
|
55
|
+
],
|
|
56
|
+
"pattern": "^session-[a-z0-9-]+$"
|
|
57
|
+
},
|
|
58
|
+
"actor": {
|
|
59
|
+
"type": "string",
|
|
60
|
+
"enum": [
|
|
61
|
+
"principal",
|
|
62
|
+
"eidolon",
|
|
63
|
+
"borganik",
|
|
64
|
+
"system"
|
|
65
|
+
]
|
|
66
|
+
},
|
|
67
|
+
"payload": {
|
|
68
|
+
"type": "object"
|
|
69
|
+
},
|
|
70
|
+
"evidence_refs": {
|
|
71
|
+
"type": "array",
|
|
72
|
+
"items": {
|
|
73
|
+
"type": "string",
|
|
74
|
+
"pattern": "^evt-[a-z0-9-]+$"
|
|
75
|
+
},
|
|
76
|
+
"uniqueItems": true
|
|
77
|
+
},
|
|
78
|
+
"prior_event_hash": {
|
|
79
|
+
"type": [
|
|
80
|
+
"string",
|
|
81
|
+
"null"
|
|
82
|
+
],
|
|
83
|
+
"pattern": "^[a-f0-9]{64}$"
|
|
84
|
+
},
|
|
85
|
+
"event_hash": {
|
|
86
|
+
"type": "string",
|
|
87
|
+
"pattern": "^[a-f0-9]{64}$"
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "CapabilityExecution.schema.json",
|
|
4
|
+
"title": "CapabilityExecution",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"additionalProperties": false,
|
|
7
|
+
"required": [
|
|
8
|
+
"schema_version",
|
|
9
|
+
"execution_id",
|
|
10
|
+
"capability_id",
|
|
11
|
+
"session_id",
|
|
12
|
+
"provider_kind",
|
|
13
|
+
"request_summary",
|
|
14
|
+
"response_summary",
|
|
15
|
+
"status",
|
|
16
|
+
"executed_at"
|
|
17
|
+
],
|
|
18
|
+
"properties": {
|
|
19
|
+
"schema_version": {
|
|
20
|
+
"type": "string",
|
|
21
|
+
"const": "1.0.0"
|
|
22
|
+
},
|
|
23
|
+
"execution_id": {
|
|
24
|
+
"type": "string",
|
|
25
|
+
"pattern": "^exec-[a-z0-9-]+$"
|
|
26
|
+
},
|
|
27
|
+
"capability_id": {
|
|
28
|
+
"type": "string",
|
|
29
|
+
"pattern": "^(cap-[a-z0-9-]+|oauth-[a-z0-9-]+|api-[a-z0-9-]+|ollama-[a-z0-9-]+)$"
|
|
30
|
+
},
|
|
31
|
+
"session_id": {
|
|
32
|
+
"type": "string",
|
|
33
|
+
"pattern": "^session-[a-z0-9-]+$"
|
|
34
|
+
},
|
|
35
|
+
"provider_kind": {
|
|
36
|
+
"type": "string",
|
|
37
|
+
"enum": ["oauth_api", "api", "ollama"]
|
|
38
|
+
},
|
|
39
|
+
"request_summary": {
|
|
40
|
+
"type": "string",
|
|
41
|
+
"minLength": 1
|
|
42
|
+
},
|
|
43
|
+
"response_summary": {
|
|
44
|
+
"type": "string",
|
|
45
|
+
"minLength": 1
|
|
46
|
+
},
|
|
47
|
+
"status": {
|
|
48
|
+
"type": "string",
|
|
49
|
+
"enum": ["succeeded", "failed"]
|
|
50
|
+
},
|
|
51
|
+
"executed_at": {
|
|
52
|
+
"type": "string",
|
|
53
|
+
"format": "date-time"
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|