Skip to content

Commit 0d6776e

Browse files
authored
docs: publish DreamNet architecture whitepaper v0.2 (#1)
1 parent d8365e2 commit 0d6776e

7 files changed

Lines changed: 393 additions & 16 deletions

File tree

‎.github/workflows/ci.yml‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@ jobs:
1414
runs-on: ubuntu-latest
1515
timeout-minutes: 10
1616
steps:
17-
- uses: actions/checkout@v4
18-
- uses: actions/setup-node@v4
17+
- uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4
18+
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
1919
with:
2020
node-version: 22
2121
cache: npm

‎.gitignore‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
node_modules/
22
dist/
33
coverage/
4+
artifacts/ops/cerberus/
45
.env
56
.env.*
67
!.env.example

‎README.md‎

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,11 +104,15 @@ if (!validateReceipt(receipt).valid) {
104104
- JSON Schemas
105105

106106
See [Public and Private Boundaries](docs/BOUNDARIES.md) and
107-
[Architecture](docs/ARCHITECTURE.md).
107+
[Architecture](docs/ARCHITECTURE.md). The complete public model is in the
108+
[DreamNet Whitepaper](docs/WHITEPAPER.md).
108109

109110
## Ecosystem
110111

111112
- [DreamLoops](https://github.com/BrandonDucar/dreamloops)
113+
- [GitGrid](https://github.com/BrandonDucar/dreamnet-git-grid)
114+
- [Cerberus](https://github.com/BrandonDucar/dreamnet-cerberus)
115+
- [Temporal Worker](https://github.com/BrandonDucar/dreamnet-temporal)
112116
- [ToolGym](https://github.com/BrandonDucar/toolgym)
113117
- [Memory Weaver](https://github.com/BrandonDucar/memory-weaver)
114118
- [Proof Drop](https://github.com/BrandonDucar/proof-drop-zabal)

‎docs/ARCHITECTURE.md‎

Lines changed: 53 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,69 @@
11
# Architecture
22

3-
DreamNet Public Core defines the seam between an objective and verifiable work.
3+
DreamNet Public Core defines the contract between an objective, durable work,
4+
and independently inspectable evidence.
45

56
```text
6-
Objective
7+
Goal
78
-> Assignment Envelope
89
-> Capsule
9-
-> DreamLoop runtime
10-
-> Verification
10+
-> DreamLoop
11+
-> Specialist Work
12+
-> Verification and Adaptive Quorum
13+
-> Claim Factory
1114
-> Receipt
12-
-> Claim
13-
-> Proof Drop or durable memory
15+
-> Security Receipt Router
16+
| green -> admit
17+
| yellow -> quarantine and remediate
18+
| red -> isolate and open incident
19+
-> GitGrid, Proof Drop, and approved memory
1420
```
1521

16-
The runtime is intentionally not prescribed. A compatible implementation can
17-
use a local process, OpenClaw, an agent framework, a durable workflow engine, a
18-
Cloudflare Worker, or another substrate.
22+
The runtime is intentionally replaceable. A compatible implementation may use a
23+
local process, OpenClaw, an agent framework, a Temporal worker, a Cloudflare
24+
Worker, or another substrate.
25+
26+
## Planes
27+
28+
### Contract plane
29+
30+
Assignment, Capsule, DreamLoop state, Claim, Receipt, and Proof Drop structures
31+
remain portable across runtimes.
32+
33+
### Execution plane
34+
35+
Temporal or another durable engine owns task delivery, timers, retries, and
36+
workflow history. NUC, cloud, and edge workers execute bounded activities.
37+
38+
### Evidence plane
39+
40+
GitGrid repositories store approved events, claims, receipts, snapshots, and
41+
lineage. Large artifacts remain in approved object storage and are referenced by
42+
digest.
43+
44+
### Projection plane
45+
46+
PGLite, Neon, Graphiti, vector indexes, search, and caches provide fast reads.
47+
When the product permits, they are rebuildable projections rather than the only
48+
copy of organizational knowledge.
49+
50+
### Security plane
51+
52+
Cerberus scans an exact artifact before installation or execution. The Receipt
53+
Router converts its verdict into a durable admit, remediation, or incident
54+
branch.
1955

2056
## Invariants
2157

2258
- Every meaningful job has one assignment ID.
23-
- Consequential effects use an idempotency key.
24-
- Critical assignments require approval.
59+
- Consequential effects use stable idempotency keys.
60+
- Critical assignments require explicit approval.
2561
- Successful receipts contain evidence.
26-
- Claims and receipts are different objects.
62+
- Claims and receipts remain different objects.
2763
- Runtime state is explicit and restart-safe.
64+
- Security receipts are bound to an exact digest or commit.
65+
- Missing, yellow, and red security receipts block execution.
66+
- Replayed receipts cannot duplicate consequential effects.
2867
- Private orchestration is not required to validate public artifacts.
68+
69+
See [DreamNet Whitepaper](WHITEPAPER.md) for the complete public model.

‎docs/BOUNDARIES.md‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@ adopt without access to DreamNet's private operating environment:
1515
- Canonical hashing helpers
1616
- Local validation
1717
- Public examples and schemas
18+
- GitGrid repository contracts and storage rules
19+
- Cerberus security-receipt formats and routing rules
20+
- Reference Temporal worker patterns
1821

1922
## Private Engine
2023

@@ -36,7 +39,7 @@ public release by deleting a few known secrets from the private monorepo.
3639

3740
Every extraction must pass:
3841

39-
1. Secret and credential scan
42+
1. Cerberus scan bound to the exact source commit
4043
2. License and attribution review
4144
3. Dependency and vulnerability review
4245
4. Proprietary-boundary review

‎docs/RECEIPT_ROUTING.md‎

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
# Receipt Routing
2+
3+
The Receipt Router turns a content-bound security verdict into a durable workflow
4+
branch.
5+
6+
| Verdict | Execution | Route |
7+
| --- | --- | --- |
8+
| Green | Allowed for the scanned digest | Admit |
9+
| Yellow | Blocked | Quarantine and remediate |
10+
| Red | Blocked | Isolate and open an incident |
11+
| Missing or unknown | Blocked | Fail closed |
12+
13+
## Yellow
14+
15+
Yellow stops installation and execution, preserves the artifact without running
16+
it, opens remediation work linked to each finding, expands the relevant
17+
specialist quorum, and requires a green receipt for a replacement commit.
18+
19+
## Red
20+
21+
Red aborts the assignment, isolates derived output, revokes temporary access,
22+
preserves logs and hashes, creates an incident Proof Drop, alerts the designated
23+
operator, and requires human approval before re-entry.
24+
25+
## Idempotency
26+
27+
The routing key is:
28+
29+
```text
30+
receipt digest + policy version
31+
```
32+
33+
Replaying a receipt returns its existing route decision. It must not create
34+
duplicate issues, alerts, revocations, Proof Drops, or external effects.
35+
36+
## Re-entry
37+
38+
An artifact re-enters only when:
39+
40+
- remediation produced a new commit or digest,
41+
- the new artifact received a green receipt,
42+
- required reviews and approvals completed,
43+
- access is reissued with fresh scope,
44+
- the original yellow or red receipt remains preserved as lineage evidence.

0 commit comments

Comments
 (0)