# FLIP Fluids 1.8.8 Demo dependency reproduction

This bounded fixture checks the free **FLIP Fluids 1.8.8 Demo**, not the paid
edition. It uses Blender 5.2.0 LTS on Linux x86_64 and background Workbench
renders of frames 1–3 from one low-resolution quick-liquid bake.
The recorded Blender build reports hash `fbe6228777e7` from source revision
`fbe6228777e7d9afefcd61a413844e790ae75db7`. The runner checks the release and
build hash before it executes the fixture.

The recorded data covers:

- extension plus complete cache, extension disabled, and extension absent;
- a moved `.blend` with and without its relative cache;
- Blender's Pack Resources result without the external cache;
- a prepared companion USD with the extension absent, moved together, and
  missing.

Open [`artifact.json`](./artifact.json) for the exact input and case index. The
unabridged recorded observations have a direct [record
index](./recorded/README.md). The contact sheet is a visual aid; mesh and pixel
hashes are the assertions.
Its rows are extension+cache, extension absent, cache missing, companion USD
present, and companion USD missing; columns are frames 1–3.

## Rerun

Download the demo archive from the
[publisher's v1.8.8 release](https://github.com/rlguy/Blender-FLIP-Fluids/releases/tag/v1.8.8).
Its SHA-256 must be:

`4842bd87da703bc91eb46173d8c51b7358f9705e7dd215afe4b96ea451321cd3`

From this directory, run:

```bash
./run.sh /absolute/path/to/blender-5.2.0 /absolute/path/to/FLIP_Fluids_addon_1.8.8_demo.zip /absolute/output/directory
```

The runner requires Docker. When its default image is absent, it builds the
small runtime in [`runtime.Dockerfile`](./runtime.Dockerfile) from a pinned
Ubuntu 22.04 image. That image build needs package-network access; the candidate
archive is not mounted or executed during the build. It then mounts the Blender
build and candidate archive read-only and runs every Blender process without
network, host credentials or a host home, with a read-only container root,
dropped capabilities and bounded resources. The runner rejects Blender
releases other than 5.2.0 and build hashes other than `fbe6228777e7`.

A rerun checks the same state relationships. Graphics drivers, hardware and
other runtime differences can change pixels, so this artifact does not promise
byte-identical output across environments.

## Boundary

The fixture covers only the Demo's basic surface. It does not test the paid
edition, materials, whitewater, attributes or production-scale simulations.
No third-party archive, cache, USD or `.blend` file is redistributed. Recorded
images show only the procedurally created quick-liquid fixture.

Public sources: [release](https://github.com/rlguy/Blender-FLIP-Fluids/releases/tag/v1.8.8),
[cache directory guidance](https://github.com/rlguy/Blender-FLIP-Fluids/wiki/Domain-Cache-Settings/f2e385584adf1a21a529197ed4f6c31c7fd94ee0),
[USD export guidance](https://github.com/rlguy/Blender-FLIP-Fluids/wiki/USD-Export-Support),
and [Alembic export guidance](https://github.com/rlguy/Blender-FLIP-Fluids/wiki/Alembic-Export-Support).
