|
|
1 сар өмнө | |
|---|---|---|
| .. | ||
| 35photo2anime-sdcpp.json | 1 сар өмнө | |
| README.md | 1 сар өмнө | |
| anime-from-upload.json | 1 сар өмнө | |
| swf-anime-process-one-image.json | 1 сар өмнө | |
| swf-sdccp-v2-generate-image.json | 1 сар өмнө | |
| swf-zsebhoki-publish-anime-post.json | 1 сар өмнө | |
Workflows live in the database, not in this repository, so a change made in the editor leaves no trace here and cannot be reviewed in a diff. These are exports of the three that make up the blog pipeline, kept so the shape of them is readable and reviewable.
They are not a restore mechanism. Only the definition is exported - name, description, active flag, nodes, connections, settings - because version numbers and audit stamps are the database's business and would churn on every autosave. Restoring a workflow means the database backup on zeus, which has been tested.
Nextcloud conversation tokens are redacted. They identify a private chat room, and while they are not passwords they are not something to keep in a repository either. Re-enter them if you ever rebuild from these.
Credential ids appear as ids. The secrets themselves are encrypted in the database and never leave it except to a runner.
35photo2anime-sdcpp.json - the pipeline. Reads two 35photo feeds, judges each
image, redraws the ones the gate selects, writes the post and publishes it.swf-sdccp-v2-generate-image.json - generation, called as a sub-workflow.
storeInDatabase is an input, defaulting to true; the pipeline passes false
because the picture is already on the SD.cpp server and goes to the blog from
there.swf-zsebhoki-publish-anime-post.json - uploads the image, creates the post,
then creates or reuses each tag and links it.is_adult is decided by Rate The Picture, which analyses the image that is
about to be published. It used to come from the analysis of the source
photograph, and since the pipeline only redraws sources the safety gate marked
NSFW, that value was explicit every time - so every post was flagged 18+ whatever
the redraw actually looked like.
The node sits between the download and the publish so it judges the same file in
the same chain. That also avoids a trap worth knowing about: $node[...] inside
a loop holds whichever iteration finished last, not the one being worked on, so
anything read across nodes in a loop body has to be captured in that iteration.
An unreadable rating still counts as adult. The blog requires the flag on every post, and under-rating on a site with an 18+ gate is the harmful direction.