# Source provenance

TurbulenceJS 2.0 began as a clean-room combination of two gremlinlabs libraries on 2026-07-18.

## Inputs

- Browser feature base: `/Users/ejc/code/gremlinlabs/animation/herky`
  - Base commit: `247f0fff2f677c2cd397470537aabf8ea0aa49b9`
  - Preflight and final Git status SHA-256: `40a5e5c33bdc1f2bfae422c20ded71395da5dc18e485fe9d23e64d8e17b7d3d0`
  - Source snapshot SHA-256: `57db8d9897b9b843194bc72853baba8ccb8206db384f024cce59510e52f7b915`
  - The snapshot included the repository's reviewed working-tree implementation, not only its base commit.
- Generic and Electron compatibility source: `/Users/ejc/code/gremlinlabs/animation/turbulence`
  - Commit and v1.0.0 tag: `21ac7ae94a2e3dc455db8987397b16804c211800`
  - Preflight and final Git status SHA-256: `e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855` (clean)
  - Source snapshot SHA-256: `f0b3d3d566f3a0b311432453f0348f7c0849dd942eb31bf9768074a3613572a1`

## Copy boundary

The new repository received source and public project files only. The inputs' `.git`, `node_modules`, `dist`, `coverage`, and `agent-work` directories were excluded. The new repository has independent Git history; the complete source histories remain in the two original repositories.

Neither input repository is modified, archived, or replaced by creating this codebase.

The status hashes and commits above were recorded before the destination existed and rechecked after implementation and packed integration verification. External publication, remote creation, push, tags, source archival, and downstream repository mutation were intentionally excluded.
