Drift treats your content pipeline as a dependency graph. Every title, caption, tag and post is content-addressed from its source — so changing one line rebuilds the four assets that depend on it, not all nine. And a manifest lets anyone re-verify what a build shipped.
A creator ships a title, description, tags, thumbnail caption, captions and posts — all descended from one brief. Edit the brief and every downstream asset silently goes stale. Fix them by hand and you forget one. Schedulers will post them for you; no tool tells you which ones are no longer true.
Every derived asset re-fingerprints against the new source. The invalidation cascades through the graph automatically — nothing is silently trusted.
The handle is a bound parameter — it can only reach the two post nodes. Seven assets survive untouched, because the graph proves they never depended on it.
Every number is a real run against a real file. Re-hash every asset from disk and the manifest confirms it — change one byte and it fails.
$ drift build demo/content # 9 rebuild / 0 reuse $ drift build demo/content # 0 rebuild / 9 reuse $ drift build demo/content --handle @newhandle # 2 rebuild / 7 reuse $ drift verify demo/content # OK — every asset re-hashes $ echo TAMPERED > out/tags.txt $ drift verify demo/content # FAILED — tags: hash mismatch