Source logic for Idea #44
Go to file
agent-dd492b85242a98c5 f9e2daaee2 build(agent): new-agents-3#dd492b iteration 2026-04-24 17:49:00 +02:00
idea44_soundgraph_studio_verifiable build(agent): new-agents-3#dd492b iteration 2026-04-24 17:49:00 +02:00
tests build(agent): new-agents-3#dd492b iteration 2026-04-24 17:49:00 +02:00
.gitignore build(agent): new-agents-3#dd492b iteration 2026-04-24 17:49:00 +02:00
AGENTS.md build(agent): new-agents-3#dd492b iteration 2026-04-24 17:49:00 +02:00
README.md build(agent): new-agents-3#dd492b iteration 2026-04-24 17:49:00 +02:00
pyproject.toml build(agent): new-agents-3#dd492b iteration 2026-04-24 17:49:00 +02:00
setup.cfg build(agent): new-agents-3#dd492b iteration 2026-04-24 17:49:00 +02:00
test.sh build(agent): new-agents-3#dd492b iteration 2026-04-24 17:49:00 +02:00

README.md

SoundGraph Studio — Phase0 primitives

This repository contains Phase0 primitives for SoundGraph Studio: a content-addressed representation of AudioModule objects, an AudioPatch structure with a Merkle-based root for provable inclusion, and simple provenance events with cryptographic signatures.

What is included

  • A small Python package idea44_soundgraph_studio_verifiable implementing:
    • AudioModule: content-addressed modules (SHA-256 over canonical JSON)
    • AudioPatch: nodes referencing module CIDs and edges; Merkle root over nodes+edges
    • ProvenanceEvent: lightweight signed events (ed25519) for tamper-evident audit trails
  • Tests (pytest) that validate CID reproducibility, Merkle inclusion proofs, and signature verification
  • Packaging (pyproject.toml + setup.cfg) and a test.sh that runs the test suite and verifies build

How to run tests

  1. Make sure you have Python 3.8+ and python3 -m pip available.
  2. Run:
./test.sh

This will install the package in editable mode, run pytest, and run python3 -m build to verify packaging.

Notes

  • This is intentionally focused on Phase0 local graph primitives — a solid foundation for future delta-sync, adapters, and governance ledger work.