feat(mapkit): reusable animated-subjects-on-map workflow#81
Open
extenso-claude wants to merge 3 commits into
Open
feat(mapkit): reusable animated-subjects-on-map workflow#81extenso-claude wants to merge 3 commits into
extenso-claude wants to merge 3 commits into
Conversation
Apply non-breaking npm audit fix in remotion-composer (resolves loader-utils prototype-pollution/ReDoS and postcss XSS advisories). Also add .venv/ and venv/ to .gitignore to keep local Python virtualenvs out of the working tree.
Brand system for Grandpa Huxley and Midnight Magnates channels: - 3 style playbooks (sleep-network-base, grandpa-huxley, midnight-magnates) - 22 Remotion brand components (maps, charts, lower-thirds, reveals, etc.) - frontend-design SKILL mirrored into .agents/skills/ - visual-design-quality meta skill (channel tone gate) New Remotion compositions: - Letter Dynasty (V2 + V3 with regional fill SVGs) - Five Arrows episode, Wild West parallax + riding-together - Brand demo trio + Midnight Magnates style reel Tooling: - topaz_upscale: 1080p fallback for sub-1080p generators (per memory rule) - Frame.io OAuth integration scaffolding (secrets gitignored) - google_imagen.py expanded for new prompting paths Pipeline director updates: animation/asset+scene, hybrid/all stages. .gitignore: exclude experiments/, brand_assets/, qa/ (local scratch with large media), plus *.pem and last_tokens.json (OAuth credentials). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Generalizes the per-project mapkit scripts (noir, warm, illuminated) into a single library and documents the end-to-end method as a Layer-2 skill so both Sleep Network channels can reach for it. - lib/mapkit_subjects.py — Web Mercator tile fetch (10 providers), 4 channel style filters (noir / warm / illuminated / light_minimal), feathered polygon highlights, sprite-anchor + formation pixel math, MapConfig dataclass. - skills/core/animated-subjects-on-map.md — when-to-use, channel→style map, HyperFrames composition skeleton, GSAP timeline patterns (camera push-in, staggered elastic burst, gallop bob, lance wiggle, parallax wisps, dust particles), ffmpeg SFX mix recipe with verified levels and fades, mandatory QA collision rules, per-channel guidance. Reference implementation in projects/medieval-europe-opener-test/ (gitignored, regenerable from the skill). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Generalizes the per-project mapkit scripts (noir / warm / illuminated) used by Midnight Magnates, Grandpa Huxley, and the medieval-opener test into one shared library + Layer-2 workflow skill so both Sleep Network channels can reuse the method.
What's in here
lib/mapkit_subjects.py(421 lines) — Web Mercator tile fetch (10 providers, on-disk cache), 4 channel style filters (noir/warm/illuminated/light_minimal), feathered polygon highlights, sprite-anchor + formation pixel math,MapConfigdataclass. Smoke-tested across all four styles.skills/core/animated-subjects-on-map.md(427 lines) — End-to-end workflow: when to use, channel → style mapping, HyperFrames composition skeleton, GSAP timeline patterns (camera push-in, staggered elastic burst, gallop bob, lance wiggle, parallax wisps, deterministic dust particles), ffmpeg SFX mix recipe with verified levels and fades, mandatory QA collision rules, per-channel guidance.Channel coverage
styleargnoircarto_darkwarmcarto_voyagerilluminatedcarto_light_nolabels(mandatory)light_minimalReference implementation
projects/medieval-europe-opener-test/is the worked example (8 s, 1080p, 7 knights + 5 castles + 5 realm + 2 sea labels + dust + wisps + camera push-in + 3 timed sword impacts). Lives in gitignoredprojects/, regenerable from the skill.Test plan
python3 -c "from lib.mapkit_subjects import ...")🤖 Generated with Claude Code