Skip to content

Updating packet diagram animations#219

Merged
RamyaGuru merged 1 commit into
mainfrom
docs/api-diagrams
Jul 9, 2026
Merged

Updating packet diagram animations#219
RamyaGuru merged 1 commit into
mainfrom
docs/api-diagrams

Conversation

@chloecrozier

Copy link
Copy Markdown
Member

Changes

Follow-up to #159 (merged PR adding HDS, flow steering, and reorder docs animations).

  • Regenerated all four diagrams with a clear background so they work on white slides, dark blue panels everywhere, and darker route lines
  • Flow steering now shows the kernel fallback plus host and GPU queue paths
  • Dropped the light/dark theme and just made one version
  • Also added GIF in addition to WebP (plus still PNGs)
  • Also fixed the quantize diagram so staging and slot columns match up
image

Testing

  • make -C docs/images/packet_diagrams check

@chloecrozier chloecrozier requested a review from RamyaGuru July 9, 2026 18:38
@greptile-apps

greptile-apps Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR is a follow-up to #159 that refreshes all four packet-diagram animation generators: it moves to a single transparent-background theme, shifts WebP/GIF outputs to be gitignored and generated at CI time, and embeds the animations into docs/concepts.md and docs/tutorials/configuration-walkthrough.md.

  • anim_common.py gains shared canvas constants, a diagram_colors() factory, an output_paths() helper, and a custom GIF encoder with palette-build and per-frame transparency handling; all four animation scripts are updated to consume these shared primitives and drop per-theme global mutation.
  • The Makefile and CI workflow are updated to generate WebP/GIF during the docs build, with make check now verifying animation-file existence and poster-PNG reproducibility rather than git status staleness of the entire output directory.
  • reorder_animation.py fixes CONVERT_STAGING_COL/CONVERT_QUEUE_COL to align with the reorder-only layout, and flow_steering_animation.py adds a host-queue path (kernel fallback + flow-matched host queue 1) alongside the three GPU queues.

Confidence Score: 5/5

Safe to merge; all changes are confined to documentation tooling, animation scripts, and doc pages with no effect on the library build or runtime behaviour.

The changes touch only docs assets, Python animation generators, Makefile logic, and Markdown pages. The CI workflow addition is straightforward and correct. The one finding is a commit-title convention question that does not affect correctness.

No files require special attention from a correctness standpoint.

Important Files Changed

Filename Overview
.github/workflows/docs.yml Adds docs/images/packet_diagrams/** trigger, pins Python to 3.12, installs Pillow, and runs make all before mkdocs build so WebP/GIF animations are present when the docs site is assembled.
.gitignore Adds gitignore entries for WebP/GIF outputs under each packet-diagram subdirectory; the pre-existing duplicate __pycache__/ line is harmless and pre-dates this PR.
docs/images/packet_diagrams/Makefile Splits outputs into ANIMATIONS (WebP+GIF, gitignored, existence-checked) and POSTERS (committed PNG, git-diff-checked). check and clean targets updated accordingly; Python auto-detection added for WebP-capable interpreter.
docs/images/packet_diagrams/anim_common.py Adds shared canvas constants, a single _BASE color dict with diagram_colors() factory, output_paths() helper, and a full GIF encoder (_build_gif_palette / rgba_to_gif_frame / save_gif_animation) that handles transparency via index 255.
docs/images/packet_diagrams/flow_steering_animation.py Drops multi-theme support; adds host queue 4 alongside three GPU queues; uses shared constants and draw_incoming_wire; frames saved at 2x resolution.
docs/images/packet_diagrams/hds_animation.py Removes multi-theme and per-theme globals; switches to shared constants, diagram_colors(), and draw_incoming_wire; route arrows now use shared line width constants.
docs/images/packet_diagrams/incoming_wire.py Refactors draw_rx_wire_label to take ImageDraw/ImageFont directly; adds draw_incoming_wire convenience wrapper; animate_markers default changed from False to True.
docs/images/packet_diagrams/reorder_animation.py Drops multi-theme; fixes CONVERT_STAGING_COL / CONVERT_QUEUE_COL to match the reorder columns; uses shared constants throughout.
docs/stylesheets/extra.css Adds .packet-diagram img rule so embedded WebP animations scale to the column width.
docs/tutorials/configuration-walkthrough.md Embeds flow-steering, HDS, reorder, and reorder-quantize WebP animations; adds cross-reference from the decision tree to the new flow-steering section.
docs/concepts.md Embeds HDS, flow-steering, and GPU reorder WebP animations into the relevant concept sections.
docs/images/packet_diagrams/README.md Updates requirements, check workflow, and per-generator output description to reflect the new WebP+GIF+PNG model and gitignored animations.

Reviews (2): Last reviewed commit: "#159 - Refresh packet diagram animations..." | Re-trigger Greptile

Comment thread docs/images/packet_diagrams/Makefile Outdated
@chloecrozier chloecrozier changed the title #159 - Updating packet diagram animations Updating packet diagram animations Jul 9, 2026
Single-theme transparent diagrams for slides, shared incoming-wire
rendering, gitignored WebP/GIF with CI generation, and updated docs
embeds.

Signed-off-by: Chloe Crozier <chloecrozier@gmail.com>
@chloecrozier

Copy link
Copy Markdown
Member Author

@RamyaGuru, I added the changed you suggested offline!

@RamyaGuru RamyaGuru merged commit 38b66b6 into main Jul 9, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants