Skip to content

Commit bc4d806

Browse files
hyperpolymathclaude
andcommitted
feat: implement Gnosis triple API (REST + gRPC + GraphQL) via V-lang
V-API-Interfaces now expose Gnosis stateful artefact rendering: - REST: POST /render, GET /context, GET /health - GraphQL: render/context/health queries + GraphiQL playground - gRPC: JSON-over-HTTP transport (gRPC-Web compatible) All three invoke the gnosis Haskell binary via os.execute(), configurable via GNOSIS_BIN env var. Compiles on V 0.5.0. Added Idris2 ABI types (GnosisTypes.idr): - RenderMode with exhaustiveness proof - TemplateSource with NonEmptySource proof - GnosisAPI interface for all three transports - Transport enum with portOffset distinctness proof Also converts v-ecosystem from orphaned gitlink to regular tracked directory (cleanup from 2026-02-20 submodule removal). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 6cfef4a commit bc4d806

1,275 files changed

Lines changed: 110765 additions & 1 deletion

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

v-ecosystem

Lines changed: 0 additions & 1 deletion
This file was deleted.

v-ecosystem/.editorconfig

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
# RSR-template-repo - Editor Configuration
2+
# https://editorconfig.org
3+
4+
root = true
5+
6+
[*]
7+
charset = utf-8
8+
end_of_line = lf
9+
indent_size = 2
10+
indent_style = space
11+
insert_final_newline = true
12+
trim_trailing_whitespace = true
13+
14+
[*.md]
15+
trim_trailing_whitespace = false
16+
17+
[*.adoc]
18+
trim_trailing_whitespace = false
19+
20+
[*.rs]
21+
indent_size = 4
22+
23+
[*.ex]
24+
indent_size = 2
25+
26+
[*.exs]
27+
indent_size = 2
28+
29+
[*.zig]
30+
indent_size = 4
31+
32+
[*.ada]
33+
indent_size = 3
34+
35+
[*.adb]
36+
indent_size = 3
37+
38+
[*.ads]
39+
indent_size = 3
40+
41+
[*.hs]
42+
indent_size = 2
43+
44+
[*.res]
45+
indent_size = 2
46+
47+
[*.resi]
48+
indent_size = 2
49+
50+
[*.ncl]
51+
indent_size = 2
52+
53+
[*.rkt]
54+
indent_size = 2
55+
56+
[*.scm]
57+
indent_size = 2
58+
59+
[*.nix]
60+
indent_size = 2
61+
62+
[Justfile]
63+
indent_style = space
64+
indent_size = 4
65+
66+
[justfile]
67+
indent_style = space
68+
indent_size = 4

v-ecosystem/.gitattributes

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# SPDX-License-Identifier: PMPL-1.0-or-later
2+
# RSR-compliant .gitattributes
3+
4+
* text=auto eol=lf
5+
6+
# Source
7+
*.rs text eol=lf diff=rust
8+
*.ex text eol=lf diff=elixir
9+
*.exs text eol=lf diff=elixir
10+
*.jl text eol=lf
11+
*.res text eol=lf
12+
*.resi text eol=lf
13+
*.ada text eol=lf diff=ada
14+
*.adb text eol=lf diff=ada
15+
*.ads text eol=lf diff=ada
16+
*.hs text eol=lf
17+
*.chpl text eol=lf
18+
*.scm text eol=lf
19+
*.ncl text eol=lf
20+
*.nix text eol=lf
21+
22+
# Docs
23+
*.md text eol=lf diff=markdown
24+
*.adoc text eol=lf
25+
*.txt text eol=lf
26+
27+
# Data
28+
*.json text eol=lf
29+
*.yaml text eol=lf
30+
*.yml text eol=lf
31+
*.toml text eol=lf
32+
33+
# Config
34+
.gitignore text eol=lf
35+
.gitattributes text eol=lf
36+
justfile text eol=lf
37+
Makefile text eol=lf
38+
Containerfile text eol=lf
39+
40+
# Scripts
41+
*.sh text eol=lf
42+
43+
# Binary
44+
*.png binary
45+
*.jpg binary
46+
*.gif binary
47+
*.pdf binary
48+
*.woff2 binary
49+
*.zip binary
50+
*.gz binary
51+
52+
# Lock files
53+
Cargo.lock text eol=lf -diff
54+
flake.lock text eol=lf -diff

v-ecosystem/.gitignore

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
# SPDX-License-Identifier: PMPL-1.0-or-later
2+
# RSR-compliant .gitignore
3+
4+
# OS & Editor
5+
.DS_Store
6+
Thumbs.db
7+
*.swp
8+
*.swo
9+
*~
10+
.idea/
11+
.vscode/
12+
13+
# Build
14+
/target/
15+
/_build/
16+
/build/
17+
/dist/
18+
/out/
19+
20+
# Dependencies
21+
/node_modules/
22+
/vendor/
23+
/deps/
24+
/.elixir_ls/
25+
26+
# Rust
27+
# Cargo.lock # Keep for binaries
28+
29+
# Elixir
30+
/cover/
31+
/doc/
32+
*.ez
33+
erl_crash.dump
34+
35+
# Julia
36+
*.jl.cov
37+
*.jl.mem
38+
/Manifest.toml
39+
40+
# ReScript
41+
/lib/bs/
42+
/.bsb.lock
43+
44+
# Python (SaltStack only)
45+
__pycache__/
46+
*.py[cod]
47+
.venv/
48+
49+
# Ada/SPARK
50+
*.ali
51+
/obj/
52+
/bin/
53+
54+
# Haskell
55+
/.stack-work/
56+
/dist-newstyle/
57+
58+
# Chapel
59+
*.chpl.tmp.*
60+
61+
# Secrets
62+
.env
63+
.env.*
64+
*.pem
65+
*.key
66+
secrets/
67+
68+
# Test/Coverage
69+
/coverage/
70+
htmlcov/
71+
72+
# Logs
73+
*.log
74+
/logs/
75+
76+
# Temp
77+
/tmp/
78+
*.tmp
79+
*.bak
80+
81+
# KDE directory metadata
82+
.directory
83+
84+
# Sync reports
85+
sync_report*.txt
86+
sync_repos_report*.txt
87+
88+
# Crash recovery artifacts
89+
ai-cli-crash-capture/
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
;; SPDX-License-Identifier: PMPL-1.0-or-later
2+
;; Reserved for future use.
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
;; SPDX-License-Identifier: PMPL-1.0-or-later
2+
(ecosystem (metadata (version "0.1.0") (last-updated "2026-02-08"))
3+
(project (name "language-bridges") (purpose "FFI bridges between languages via Zig") (role ffi-infrastructure)))
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
;; SPDX-License-Identifier: PMPL-1.0-or-later
2+
(meta (metadata (version "0.1.0") (last-updated "2026-02-08"))
3+
(project-info (type monorepo) (languages (zig ada gleam idris2 julia ocaml rescript rust swift)) (license "PMPL-1.0-or-later")))
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
;; SPDX-License-Identifier: PMPL-1.0-or-later
2+
;; Reserved for future use.
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
;; SPDX-License-Identifier: PMPL-1.0-or-later
2+
;; Reserved for future use.
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
;; SPDX-License-Identifier: PMPL-1.0-or-later
2+
(state (metadata (version "0.1.0") (last-updated "2026-02-08") (status active))
3+
(project-context (name "language-bridges") (purpose "FFI bridges between languages via Zig") (completion-percentage 20))
4+
(components (component "ada-zig-ffi") (component "gleam-zig-ffi") (component "idris2-zig-ffi") (component "julia-zig-ffi") (component "ocaml-zig-ffi") (component "rescript-zig-ffi") (component "rust-zig-ffi") (component "swift-zig-ffi") (component "zig-c-ffi") (component "zig-container-ffi") (component "zig-fuse-ext") (component "zig-libgit2-ffi") (component "zig-nickel-ffi") (component "zig-systemd-ffi") (component "zig-wireguard")))

0 commit comments

Comments
 (0)