Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
677 commits
Select commit Hold shift + click to select a range
97537b2
Merge pull request #343 from gHashTag/restore-phi-loop-ci
gHashTag Apr 8, 2026
e70bf9f
feat(bootstrap): add 14 new CLI commands, optimizer passes, and 4 HTT…
gHashTag Apr 7, 2026
8ae5bfa
feat(bootstrap): add rename, spellcheck, coverage, validate, loop unr…
gHashTag Apr 7, 2026
2a5b5e9
feat(bootstrap): add xref, bench-compile, minify, count, check-deps, …
gHashTag Apr 7, 2026
8ff8965
feat(bootstrap): add summary, sort, used-by, loc, merge, types, to-js…
gHashTag Apr 7, 2026
dc2c632
feat(bootstrap): add visualize, bench-endpoints, complexity, strings …
gHashTag Apr 8, 2026
4f7d5c7
feat(bootstrap): add symbols, ast-dump, hash, depth, orphans CLI comm…
gHashTag Apr 8, 2026
2e9a77e
feat(fpga): add t27c fpga-build, fix XDC pins, resolve seal collisions
gHashTag Apr 8, 2026
ffd1688
docs: update NOW.md with FPGA pipeline restoration PR #344
gHashTag Apr 8, 2026
7b2405c
docs: decode NOW.md to plaintext, update date for PR #344
gHashTag Apr 8, 2026
a7a5e71
fix(ci): use workspace target path for t27c binary in seal-coverage w…
gHashTag Apr 8, 2026
6825d34
feat(t27c): add validate-seals and validate-phi-identity CLI commands
gHashTag Apr 8, 2026
9ca5bf0
fix(ci): remove --repo-root flag from validate-seals and validate-phi…
gHashTag Apr 8, 2026
eb626a8
ci: add PHI Loop CI workflow for required status check
gHashTag Apr 8, 2026
32cb504
Merge pull request #344 from gHashTag/feat/fpga-pipeline-336
gHashTag Apr 8, 2026
9c707b5
chore: add Pellis seals with pending hashes
Apr 8, 2026
96c855a
fix(ci): issue-gate advisory mode, re-seal 135 specs, Yosys Makefile fix
gHashTag Apr 8, 2026
55f843f
fix(ci): remove paths filter from schema-validation workflow
gHashTag Apr 8, 2026
1ffb020
Merge pull request #349 from gHashTag/fix/ci-issue-gate-green
gHashTag Apr 8, 2026
f6ae700
Merge branch 'master' of https://github.com/gHashTag/t27
Apr 8, 2026
48fae80
docs: update NOW.md date to 2026-04-08
Apr 8, 2026
ae7c7dc
feat(fpga): instantiate UART/SPI/TopLevel in synthesis, fix type-suff…
gHashTag Apr 8, 2026
6002330
fix(ci): remove paths filter from seal-coverage workflow
gHashTag Apr 8, 2026
902e994
Merge pull request #360 from gHashTag/fix/fpga-synthesis-modules
gHashTag Apr 8, 2026
8a3e786
## Sprint 8 Complete — 8/8 Acceptance Criteria PASS
Apr 8, 2026
c2c720d
fix(compiler): const declarations generate reg in Verilog codegen
gHashTag Apr 8, 2026
4ff2815
Merge pull request #363 from gHashTag/fix/fpga-const-reg-codegen
gHashTag Apr 8, 2026
1cf1fcb
ci: add pull_request triggers to workflows for Sprint 8
Apr 8, 2026
36c5cb9
fix(compiler): const_propagate skips reassigned vars, &&/|| lexer tokens
gHashTag Apr 8, 2026
d6332e1
Merge pull request #365 from gHashTag/fix/fpga-optimizer-and-lexer
gHashTag Apr 8, 2026
a4c38e4
feat(storage): add .t27 specifications for storage module
Apr 8, 2026
8def2d1
feat(git): add .t27 specifications for git module
Apr 8, 2026
c6e4a65
feat(account): add .t27 specifications for account module
Apr 8, 2026
a8a51e8
resolve merge conflict in seal-coverage.yml
Apr 8, 2026
f30b112
feat(fpga): MAC in synthesis (4/5 modules), &&/|| precedence, field a…
gHashTag Apr 8, 2026
c876f88
Merge pull request #369 from gHashTag/fix/fpga-mac-synthesis
gHashTag Apr 8, 2026
d32f416
feat(fpga): ALL 5 FPGA modules in Yosys synthesis
gHashTag Apr 8, 2026
c59a00d
Merge pull request #371 from gHashTag/feat/fpga-all-5-modules
gHashTag Apr 8, 2026
325f7b3
chore: add SPDX headers to all specs + regenerate seals. Closes #366
Apr 8, 2026
446dc92
Merge remote-tracking branch 'origin/master' into ring-wrapup-per-iss…
Apr 8, 2026
b91355c
fix(railway): optimize Docker build, add .dockerignore to exclude 3.1…
Apr 8, 2026
530934d
feat: Trinity γ-Paper — Barbero-Immirzi Parameter from Golden Section
Apr 8, 2026
947d894
feat: Trinity γ-Paper — Barbero-Immirzi Parameter from Golden Section
Apr 8, 2026
2309490
Merge branch 'master' of https://github.com/gHashTag/t27
Apr 8, 2026
7ed46ab
fix(railway): optimize Docker build, add .dockerignore to exclude 3.1…
Apr 8, 2026
b6cb59d
Merge branch 'ring-wrapup-per-issue-notebook' of https://github.com/g…
Apr 8, 2026
492548d
feat(sandbox): add health, https_enforce, orphan_detection specs
Apr 8, 2026
d063152
chore: SPDX headers + seal coverage fix (#368)
gHashTag Apr 8, 2026
feaf7a8
fix(ci): use bash -c for pandoc, bibtex min-crossrefs (L7 compliant, …
Apr 8, 2026
718bead
Merge pull request #373 from gHashTag/fix/build-paper-workflow
gHashTag Apr 8, 2026
0dd748d
feat(fpga): E2E open-source bitstream pipeline (Yosys + nextpnr + prj…
gHashTag Apr 8, 2026
0d4b4b5
Merge pull request #376 from gHashTag/feat/fpga-e2e-bitstream
gHashTag Apr 8, 2026
43cc262
feat(specs): Phase 3 — shell, tools, file in .t27
Apr 8, 2026
9508024
docs(NOW): update for Phase 3 — shell, tools, file specs (PR #379)
Apr 8, 2026
7833a92
Merge pull request #379 from gHashTag/feat/specs-phase3-shell-tools-file
gHashTag Apr 8, 2026
de2fbf3
fix(railway): optimize Docker build, add .dockerignore (#375)
gHashTag Apr 8, 2026
67141f8
fix(docker): add id=bun_cache to BuildKit cache mount for Railway com…
Apr 8, 2026
4cc4239
fix(docker): use sharing=locked instead of id for Railway BuildKit cache
Apr 8, 2026
1c7d6c1
fix(docker): remove BuildKit cache mount, rely on Docker layering + .…
Apr 8, 2026
e1c06c5
fix(docker): exclude only node_modules (2.9GB) not entire opencode dir
Apr 8, 2026
e719798
fix(docker): simplify COPY to avoid Railway cache key error
Apr 8, 2026
994269c
fix(docker): restore package files COPY order, keep node_modules excl…
Apr 8, 2026
d4e62bc
fix(docker): separate COPY commands to avoid cache key issues
Apr 8, 2026
11b8afd
fix(docker): remove bun.lock COPY to avoid Railway cache bug, install…
Apr 8, 2026
c1aece7
feat: add LSP, Provider, and Event Bus .t27 specifications
Apr 8, 2026
6db890f
fix(docker): use ../external/ paths since build context is bootstrap/
Apr 8, 2026
5baf9e7
fix(docker): ensure .dockerignore only excludes node_modules, not ent…
Apr 8, 2026
e25010e
fix(docker): move Dockerfile to repo root, update paths to remove ../…
Apr 8, 2026
8182d71
fix(docker): remove .dockerignore temporarily to test Railway cache
Apr 8, 2026
7e61f1c
fix(docker): try ADD instead of COPY to avoid Railway cache bug
Apr 8, 2026
c899e7f
fix(docker): clone opencode directly since Railway can't access exter…
Apr 8, 2026
9c7379e
fix(railway): inline opencode submodule as regular files for Railway …
Apr 8, 2026
1b4c17e
fix(docker): use COPY from inlined external/opencode, no git clone
Apr 8, 2026
24dd3d1
fix(docker): add .dockerignore to force Railway cache reset
Apr 8, 2026
9d47e26
fix(railway): use Railway fork opencode (752KB) instead of 3.1GB Go p…
Apr 8, 2026
a04b05a
fix(docker): copy tsconfig.json for web build
Apr 8, 2026
3eaf88c
feat(specs): Phase 5 FINAL — server, sync, config, runtime in .t27
Apr 8, 2026
6769250
fix(docker): copy all tsconfig and vite config files
Apr 8, 2026
2084e47
fix(docker): copy public directory for tsconfig include paths
Apr 8, 2026
296ae98
fix(docker): COPY entire packages/web/ to preserve directory structure
Apr 8, 2026
c7bbdd0
Autonomous research: 6 smoking guns discovered with PySR v0.2 validation
Apr 9, 2026
aaec99f
feat(trinity-physics): Deploy PySR blind test, Occam search, Coq DL b…
Apr 9, 2026
f2abca6
feat(boards): Arty A7 board profile spec (#390)
gHashTag Apr 9, 2026
89d1163
feat(boards): board profiles for XC7A100T (minimal + full) (#382)
gHashTag Apr 9, 2026
2107ef8
feat(pins): Pins IR + XDC emitter for nextpnr constraint generation (…
gHashTag Apr 9, 2026
d8ad79c
feat(fpga): --profile flag for fpga-build (minimal/full) (#387)
gHashTag Apr 9, 2026
9699dd2
docs: add system status dashboard to README (#391)
gHashTag Apr 9, 2026
6b7b5ee
feat(tri): PHI LOOP CLI + MCP server + FPGA CI workflow (#378)
gHashTag Apr 9, 2026
dfcf703
feat: Add NotebookLM integration, research scripts, and documentation…
Apr 9, 2026
b0f71e4
fix(parser): Phase 3 parse bug — Result( typo in operations.t27, watc…
gHashTag Apr 9, 2026
1fa71cd
fix: set empty VITE_API_URL for same-origin API calls
Apr 9, 2026
1911edc
feat(fpga): gen-xdc command + XDC profile integration (#394)
gHashTag Apr 9, 2026
05cfac2
ci(fpga): add Verilog hash + synthesis regression checks (#396)
gHashTag Apr 9, 2026
6133ffb
fix(bootstrap): correct quote types in bridge.rs
Apr 9, 2026
df2ef76
feat(fpga): check-pins command for prjxray-db pin coverage audit (#398)
gHashTag Apr 9, 2026
59df7b0
feat(fpga): xdc-verify cross-checks gen-xdc vs emitter_xdc.t27 (#400)
gHashTag Apr 9, 2026
1ee2976
feat(web): skip authentication - direct access to dashboard
Apr 9, 2026
08f7248
trigger: force railway redeploy for direct access
Apr 9, 2026
b8e0839
trigger: force frontend rebuild for direct access
Apr 9, 2026
706d41b
fix(web): fix TS errors for direct access
Apr 9, 2026
cd7aef2
feat(server): add /sessions routes for Railway frontend compatibility
Apr 9, 2026
b17266e
feat(fpga): --board arty-a7 multi-board bitstream generation (#402)
gHashTag Apr 9, 2026
90bc797
feat(server): add in-memory session storage for Railway frontend
Apr 9, 2026
90e8e8f
trigger: force frontend rebuild v3
Apr 9, 2026
d8382b1
fix(web): add comment to trigger frontend rebuild
Apr 9, 2026
0a92ec3
fix(docker): add BUILD_TIMESTAMP to force frontend rebuild
Apr 9, 2026
d387035
fix(web): use same-origin by default for API calls
Apr 9, 2026
2129c89
fix(web): show session token in alert instead of opening proxy
Apr 9, 2026
f9a5e40
trigger: BUILD_TIMESTAMP=5 for sandbox fix
Apr 9, 2026
a4e240f
build: add build-info.ts to trigger frontend rebuild v5
Apr 9, 2026
fc18863
fix(docker): add trigger file to force frontend rebuild
Apr 9, 2026
645f7f9
fix(docker): add RUN command before COPY dist to break cache
Apr 9, 2026
fde433b
refactor: remove redundant header files across gen/ tree
Apr 9, 2026
3355c91
fix(zig): L6 GF16 compliance and format_conversion cleanup
Apr 9, 2026
e925c9d
feat(physics): formula registry v07 — 69 formulas, 8 sectors, chimera…
Apr 9, 2026
2e15504
feat(web): sandbox button navigates to /sandbox?token=... [v7]
Apr 9, 2026
b303f33
fix(web): explicit sandbox URL construction
Apr 9, 2026
8507c13
fix: force rebuild with BUILD_TIMESTAMP=9
Apr 9, 2026
194ced4
feat(physics): DISC-01 scan complete — 33 VERIFIED formulas
Apr 9, 2026
02a1caf
feat(physics): ULTRA ENGINE v3.0 deployed
Apr 9, 2026
e19095f
fix(web): explicit sandbox URL construction
Apr 9, 2026
38ab055
feat(ultra): ULTRA ENGINE v3 - 164 formula discoveries
Apr 9, 2026
9ded1e9
feat(ultra): ULTRA ENGINE v4 - 170 formulas with 8 methods
Apr 9, 2026
684e0ab
docs(discovery): ULTRA ENGINE v4 results - 170 formulas
Apr 9, 2026
b32e2dc
fix(git): allow external/opencode in build
Apr 9, 2026
e7a9cac
docs(discovery): Discovery audit - 40-50 unique formulas
Apr 9, 2026
0f68088
feat(ultra): ULTRA ENGINE v5 - Neural Matrix Discovery
Apr 9, 2026
6f43496
feat(ultra): ULTRA ENGINE v5.1 — 11 methods ALL NIGHT
Apr 9, 2026
524b5a4
docs(research): Nobel Prize Level 4 Trinity Plan
Apr 9, 2026
fcb8c4c
docs(research): Update lead author to Dmitrii Vasilev
Apr 9, 2026
ada9da8
feat(physics): ULTRA ENGINE v5.1 — complete 11-method discovery
Apr 9, 2026
bc17844
docs(physics): Update Nobel Prize plan with ULTRA ENGINE v5.1 results
Apr 9, 2026
d314110
docs(physics): ULTRA ENGINE v6.0 massive search discovery summary
Apr 9, 2026
0d55b31
fix(rust): compilation errors - remove Zig file, fix syntax, fix borr…
Apr 10, 2026
619bdcd
refactor(zig): improve L6 GF16 compliance and cleanup
Apr 10, 2026
ec19af3
chore: ignore Python cache files
Apr 11, 2026
ff93ea4
refactor(bootstrap): implement runtime formula evaluation
Apr 11, 2026
2ff9ba9
feat(notebooklm): add bilingual audio generation and fix imports
Apr 11, 2026
617441b
feat(music): add audio generation backend
Apr 11, 2026
c71124b
docs(gamma): update to v0.9 with world record results
Apr 11, 2026
f73e8ff
docs(trinity-pellis): add research directory and formula tables
Apr 11, 2026
0e1073b
test(bootstrap): add minimal runtime stubs
Apr 11, 2026
fad3255
feat(neural): Phase 2 — Neural Runtime v1.0
Apr 11, 2026
61f6335
fix(rust): remove Zig file, fix #// syntax, fix borrow, fix match types
Apr 11, 2026
0612d2b
feat(spec): Phase 2 — Sacred Attention specs
Apr 11, 2026
457c9ac
feat(ternary): Phase 3 — Ternary Runtime specs
Apr 11, 2026
c02a1a3
feat(compiler): Add algorithm codegen placeholder
Apr 11, 2026
91fe082
приступи к реализации!!
Apr 11, 2026
036a7af
fix(docker): copy gen/ directory for generated Rust code
Apr 11, 2026
2e3b16b
feat(trixphi): треки 02–10 — Level 1 ReaPhonk — феня+дабл-тайм 🎵
Apr 12, 2026
e33ba31
feat(trixphi): треки 11–15 — Level 1 Complete — феня+дабл-тайм 🎵
Apr 12, 2026
db3147f
feat(sandbox): enable /sandbox proxy for Railway container access
Apr 12, 2026
d2738b5
feat(trixphi): треки 16–20 — Level 2 Wave Phonk — Физика частиц 🎵
Apr 12, 2026
ffd6268
feat(trixphi): треки 21–25 — Level 2 Wave Phonk — Физика частиц 🎵
Apr 12, 2026
bd44dd8
feat(trixphi): треки 26–30 — Level 2 Complete — Физика частиц 🎵
Apr 12, 2026
ddc1e10
feat(memory): Phase 4 — semantic search + formula embed specs
Apr 12, 2026
32f49aa
fix(docker): force frontend rebuild to include ChatApp component
Apr 12, 2026
6bf95e3
feat(memory): Phase 4 — semantic search specs and generated code
Apr 12, 2026
cfe99f4
feat(trixphi): треки 31–40 — Level 3 Drift Phonk — Космология 🎵
Apr 12, 2026
a726660
feat(trixphi): треки 41–42 — Level 3 Complete — Drift Phonk — Космоло…
Apr 12, 2026
ccfb86f
feat(trixphi): треки 43–48 — Level 4 Phonk House — ТРИНИТИ финал 🎵
Apr 12, 2026
753cb05
feat(trixphi): треки 49–50 — TRIXPHI ALBUM COMPLETE! 🎵🏴‍☠️
Apr 12, 2026
2030dc4
feat(memory): Phase 4 CLI — semantic search working
Apr 12, 2026
cb00ed6
feat(claude): add PHI LOOP skills and hooks infrastructure
Apr 13, 2026
c5ffce0
feat(pellis): comprehensive computational pipeline for paper
Apr 13, 2026
7c9158d
fix: 69 → 42 in abstract, table, and text (5 occurrences)
Apr 13, 2026
de34d29
docs(pellis): p-value defense strategy for reviewer attacks
Apr 13, 2026
aa7cbde
fix: critical bugs in V0.9.tex
Apr 13, 2026
47a6210
feat(pvalue-defenses): Apply three-level p-value defense updates
Apr 13, 2026
1c83e98
fix(bugs): Correct BUG-1 and BUG-2
Apr 13, 2026
f82a9a0
fix(bugs): Correct BUG-1 and BUG-2
Apr 13, 2026
a346961
feat(clara): Complete DARPA CLARA PA-25-07-02 submission package
Apr 13, 2026
8af4a1f
Merge branch 'dev'
Apr 13, 2026
5dcac51
Merge branch 'master' of https://github.com/gHashTag/t27
Apr 13, 2026
692ba52
feat(clara): Complete DARPA CLARA PA-25-07-02 submission package (#408)
gHashTag Apr 13, 2026
90f7044
Merge branch 'master' of https://github.com/gHashTag/t27
Apr 13, 2026
5dcaba6
fix(ci): resolve all CI failures — workflow YAML + missing ternary_en…
Apr 13, 2026
4bae73a
fix(ci): resolve all CI failures — workflow YAML + missing files + L1…
gHashTag Apr 14, 2026
bae2ac7
Merge branch 'master' of https://github.com/gHashTag/t27
Apr 14, 2026
7717277
fix: suite 0-failure, path-unique seals, FPGA expansion, OpenCode key…
gHashTag Apr 11, 2026
aefa88f
feat(fpga): add 11 testbench specs — FIFO, SPI, AXI4, Memory, Bridge,…
gHashTag Apr 11, 2026
9011085
feat(fpga): board integration specs + build verification
gHashTag Apr 11, 2026
4ec57b5
feat(fpga): enhanced Verilog codegen — initial blocks with $display f…
gHashTag Apr 11, 2026
ae0aa9c
feat(fpga): formal + power testbenches, synth-readiness CLI command
gHashTag Apr 11, 2026
f5f18a5
feat(fpga): router, DFT, assembler testbenches
gHashTag Apr 11, 2026
5b2c407
feat(fpga): VCD trace, simulator, CTS testbenches
gHashTag Apr 11, 2026
a82c67d
feat(fpga): placement, partition, HIR testbenches
gHashTag Apr 11, 2026
83e613e
feat(fpga): bootrom, linker, stdlib testbenches — near 100% testbench…
gHashTag Apr 11, 2026
50d268d
feat(fpga): pin fixes, fpga-flash command, CI lint+report, smoke test…
gHashTag Apr 12, 2026
8afda79
feat(fpga): MAC instantiation, HIR expansion, CI hardening, conforman…
gHashTag Apr 14, 2026
fcf8002
fix(l3-purity): replace all Unicode with ASCII in 160 .t27 files
gHashTag Apr 14, 2026
156153a
docs: update TASK.md -- mark FPGA Phase 2-4 completed, list Phase 5 o…
gHashTag Apr 14, 2026
11d3fef
chore: remove duplicate scripts/flash.sh, gitignore opencode/ vendore…
gHashTag Apr 14, 2026
c064995
fix(fpga): L4 TDD compliance for testbenches, fpga_emission, CdcStrat…
gHashTag Apr 14, 2026
65305c4
feat(fpga): codegen completion -- 10 module emitters + HIR generic + …
gHashTag Apr 14, 2026
e5616dc
feat(fpga): SymbiYosys formal properties for MAC, FIFO, UART
gHashTag Apr 14, 2026
779399c
feat(fpga): XDC generation from HIR, CI formal upgrade, code cleanup
gHashTag Apr 14, 2026
2e929cc
chore: re-seal 476 specs after L3 PURITY Unicode cleanup
gHashTag Apr 14, 2026
051547f
feat(fpga): VCD conformance compare, power analysis, seal collision fix
gHashTag Apr 14, 2026
6f42433
feat(fpga): conformance JSONs for all 32 FPGA module specs
gHashTag Apr 14, 2026
ef86dcb
feat(fpga): bolster test coverage for uart, top_level, bootrom, stdlib
gHashTag Apr 14, 2026
ef73c5e
chore(fpga): update build_verify counts (33 modules, 30 testbenches, …
gHashTag Apr 14, 2026
e545fa4
feat(clara): Add Apache 2.0 License for CLARA submission (#284)
gHashTag Apr 14, 2026
cfd6ccd
feat(clara): Phase 1-4 — Defense examples, SOA comparison, literature…
gHashTag Apr 14, 2026
6366822
fix(fpga): rst_n pin C14 -> C18 in minimal XDC to match canonical qmt…
gHashTag Apr 14, 2026
cb60fb0
feat(kaggle,research,scripts): add datasets, PSLQ, Trinity research, …
Apr 14, 2026
b504012
Merge master into feat/all-datasets-research-v2
Apr 14, 2026
8ad138f
ci: trigger fresh CI run
Apr 14, 2026
39428af
Merge pull request #428 from gHashTag/feat/all-datasets-research-v2
gHashTag Apr 14, 2026
30e9b33
docs: add golden angle alpha derivation research
Apr 14, 2026
7a5b5fb
Merge pull request #466 from gHashTag/feat/golden-angle-v3-clean
gHashTag Apr 14, 2026
6d42543
docs: add PSLQ verification documentation
Apr 14, 2026
0b2930a
Merge pull request #467 from gHashTag/feat/pslq-verification-v3-clean
gHashTag Apr 14, 2026
ca3f8b6
fix(t27c): Zig codegen fundamental bugs
Apr 14, 2026
a0866be
Merge pull request #469 from gHashTag/feat/t27c-codegen-v3-clean
gHashTag Apr 14, 2026
99034f7
feat(cli): tri math compare --weinberg
Apr 14, 2026
b88aea0
Merge pull request #470 from gHashTag/feat/tri-math-v3-clean
gHashTag Apr 14, 2026
1796fc9
feat(tri): GitHub SSOT integration - .t27 Native
Apr 14, 2026
2282321
Merge pull request #471 from gHashTag/feat/tri-github-ssot-v3-clean
gHashTag Apr 14, 2026
80955c1
fix(clara): mortal fixes v2.0 - critical proposal improvements
Apr 14, 2026
802d94e
feat: CLARA Proposal v1.5 - DARPA PA-25-07-02 Submission Package
Apr 14, 2026
c901162
Merge pull request #473 from gHashTag/feat/clara-proposal-v1.5-submis…
gHashTag Apr 14, 2026
2ab9eaf
docs(clara): comprehensive documentation organization overhaul
Apr 14, 2026
e28cdea
Merge pull request #478 from gHashTag/feat/clara-docs-organization
gHashTag Apr 14, 2026
7338da8
Merge kaggle migration cleanup
gHashTag Apr 15, 2026
7692b97
refactor: remove trixphi-album musical content from repository (#488)
gHashTag Apr 15, 2026
2a6fcbe
Update README with scientific strengthening section
Apr 15, 2026
c262deb
Add FAQ and technical figures for DARPA submission
Apr 15, 2026
3841d7b
feat(base): Add Ring 32 — Cloud Orchestration
Apr 15, 2026
bf4728b
docs(meta): Add Ring 32 to Completed Rings table
Apr 15, 2026
36b41ea
fix(paper): resolve merge conflicts, update Olsen affiliation, integr…
Apr 15, 2026
96724f1
feat(paper): elevate prose to iconic status with poetic academic narr…
Apr 15, 2026
a801054
refactor: remove trixphi-album musical content from repository
Apr 15, 2026
cada7f4
refactor: remove Russian documentation files
Apr 15, 2026
4cfa459
feat(portable): upgrade relay_observer.js to v2.0 with multi-agent su…
Apr 15, 2026
1496b08
Merge branch 'ring/32-cloud-orchestration'
Apr 16, 2026
f6e64ad
fix(ffi): GF16 round-to-nearest + overflow→Inf + full GF4-24 encode/d…
gHashTag Apr 29, 2026
a294358
feat(ci): pre-commit gate — NOW freshness, seal coverage, L7, cargo c…
gHashTag Apr 29, 2026
5921c98
feat(ring-080..087): ternary collection specs — sorting, search, patt…
gHashTag Apr 29, 2026
258fc0b
feat(hybrid-v2): L2 cosine + golden tests N=5..152 (#559)
gHashTag Apr 29, 2026
14f7a55
feat(gf-competitive): Phase 0-2 — verify_precision.py + competitive s…
gHashTag Apr 29, 2026
44b4da6
test(notebooklm): add benchmarks, notebooks, sources, queries tests (…
gHashTag Apr 30, 2026
a63d3fb
fix(fpga): correct CSG324 pin assignments, add JTAG bitbang programmer
gHashTag May 3, 2026
14541b4
Add docs/fpga/VSA_BIND_BUNDLE.md — FPGA VSA bind/bundle/unbind docume…
gHashTag May 5, 2026
0f83248
Add docs/phd/ch28.md — VSA Hardware Acceleration: Bind/Unbind/Bundle …
gHashTag May 5, 2026
ac5a00c
Add docs/phd/ch33.md — Trinity Stack Integration: Agent to FPGA Cogni…
gHashTag May 5, 2026
319954b
Add docs/phd/appendix_F.md — FPGA Hardware Platform: QMTech XC7A100T
gHashTag May 5, 2026
5b9b6e9
Add docs/phd/appendix_I.md — Bitstream Generation and Toolchain
gHashTag May 5, 2026
933c673
Add docs/phd/appendix_J.md — JTAG Debug Protocol via ESP32-XVC Bridge
gHashTag May 5, 2026
f8795dc
Merge origin/main into feat/305-notebooklm-benchmarks — resolve 126 c…
gHashTag May 5, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2,969 changes: 2,969 additions & 0 deletions contrib/backend/api/package-lock.json

Large diffs are not rendered by default.

125 changes: 125 additions & 0 deletions contrib/backend/notebooklm/tests/test_benchmarks.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
# contrib/backend/notebooklm/tests/test_benchmarks.py
# Performance benchmarks for NotebookLM integration
# Issue: #305
# phi^2 + 1/phi^2 = 3 | TRINITY

"""Performance benchmarks matching specs/memory/notebooklm.t27 bench blocks."""

import sys
import time
from pathlib import Path

repo_root = Path(__file__).parent.parent.parent.parent.parent
sys.path.insert(0, str(repo_root))

from contrib.backend.notebooklm.config import config_from_env
from contrib.backend.notebooklm.client import client_new, client_close, client_reset, client_is_authenticated
from contrib.backend.notebooklm.auth_token import token_save, token_load, token_clear
from contrib.backend.notebooklm.wrapup import wrapup_format_summary, wrapup_format_markdown
from contrib.backend.notebooklm.session import SessionContext


def bench_client_creation(iterations=100):
"""Benchmark: client creation < 1000 cycles (spec target)."""
config = config_from_env()
client_reset()

start = time.perf_counter_ns()
for _ in range(iterations):
client_reset()
_ = client_new(config)
elapsed = time.perf_counter_ns() - start
avg_ns = elapsed // iterations

assert avg_ns < 1_000_000, f"client_creation {avg_ns}ns exceeds 1ms target"
print(f"[PASS] bench_client_creation: avg={avg_ns}ns over {iterations} iterations")
return avg_ns


def bench_wrapup_format_summary(iterations=500):
"""Benchmark: wrapup format_summary < 2000 cycles (spec target)."""
session = {
"session_id": "bench-session",
"skill_id": "bench-skill",
"issue_id": "305",
"timestamp": "2026-04-30T00:00:00Z",
}

start = time.perf_counter_ns()
for _ in range(iterations):
_ = wrapup_format_summary(session, "summary", "decisions", "files", "steps")
elapsed = time.perf_counter_ns() - start
avg_ns = elapsed // iterations

assert avg_ns < 2_000_000, f"wrapup_format_summary {avg_ns}ns exceeds 2ms target"
print(f"[PASS] bench_wrapup_format_summary: avg={avg_ns}ns over {iterations} iterations")
return avg_ns


def bench_error_code_comparison(iterations=10000):
"""Benchmark: error code comparison < 500 cycles (spec target)."""
from contrib.backend.notebooklm import __init__ as nlm

start = time.perf_counter_ns()
code_a = 1
code_b = 2
count = 0
for _ in range(iterations):
if code_a != code_b:
count += 1
elapsed = time.perf_counter_ns() - start
avg_ns = elapsed // iterations

assert avg_ns < 500_000, f"error_code_comparison {avg_ns}ns exceeds 500us target"
print(f"[PASS] bench_error_code_comparison: avg={avg_ns}ns over {iterations} iterations")
return avg_ns


def bench_constant_access(iterations=100000):
"""Benchmark: constant access < 100 cycles (spec target)."""
from contrib.backend.notebooklm.config import DEFAULT_CONFIG

start = time.perf_counter_ns()
total = 0
for _ in range(iterations):
total += DEFAULT_CONFIG.timeout_ms
elapsed = time.perf_counter_ns() - start
avg_ns = elapsed // iterations

assert total > 0
assert avg_ns < 100_000, f"constant_access {avg_ns}ns exceeds 100us target"
print(f"[PASS] bench_constant_access: avg={avg_ns}ns over {iterations} iterations")
return avg_ns


def bench_token_lifecycle(iterations=100):
"""Benchmark: token save/load/clear cycle."""
import tempfile
from contrib.backend.notebooklm.auth_token import AuthTokens
from datetime import datetime, timezone

start = time.perf_counter_ns()
for i in range(iterations):
tok = AuthTokens(access_token=f"bench_{i}", refresh_token=f"refresh_{i}", expires_at=datetime.now(timezone.utc), token_type="bearer")
token_save(tok)
elapsed = time.perf_counter_ns() - start
avg_ns = elapsed // iterations

print(f"[PASS] bench_token_lifecycle: avg={avg_ns}ns over {iterations} iterations")
return avg_ns


if __name__ == "__main__":
results = {}
results["client_creation"] = bench_client_creation()
results["wrapup_format_summary"] = bench_wrapup_format_summary()
results["error_code_comparison"] = bench_error_code_comparison()
results["constant_access"] = bench_constant_access()
results["token_lifecycle"] = bench_token_lifecycle()

print("\n" + "=" * 50)
print("BENCHMARK SUMMARY")
print("=" * 50)
for name, ns in results.items():
print(f" {name}: {ns}ns")
print(f"\nAll {len(results)} benchmarks passed!")
64 changes: 64 additions & 0 deletions contrib/backend/notebooklm/tests/test_notebooks.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# contrib/backend/notebooklm/tests/test_notebooks.py
# Unit tests for notebooks.py
# Issue: #305
# phi^2 + 1/phi^2 = 3 | TRINITY

"""Unit tests for NotebookLM notebook operations."""

import sys
from pathlib import Path

repo_root = Path(__file__).parent.parent.parent.parent.parent
sys.path.insert(0, str(repo_root))

from contrib.backend.notebooklm.notebooks import (
notebook_find_by_name,
Notebook,
)


def test_notebook_creation():
"""Test Notebook dataclass creation."""
nb = Notebook(
id="test-id",
title="test-notebook",
created_at="2026-04-30",
updated_at="2026-04-30",
source_count=5,
)
assert nb.id == "test-id"
assert nb.title == "test-notebook"
assert nb.source_count == 5
print("[PASS] test_notebook_creation")


def test_notebook_find_by_name_returns_none_when_no_client():
"""Test that notebook_find_by_name returns None when no client is connected."""
from contrib.backend.notebooklm.client import client_reset
client_reset()
result = notebook_find_by_name("nonexistent")
assert result is None
print("[PASS] test_notebook_find_by_name_returns_none_when_no_client")


def test_notebook_to_dict():
"""Test Notebook serialization."""
nb = Notebook(
id="abc",
title="Test Notebook",
created_at="2026-04-30T00:00:00Z",
updated_at="2026-04-30T00:00:00Z",
source_count=0,
)
d = nb.__dict__
assert isinstance(d, dict)
assert d["title"] == "Test Notebook"
assert d["source_count"] == 0
print("[PASS] test_notebook_to_dict")


if __name__ == "__main__":
test_notebook_creation()
test_notebook_find_by_name_returns_none_when_no_client()
test_notebook_to_dict()
print("\nAll notebook tests passed!")
38 changes: 38 additions & 0 deletions contrib/backend/notebooklm/tests/test_queries.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# contrib/backend/notebooklm/tests/test_queries.py
# Unit tests for queries.py
# Issue: #305
# phi^2 + 1/phi^2 = 3 | TRINITY

"""Unit tests for NotebookLM query operations."""

import sys
from pathlib import Path

repo_root = Path(__file__).parent.parent.parent.parent.parent
sys.path.insert(0, str(repo_root))

from contrib.backend.notebooklm.queries import notebook_query


def test_notebook_query_returns_none_without_client():
"""Test that notebook_query returns None when no client connected."""
from contrib.backend.notebooklm.client import client_reset
client_reset()
result = notebook_query("test-notebook-id", "test query")
assert result is None
print("[PASS] test_notebook_query_returns_none_without_client")


def test_notebook_query_accepts_empty_query():
"""Test that notebook_query handles empty query string."""
from contrib.backend.notebooklm.client import client_reset
client_reset()
result = notebook_query("test-notebook-id", "")
assert result is None
print("[PASS] test_notebook_query_accepts_empty_query")


if __name__ == "__main__":
test_notebook_query_returns_none_without_client()
test_notebook_query_accepts_empty_query()
print("\nAll queries tests passed!")
60 changes: 60 additions & 0 deletions contrib/backend/notebooklm/tests/test_sources.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# contrib/backend/notebooklm/tests/test_sources.py
# Unit tests for sources.py
# Issue: #305
# phi^2 + 1/phi^2 = 3 | TRINITY

"""Unit tests for NotebookLM source operations."""

import sys
from pathlib import Path

repo_root = Path(__file__).parent.parent.parent.parent.parent
sys.path.insert(0, str(repo_root))

from contrib.backend.notebooklm.sources import (
source_upload_text,
source_list,
source_delete,
MAX_SOURCE_SIZE,
)


def test_max_source_size_is_10mb():
"""Test that MAX_SOURCE_SIZE is 10MB as per spec."""
assert MAX_SOURCE_SIZE == 10 * 1024 * 1024, f"Wrong max size: {MAX_SOURCE_SIZE}"
print("[PASS] test_max_source_size_is_10mb")


def test_source_upload_text_returns_none_without_client():
"""Test that source_upload_text returns None when no client connected."""
from contrib.backend.notebooklm.client import client_reset
client_reset()
result = source_upload_text("test-notebook-id", "test content", "test.txt")
assert result is None
print("[PASS] test_source_upload_text_returns_none_without_client")


def test_source_list_returns_empty_without_client():
"""Test that source_list returns empty list when no client connected."""
from contrib.backend.notebooklm.client import client_reset
client_reset()
result = source_list("test-notebook-id")
assert result == []
print("[PASS] test_source_list_returns_empty_without_client")


def test_source_delete_returns_false_without_client():
"""Test that source_delete returns False when no client connected."""
from contrib.backend.notebooklm.client import client_reset
client_reset()
result = source_delete("test-source-id")
assert result is False
print("[PASS] test_source_delete_returns_false_without_client")


if __name__ == "__main__":
test_max_source_size_is_10mb()
test_source_upload_text_returns_none_without_client()
test_source_list_returns_empty_without_client()
test_source_delete_returns_false_without_client()
print("\nAll sources tests passed!")
Loading
Loading