DEV Community

Devanshu Biswas
Devanshu Biswas

Posted on

Read Your Photos' Modification Times and 1,007 of 1,513 Land in the Month You Copied the Library

Years of a camera roll read as a shape rather than a feed — on your own machine, with no key, no network and no image model. It never opens a photograph. Only its metadata.

Project 2 of 5 · Agent Lab Vol 4
Page: https://dev48.infy.uk/agentlab/vol4-02-pattern-mirror.html
Repo: https://github.com/dev48v/pattern-mirror

The roll is invented, and for a reason worth stating

There is no public corpus of one person's photographs, no honest way to make one out of somebody else's — and the metadata is the most identifying part of a photograph there is. A roll's timestamps, bursts and duplicate copies describe a person's movements more precisely than the images do.

So all 1,513 files across 6 years, 66 months, 194 bursts and 18 byte-identical copies were written by hand from a fixed seed. Every point estimate below would move on a real roll.

1. The timeline is a property of which date field survived your last export

A photo carries several dates, and tools fall back down a ladder when the good ones are missing:

right about the month
the full fallback ladder 95.18%
the rung it falls back to 26.53%
modification times alone 1,007 of 1,513 files land in one month

That one month is the month the library was copied. Every "this is what your 2019 looked like" view is downstream of whichever field survived — and the failure is not an error message, it is a plausible chart.

2. A gap is a property of the filter, not of your life

The report's longest gap is 96 days. The real longest gap is 71. There were 79 photographs taken inside the stretch it draws as empty — they were filtered out before the gap was computed, by rules that each looked reasonable on their own.

A "you took no pictures for three months" insight is a statement about your filter chain.

What is real and what is not

  • invented: the roll, by hand, fixed seed, declared above the first number
  • real: every parser, every ladder, every count — Python standard library only, dependencies = []
  • absent, not simulated: any image model. The tool never opens a photograph.

102 pytest, verifier 46,853 asserts, page self-check 59, 0 failures. MIT.

Top comments (0)