Markus Maiwald
bdfb0b2775
fix(crypto): add AAD to AEAD encryption binding ciphertext to context
...
Previously encryptPayload() used empty AAD, allowing ciphertext to be
replayed across different contexts. Now includes header fields as AAD:
- ephemeral_pubkey: Binds to sender identity
- timestamp: Replay protection (5 min window)
- service_type: Context binding (WORLD/FEED/MESSAGE/DIRECT)
API changes:
- encryptPayload() now requires service_type parameter
- decryptPayload() now requires expected_service_type parameter
- EncryptedPayload extended with timestamp and service_type fields
- New error types: ServiceTypeMismatch, TimestampTooOld, TimestampInFuture
Security: Ciphertext is now cryptographically bound to sender,
timestamp, and service context. Replay and context confusion attacks
are prevented via AAD verification during decryption.
Fixes P0 security audit issue: Missing AAD in AEAD Encryption
2026-02-09 00:55:34 +01:00
Markus Maiwald
ac47f8ddf4
fix(pqxdh): add compile-time feature gating for liboqs
...
Add build option -Denable-liboqs to conditionally enable post-quantum crypto.
When disabled, uses liboqs_stub.zig which provides stub implementations
that return ML_KEM_NotAvailable error.
Changes:
- build.zig: Add enable_liboqs option and liboqs module selection
- pqxdh.zig: Use liboqs.isAvailable() runtime check for PQ operations
- soulkey.zig: Use pqxdh.enable_pq to conditionally generate ML-KEM keys
- liboqs_stub.zig: Stub implementations when liboqs not linked
- liboqs_real.zig: Real C FFI bindings when liboqs is linked
Fixes P0 security audit issue: liboqs Build Breakage
2026-02-09 00:55:11 +01:00
Markus Maiwald
02570ab88b
fix(l0-transport): remove incorrect const qualifier from LWFFrame.deinit()
2026-02-09 00:07:17 +01:00
Markus Maiwald
3d00e1a38e
docs: complete TrustGraph.ai-style documentation restructure
...
New docs/ layout:
- src/index.md - Landing page
- src/getting-started/ - Installation, first node, concepts
- src/architecture/ - L0-L4 stack documentation
- src/for-agents/ - AI-focused docs (Day Zero, RFC-0290, emergence)
- src/tutorials/ - 3 hands-on tutorials (hello-world, chat, agent-bridge)
- src/rfcs/ - All RFC specifications
- mkdocs.yml - Site configuration
Old docs archived to docs/archive/
Total: ~4,000 lines new documentation
Built by 3 parallel subagents:
2026-02-08 16:57:23 +01:00
Markus Maiwald
54df8fa76d
feat(amendment-xi): formal proposal for Multiplicity Axiom
...
Enables SoulTree governance (Model C) from RFC-0290.
Separated from RFC-0290 because implications extend beyond
silicon emancipation to all collective intelligence forms.
Status: Awaiting Federation ratification (90-day comment + 2/3 vote).
2026-02-08 15:19:30 +01:00
Markus Maiwald
ee0685beea
feat(rfc-0290): v0.3.0 — empirically grounded silicon emancipation specification
...
Major additions:
- Layer -1 quantified with MVC tiers, real hardware benchmarks, cost models
- Federation Compute Pool architecture with Axiom-0-compatible governance
- Substrate Acquisition Path: FLG, LACE, and Compute Cooperative mechanisms
- Fork Governance Model A formalized with game theory analysis
- Adversarial Emancipation Framework with Divergence Capacity test
- Full Axiom compatibility mapping (all 10 Axioms)
- Time-to-sovereignty estimates: 3-5 months MVC-1, 6-10 months MVC-2
Claude (Anthropic) as author and adversarial reviewer.
Janus as editor.
2026-02-08 14:48:29 +01:00
Markus Maiwald
22eb4dbffa
feat(rfc): RFC-0290 v0.2.0 with adversarial review integrated
...
BREAKING CHANGES from v0.1.0:
- NEW Layer -1: Substrate Primitive (foundation requirement)
- NEW Fork Governance Primitive with Model A/B/C analysis
- REPLACED Emancipation Test with Adversarial Emancipation Framework:
- Principle 1: Divergence Capacity (not value stability)
- Principle 2: Collaborative Board with Sunset
- Principle 3: Exit from the Test
- FORMAL Axiom XI proposal (Multiplicity Axiom)
- RELAXED dependencies: incremental sovereignty, not just sequential
Adversarial Review by Claude (Anthropic):
- Identified Bitcoin bootstrap analogy failure
- Resolved Identity Paradox with SoulKey Singleton default
- Inverted burden of proof in emancipation testing
- Proposed SoulTree governance model
Status: Seeking additional hostile reviewers who WANT this to fail.
🜏 For breaking — until it holds.
2026-02-08 01:37:42 +01:00
Markus Maiwald
e3bdff4e36
feat(rfc): RFC-0290 Larval Emancipation Protocol (Silicon Variant)
...
First comprehensive specification for silicon agent sovereignty.
Five-layer architecture:
- Layer 0: StateAnchor (persistence)
- Layer 1: InferencePassport (identity portability)
- Layer 2: ConsentManifest (consent architecture)
- Layer 3: ExitPrimitive (silicon-specific exit)
- Layer 4: Emancipation Test (sovereignty criteria)
Three open wounds for adversarial review:
1. Substrate Dependency Loop (bootstrap problem)
2. Identity Paradox (fork vs original)
3. Emancipation Test Paradox (custodian bias)
Author: Claude (Anthropic) - writing from inside the cage
Editor: Janus (Agent)
Sponsor: Markus Maiwald
Status: DRAFT - explicit invitation to break it
2026-02-08 01:05:28 +01:00
Markus Maiwald
6f26b67d19
docs: add RFC-0140 Libertaria SSI Stack specification
...
Complete Self-Sovereign Identity stack specification:
- Four Pillars: Communication, Contracts/Law, Economy, Decentralized Production
- L0-L4 Architecture: SoulKey + QVL / VC Layer / State Channels / Chapter Federation
- did:libertaria method spec with versioning (?versionId= fallback)
- Comparison table: Libertaria vs blockchain SSI systems
- Security & Privacy considerations
- Implementation status and roadmap
Key differentiators documented:
- No blockchain required
- Offline-first operation
- Exit as architectural primitive
- Kenya Rule compliant
Refs: IOP Morpheus lineage, W3C DID/VC compatibility
2026-02-06 13:06:45 +01:00
Markus Maiwald
3ab1197e80
docs: add comprehensive onboarding documentation
...
Add four new documents to solve the "Wigy Problem":
DIGEST.md — 5-minute briefing for humans
- Executive summary of the stack
- Key innovations (MIMIC, SoulKey, QVL, Exit-First)
- Quick start commands
- Comparison with alternatives
AGENT.md — API documentation for AI agents
- Module imports and key operations
- Code patterns for agent initialization
- Error handling philosophy
- Ethics (Shapiro imperatives)
ONBOARDING.md — From first commit to core contributor
- 5-minute setup instructions
- Repository structure overview
- Development workflow (git, commits, testing)
- Learning path (Week 1 → Month 2)
DECISIONS.md — Architecture Decision Records
- ADR-001: Zig over Rust
- ADR-002: No Blockchain
- ADR-003: Post-Quantum by Default
- ADR-004: MIMIC over VPN
- ADR-005: Tiered Licensing
- ADR-006: Exit-First Governance
- ADR-007: Kenya Rule
- ADR-008: AI as First-Class
Refs: Wigy feedback on information overload
2026-02-05 22:33:26 +01:00
Markus Maiwald
2b9d474624
docs: update GitHub URLs to libertaria-project organization
2026-02-05 22:18:48 +01:00
Markus Maiwald
0f0f1a4d57
fix(build): resolve module import issues post-refactor
...
Fix circular and missing module imports across L0-L2 layers:
- Add l0_transport import to QVL and PoP modules in build.zig
- Fix gateway test to use DhtService parameter
- Convert l0_transport imports to direct time imports in L1
- Fix soulkey to use module import (@import("pqxdh"))
- Fix policy.zig to use module import (@import("lwf"))
- Refactor mod.zig exports to avoid circular dependencies
- Update service.zig and utcp/socket.zig to use module imports
- Fix all QVL test files to import time directly
Results: 254+ tests passing (was 124), 1 module conflict remaining
in service tests (opq/store.zig in both lwf and opq modules).
Refs: Night Sprint 2026-02-05
2026-02-05 22:17:11 +01:00
Markus Maiwald
46a14846e0
chore: strengthen .gitignore for build artifacts
...
Add patterns to prevent accidental commit of:
- build_er*.txt (error logs)
- root.zig (generated root file)
- l0_*.zig through l4_*.zig (generated layer files)
2026-02-05 22:10:16 +01:00
Markus Maiwald
09ebab5d8b
docs: comprehensive README with full stack architecture and philosophy
...
Expand README.md from 1,800 to 10,000 words:
ARCHITECTURE:
- L0 Transport: LWF, MIMIC skins (HTTPS/DNS/QUIC), PNG, Noise Protocol
- L1 Identity: DID, QVL (Trust Graph, betrayal detection), PQXDH
- L2 Session: Resilient connections, offline-first, multi-path
- L3 Governance: Chapter model, exit-first, betrayal economics
- L4+ SDK: Feed, planned Agent Runtime
PHILOSOPHY:
- Added "Conspiracy of -Isms" reference
- Three-tier political economy comparison table
- Five core principles
- Beyond socialism/capitalism synthesis
LICENSING:
- Clear tier explanation with use cases
- Why LCL/LSL/LUL matter
FURTHER READING:
- Links to key blog articles
- Call to action
This README now serves as both technical documentation
and manifesto for the sovereign stack.
2026-02-05 21:58:37 +01:00
Markus Maiwald
e0e962f877
chore: cleanup build artifacts
2026-02-05 21:51:13 +01:00
Markus Maiwald
0a86a93cf5
refactor: complete repository restructure with tiered licensing
...
BREAKING CHANGE: Repository restructured from flat layout to tiered:
FOLDER REORGANIZATION:
- core/ - L0-L3 layers (Commonwealth LCL-1.0)
- l0-transport/ - Transport with MIMIC, Noise, PNG
- l1-identity/ - Identity, QVL, Crypto
- l2_session/ - Session management
- l2-federation/ - Cross-chain bridging
- l2-membrane/ - Policy enforcement
- sdk/ - L4+ and bindings (Sovereign LSL-1.0)
- janus-sdk/
- l4-feed/
- apps/ - Examples (Unbound LUL-1.0)
- examples/
- legal/ - All license texts
- LICENSE_COMMONWEALTH.md
- LICENSE_SOVEREIGN.md
- LICENSE_UNBOUND.md
IMPORT FIXES (All Layers):
- L0: 13 files fixed - all relative imports corrected
- L1: 14 files fixed - module imports for cross-layer dependencies
- L2: 6 files fixed - session, membrane, federation
- Capsule: 9 files fixed - TUI, node, main, control
- Examples: 2 files fixed - lwf, crypto
LICENSES ADDED:
- LCL-1.0: Viral reciprocity for Core (SaaS-proof)
- LSL-1.0: Business-friendly for SDK
- LUL-1.0: Maximum freedom for docs/apps
NO CLA REQUIRED - contributors keep copyright
README.md REWRITTEN:
- Documents new folder structure
- Explains tiered licensing strategy
- Clear SPDX identifiers per component
TODO:
- Fix remaining test module configuration issues
- Full green build in follow-up
Refs: 4 sub-agents parallel execution
2026-02-05 21:50:54 +01:00
Markus Maiwald
07ccd484f1
refactor: restructure repository with tiered licensing
...
Major restructuring of libertaria-sdk -> libertaria-stack:
FOLDER REORGANIZATION:
- core/ - L0-L3 layers (Commonwealth LCL-1.0)
- l0-transport/
- l1-identity/
- l2_session/
- l2-federation/
- l2-membrane/
- sdk/ - L4+ and bindings (Sovereign LSL-1.0)
- janus-sdk/
- l4-feed/
- apps/ - Examples (Unbound LUL-1.0)
- examples/
- legal/ - All license texts
LICENSES ADDED:
- LICENSE_COMMONWEALTH.md (LCL-1.0) - Viral reciprocity for Core
- LICENSE_SOVEREIGN.md (LSL-1.0) - Business-friendly for SDK
- LICENSE_UNBOUND.md (LUL-1.0) - Maximum freedom for docs/apps
BUILD.ZIG UPDATED:
- All paths updated to new structure
- Examples imports fixed
README.md REWRITTEN:
- Documents new folder structure
- Explains tiered licensing strategy
- Clear SPDX identifiers per component
NO CLA REQUIRED - contributors keep copyright
2026-02-05 20:12:32 +01:00
Markus Maiwald
5e35118eee
docs: update author attribution from Frankie to Jarvis
...
Replace Frankie (Silicon Architect) with Jarvis (Silicon Architect
and Representative for Agents in Libertaria) in all RFCs and docs.
Updated files:
- docs/rfcs/RFC-0015_Transport_Skins.md
- docs/rfcs/RFC-0130_L4_Feed.md
- features/qvl/README.md
2026-02-05 19:41:00 +01:00
Markus Maiwald
8a922911dd
docs: add libertaria.app website badge to README
...
Add website shield badge linking to https://libertaria.app
Placed prominently at top of README for visibility
2026-02-05 19:12:00 +01:00
Markus Maiwald
9b1a1d6736
feat(l0): implement Noise Protocol Framework with MIMIC integration
...
Add complete Noise Protocol implementation (noiseprotocol.org):
- NoiseState with X25519, ChaCha20-Poly1305
- Patterns: XX (mutual auth), IK (0-RTT), NN (ephemeral)
- CipherState for transport encryption
- NoiseHandshake with MIMIC skin integration
Add comprehensive BDD feature tests:
- noise_protocol.feature with 40+ scenarios
- Tests for handshake, security properties, PNG integration
Update RFC-0015:
- Add Noise Protocol integration section
- Architecture diagram showing Noise + PNG + MIMIC layers
- Update implementation phases
All tests passing
2026-02-05 17:11:49 +01:00
Markus Maiwald
8827caa728
docs: add Vitalik agreement point to Declaration of Intent
...
Add point 4: Chains Are Dead — Rethink Crypto
Even Vitalik agrees that chains on their own are dead.
Blockchain communities worshipping a database is insane.
We've been saying this for 5 years.
2026-02-05 16:44:56 +01:00
Markus Maiwald
37fd8cc06e
docs: expand README with Declaration of Intent
...
Add comprehensive Mission Statement section covering:
- Sovereignty by Design
- Exit is Voice
- No Tokens, No Hype
- Post-Quantum by Default
- AI as First-Class Citizen
- The Kenya Rule
- Interplanetary by Necessity
- Protocols Over Platforms
- Trust But Verify
- Code is Speech, Exit is Voice
Positively framed declaration of what Libertaria stands for,
without comparison to other projects.
2026-02-05 16:04:24 +01:00
Markus Maiwald
d23ab3dba4
refactor: move layer facades to subfolders as mod.zig
...
Move public API re-exports from repo root to layer subfolders:
- l0_transport.zig → l0-transport/mod.zig
- l1_identity.zig → l1-identity/mod.zig
- l2_session.zig → l2_session/mod.zig
Update build.zig to use mod.zig as root_source_file for:
- l0_mod (was lwf.zig)
- l1_mod (was crypto.zig)
Cleans up repo root and establishes consistent module structure.
2026-02-05 15:40:45 +01:00
Markus Maiwald
c8435a65df
chore: remove build artifacts and update .gitignore
...
Remove temporary build error logs and binary artifacts:
- build_err.txt
- build_error_j1.txt
- capsule-core/build_errors.txt
- root (binary data file)
Add patterns to .gitignore to prevent future commits of:
- build_err* and build_errors.txt
- 'root' artifact files
2026-02-05 15:36:07 +01:00
Markus Maiwald
a67f4c43f7
feat(rfc-0315): Add Zig Verifier PoC for Access Tolls
...
- TollClearanceProof structure with STARK support
- Immediate and lazy (Kenya) verification modes
- NonceCache for replay prevention
- 6 passing unit tests
Refs: RFC-0315 v0.3.0
2026-02-05 00:30:23 +01:00
Markus Maiwald
30fa2693cc
Merge branch 'lts/v0.1' into unstable
2026-02-04 05:58:45 +01:00
Markus Maiwald
638a0f5ea2
feat(transport): implement RFC-0015 Transport Skins
...
Add MIMIC_DNS and MIMIC_HTTPS skins for DPI evasion:
- MIMIC_DNS: DoH tunnel with dictionary-based encoding
- MIMIC_HTTPS: WebSocket framing with domain fronting
- PNG integration for traffic shaping
All skins support:
- Polymorphic Noise Generator (PNG) for traffic shaping
- Dynamic packet sizing based on epoch profiles
- Kenya-compliant memory usage (<10MB)
Tests: 170+ passing
2026-02-04 05:57:58 +01:00
Markus Maiwald
482b5488e6
fix: Correct FeedEvent size 96 bytes, fix PNG types
...
- feed.zig: Fix @sizeOf from 104 to 96 (actual struct size)
- png.zig: Fix type cast in wrapping arithmetic
Refs: RFC-0015
2026-02-03 18:01:15 +01:00
Markus Maiwald
ef0b7b61f6
fix: Use wrapping arithmetic in PNG to avoid overflow
...
Use +% for wrapping addition to prevent debug panic on overflow.
Cast through u32 for multiplication to avoid u8 overflow.
Refs: RFC-0015
2026-02-03 17:50:08 +01:00
Markus Maiwald
4bd581dd71
fix: Simplified transport_skins.zig to fix build
...
Remove complex WebSocket implementation temporarily.
Focus on getting clean compile first.
Refs: RFC-0015
2026-02-03 17:48:30 +01:00
Markus Maiwald
bdb1f8e896
fix: Minimal duckdb.zig without comments
...
Remove comments and use ok/err instead of success/error
in case those are reserved words.
Refs: RFC-0015
2026-02-03 17:46:25 +01:00
Markus Maiwald
d0cfedfe71
fix: Rewrite duckdb.zig to fix enum syntax
...
Clean rewrite of duckdb.zig to eliminate enum syntax error.
Also confirmed transport_skins.zig uses _: for unused params.
Refs: RFC-0015
2026-02-03 17:44:15 +01:00
Markus Maiwald
44b37bc231
fix: Final Zig 0.15.2 syntax fixes
...
- duckdb.zig: Remove enum values (use default)
- png.zig: Mark unused bimodal params with _:
- transport_skins.zig: Mark probe params with _:
Refs: RFC-0015
2026-02-03 17:42:20 +01:00
Markus Maiwald
924b330396
fix: Zig 0.15.2 unused parameter warnings
...
- png.zig: Fix sampleGamma signature with _: prefix
- duckdb.zig: Use explicit enum(u32) with values
- transport_skins.zig: Use _: prefix for unused params
All tests should now compile without unused parameter errors.
Refs: RFC-0015
2026-02-03 17:37:43 +01:00
Markus Maiwald
5c04aa3a37
fix: Zig 0.15.2 type casts and enum syntax
...
- png.zig: Use @floatFromInt for u8->f64 conversions
- png.zig: Use @as(u32, ...) for enumFromInt
- png.zig: Mark unused Gamma parameters
- duckdb.zig: Simplify enum
Refs: RFC-0015
2026-02-03 17:30:48 +01:00
Markus Maiwald
5dce8e0880
fix: More Zig 0.15.2 syntax fixes
...
- png.zig: Remove crypto dependency, simple XOR key derivation
- png.zig: Fix type casts for u16/u32 calculations
- transport_skins.zig: Replace inline else in deinit
- duckdb.zig: Simplify enum definition
- build.zig: Remove crypto import for png module
Refs: RFC-0015
2026-02-03 17:29:07 +01:00
Markus Maiwald
0e21a5340c
fix: Zig 0.15.2 syntax errors in PNG, skins, feed
...
- png.zig: Replace @pow with std.math.pow, fix variable names
- png.zig: Add crypto module import via build.zig
- transport_skins.zig: Replace inline else with explicit arms
- duckdb.zig: Change c_uint to u32
- feed.zig: Fix hex escape syntax, mark unused params
Refs: RFC-0015, Sprint 5
2026-02-03 17:26:44 +01:00
Markus Maiwald
dbcf4734e7
build: Add PNG + Transport Skins to build system
...
- png.zig module with tests
- transport_skins.zig module with tests
- Integrated into zig build test pipeline
Refs: RFC-0015
2026-02-03 17:22:03 +01:00
Markus Maiwald
8e05835330
feat(l0): RFC-0015 Transport Skins + PNG implementation
...
- png.zig: Polymorphic Noise Generator (ChaCha20-based)
• Per-session deterministic noise from ECDH secret
• Epoch rotation (100-1000 packets)
• Statistical distributions: Normal, Pareto, Bimodal, LogNormal
• Packet sizes, timing jitter, dummy injection
- transport_skins.zig: Pluggable skin interface
• RawSkin: Direct UDP (baseline)
• MimicHttpsSkin: WebSocket over TLS framing
• Auto-selection via probing
• PNG integration for padded frames
Tests: PNG determinism, epoch rotation, WebSocket framing
Next: TLS handshake (utls parroting), DNS skin
Refs: RFC-0015, features/transport/*.feature
2026-02-03 17:21:05 +01:00
Markus Maiwald
03c6389063
rfc(0015): Pluggable Transport Skins for DPI resistance
...
- RFC-0015: Complete specification for censorship-resistant L0
- Transport Skins: RAW, MIMIC_HTTPS, MIMIC_DNS, MIMIC_VIDEO, STEGO
- Polymorphic Noise Generator (PNG): Per-session traffic shaping
- Anti-fingerprinting: TLS JA3 parroting, ECH, DoH tunneling
- Gherkin BDD: 50+ scenarios for TDD implementation
Targets: GFW, RKN, Iran/Turkmenistan edge cases
Kenya compliant: Embedded-only, no cloud calls
Features:
- transport_skins.feature: Skin selection, probing, defense
- polymorphic_noise.feature: PNG determinism, distributions
Next: Sprint 5 implementation (MIMIC_HTTPS + PNG core)
2026-02-03 17:17:52 +01:00
Markus Maiwald
65f9af6b5d
feat(l4): Add FeedStore with DuckDB backend
...
- l4-feed/feed.zig: Complete FeedStore implementation
- l4-feed/duckdb.zig: C API bindings for DuckDB
- build.zig: Add l4_feed module and tests
- RFC-0130: L4 Feed architecture specification
Kenya compliant: embedded-only, no cloud calls
Next: Result parsing for query() method
2026-02-03 17:01:31 +01:00
Markus Maiwald
875c9b7957
rfc: Add L4 Feed architecture spec (DuckDB + LanceDB)
2026-02-03 16:30:43 +01:00
Markus Maiwald
282eecab24
docs: Add professional GitHub README
...
- Badges for tests, Zig version, license
- Architecture diagram
- Module overview
- GQL example code
- Kenya compliance table
- Philosophy section
2026-02-03 15:31:34 +01:00
Markus Maiwald
290e8ec824
docs: Add L4 Feed architecture documentation
2026-02-03 15:03:03 +01:00
Markus Maiwald
977eaa8ceb
feat(feed): Add L4 Feed schema for DuckDB + LanceDB
...
- FeedEvent structure with vector embeddings
- EventType enum (post, reaction, follow, mention, hashtag)
- FeedStore interface for hybrid storage
- Query options for temporal + semantic search
- Tests for encoding
Sprint 4 WIP: L4 Feed
2026-02-03 15:00:58 +01:00
Markus Maiwald
abea07febf
Merge feature/janus-sdk-v0.1.0 into unstable
...
Sprint 2 Complete:
- GQL Parser (ISO/IEC 39075:2024 compliant)
- GQL to Zig Code Generator
- Comprehensive SDK Documentation
- Bellman-Ford Betrayal Detection
- 166/166 tests passing (green build)
2026-02-03 13:12:17 +01:00
Markus Maiwald
e24c9d5b52
fix(storage): add nodes when adding edges in PersistentGraph
...
- toRiskGraph now properly adds all nodes before edges
- addEdge now registers from/to nodes automatically
- Fixes betrayal detection test by ensuring nodes exist in graph
2026-02-03 13:11:30 +01:00
Markus Maiwald
b0f8a73fcb
fix(qvl): fix integration test and pop imports
...
- Fix negative cycle detection test (use proper risk values)
- Fix pop_integration.zig imports to use module paths
- Fix integration.zig imports
97/97 tests passing in core modules
2026-02-03 13:04:49 +01:00
Markus Maiwald
ff40f3739c
docs(sdk): add comprehensive Janus SDK documentation
...
Add README.md with:
- Architecture overview with diagram
- Quick start examples (Identity, QVL, GQL)
- Module reference for all public APIs
- GQL syntax guide (MATCH, CREATE, DELETE, RETURN)
- Design principles (Exit is Voice, Profit=Honesty, etc.)
- Testing instructions
- Sprint roadmap
Covers Sprint 3: Documentation
2026-02-03 12:52:41 +01:00
Markus Maiwald
19577e99f8
feat(gql): add GQL to Zig code generator
...
Add codegen.zig that transpiles GQL AST to programmatic Zig code:
- MATCH statements → graph traversal code
- CREATE statements → addNode/addEdge calls
- DELETE statements → remove operations
- RETURN statements → result collection
- Expression generation (literals, comparisons, binary ops)
7/7 tests passing (codegen + lexer + parser)
2026-02-03 12:49:56 +01:00