📊 Daily Overview
Total Activity: 11 commits across 2 repositories
🚀 GitHub Activity
1. Manav-portfolio 🔒 — 10 commits
feat(work): Blob imagery, Markdown sync, crew taxonomy, page restructure · e906266
Imagery moves to Vercel Blob and the filesystem path is deleted.
stills[]is
now the single ordered 0..N image list;stillUrl,frames[],gdoc-assets.ts
(detectAssets), theFrames -hint andmirrorStillsare gone. public/ drops
110MB → 11MB. This also removes the last runtimereaddirSyncin src/, so the
sync is no longer local-only.…
chore(prod): migrate production data; correct stale propagation prose · d421c1a
prod-sync-from-local.ts brings prod’s
worksup to local’s migrated state.
Prod could not re-run the migrations:stills-to-blobuploads from local files
under public/assets/frames/, which were deleted once the images were on Blob.
The Blob store is shared, so prod only needed its references rewritten.Matched by slug, updated in place (prod _ids preserved). Each work’s prod field
set is made to equal local’s — local’s fields unset. Works in prod but not local are reported, never auto-deleted.
Result: 3 inserted, 30 updated; 33 works, 138 images on Blob, 0 filesystem
paths, 0 legacy fields. A second run is 0/0/33 — idempotent.…
fix(brand,images): align copy to the About text; pin images to one Blob store · 0f00f7c
Brand strings followed the persona record, not Manav’s own About copy. His copy
says “a filmmaker … working as a director, cinematographer and editor” and
never says screenwriter, so neither does the site:
- SITE.positioning (the footer line on every public page)
- the page title and OpenGraph title
- keywords: screenwriter → director/editor/cinematographer
- SITE.areas drops ‘Crew’ — the copy lists narrative, documentary, music videos
and stills; crew credits have their own page…
fix(hero): re-encode showreel at H.264 Level 4.0 so iOS will autoplay it · 8aa69ed
The showreel didn’t autoplay on mobile. The markup was never the problem —
autoplay/muted/playsinline were all in the served HTML, range requests returned
206, MIME was video/mp4, the moov atom was already up front, and there’s no
audio track to block it.ffprobe found it: the file was High Profile Level 5.0, above the Level 4.2
ceiling Apple documents for iOS. Safari declines such a stream silently and
shows the poster, which is exactly the reported symptom. The level was never
pinned when encoding, so x264 picked one. 1080p24 fits Level 4.0 comfortably
(8160 macroblocks vs the 8192 limit, ~1Mbps vs a 25Mbps ceiling); the file is
still 9.9MB.…
perf(hero): 10.4MB → ~3MB via codec ladder, and don’t send it to those who won’t watch · b34585f
The home page was 10.5MB and the video was 99% of it (HTML 17KB, poster 105KB,
video 10,389,864 bytes — measured live). preload=“metadata” saves nothing once
autoplay is set: playback begins immediately so the whole file is fetched every
visit. Cache headers were already optimal, so the win had to be payload.Ships a three-codec ladder at 720p, content-hashed, one downloaded per browser:
AV1 3.05MB HEVC 2.75MB H.264 4.86MB (floor, still Level 4.0)
The clip plays under a scrim and a 42%-opacity grain overlay, so 1080p detail
never reached the eye; 720p verified on a dappled-light shot upscaled to 1920.…
fix(hero,dock): derive codec strings from the container; icon-only dock search · b41fa90
Mobile Chrome was showing a broken-media glyph over the hero. The codec strings
were hand-written and one of them was invalid:codecs="hvc1"is incomplete —
the real string ishvc1.1.6.L93.90— and browsers reject an incomplete or
mismatched codec string outright rather than treating it as a hint.encode-hero.ts now parses the avcC / hvcC / av1C configuration boxes out of each
encoded file and emits the exact RFC 6381 string, so re-encoding at different
settings (which changes the level, hence the string) can never leave the
declaration lying. Current: avc1.640028, hvc1.1.6.L93.90, av01.0.05M.08.…
feat: podcast format, crew-only collaborations, sharper poster, 1080p reel · 77188fa
Five things Manav asked for.
The ▶ on mobile Chrome: a
…
feat(work): frames open a lightbox; drop the filmography play glyph; quality 90 · 58af39a
Clicking a frame did nothing at all — the tiles were plain
s — on a page
whose entire subject is the frames. They are
fix: restore sound credits, land the work hero in view, new WhatsApp number · 388586d
Removing the Sound Department heading earlier today also removed the sound
credits, because the exclusion that fed the split was left behind in the
selector. Losing the heading was the ask; losing three real credits was not.
Sound recordist is crew on someone else’s production, so the rows belong in the
Crew Experience list — only the department split is gone. The test that asserted
the exclusion now asserts the inclusion.…
fix(hero): poster is the reel’s opening frame again; add —poster-only · 1c700cd
Reverses today’s “sharpest frame” poster. The reasoning was wrong in a useful
way: the poster is not a still to be judged on its own merits, it is the first
frame of a video that is about to start playing underneath it. Any frame but the
opening one produces a visible jump when the deferredVerified rather than assumed: the poster and the H.264 variant’s frame 0 differ
by RMSE 1.3%, i.e. codec compression only.…
2. ManavDaehi 🔒 — 1 commits
chore(persona): reconcile identity with Manav’s own About copy · ae498cd
Manav supplied his own About text on 2026-08-09 and the site renders it verbatim,
so the persona record’s identity fields were stale against it.
- profession: “Filmmaker & Screenwriter” → “Filmmaker — Director, Cinematographer
& Editor” (his copy never mentions screenwriting)- location: “India” → “Delhi & Mumbai, India” (the record said Delhi-only, and
that was time-boxed to July 2026 anyway)- notes: dated preamble recording what the new copy establishes, and that the
Maslaa Motion Pictures framing was retired site-wide on 2026-07-29The onboarding notes are kept below the preamble as the historical record of what
was said at intake; where they conflict, the newer copy wins.…
📈 Development Analytics
Daily Summary
| Metric | Today |
|---|---|
| Commits | 11 |
| Merges | 0 |
| Skill runs | 0 |
| Decisions | 0 |
| Eurekas | 0 |
| CEO plans | 0 |
| Notes touched | 0 |
Decisions logged today
None today.
Eurekas
None today.
Strategic plans authored
None today.
Notes touched
None today.
Running totals (as of this date)
Active days last 90: 67 / 90 (substantive)
Days with any signal last 90: 67 / 90
Skill runs (since 2026-03-25): 77
Commits this year (authored): 1911
Decisions logged this year: 46
Eurekas this year: 5
CEO plans authored this year: 14
Projects touched this year: 66
Top projects last 90: VipinKaushik (26d), astroacharya (20d), SSJK-mb (19d), vipin-kaushik-content (18d), SSJK-workspace (11d)
💭 My Notes
[Your own thoughts, observations, or context for this day — this section is never overwritten by automation]