Skip to main content

ShuttleCheck

Check media filenames, folder structure and deliverables against a written convention. Nothing in this package renames, moves or deletes anything.

On a production the naming convention is a PDF or a message in a chat, and every vendor on the job breaks it. Nobody finds out until a conform fails in post, or a lab rejects a delivery at four in the morning.

pip install shuttlecheck
shuttlecheck ui

Point it at a job you have already finished. It works out the convention you are already using, then shows you every file that does not follow it.


It reads the convention off your own files

Nobody can describe their naming convention in the abstract, and nobody should have to. Point init at a finished job and it recovers the fields, tells you how confident it is in each one, and flags anything it had to guess at.

FIELDS RECOVERED
  {project}      constant   100%  NRD24
  {day}          integer     90%  DAY1, DAY2
  {stage}        enum        80%  HALLA, HALLB
  {session}      integer     90%  SES001, SES002
  {title}        slug        85%  opening-remarks, keynote

It handles conventions that disagree with themselves — several accepted forms per field, optional elements, free-text titles containing the separator — because real ones do.

Then it tells you what breaks it

SHUTTLECHECK CONFORMANCE REPORT
  files scanned      412
  conforming         398
  errors               9   ingest will fail
  warnings             5   inconsistent, will work

ERROR    filename-mismatch   (6)
  D02/MAIN/MASTERS/AUT26_D02_MAINSTAGE_S114_v01.mov
    the stage field does not match what the spec allows

Findings name the field at fault, not just the file. Errors mean an ingest will reject it; warnings mean it is inconsistent but will work. The two are never conflated, because a noisy report does not get read.

What it checks

Names and folders Against a pattern, with the offending field identified
Codec and container Read from the file, not from the filename's claim
Resolution, frame rate, scan Including 29.97 handled as 30000/1001
Audio Channel count, layout, sample rate, bit depth
Sidecars Captions, checksums, metadata a deliverable must carry
Packages Whether a session is short a master, a proxy, a cutdown
Portability Illegal characters, reserved names, path length, case collisions
Unicode Names that compare equal on one platform and not another

Media inspection uses ffprobe when it is on your PATH. When it is not, those checks are reported as skipped — never as passed. A silent skip is how a conformance tool starts lying.

For live events, the running order does the work

An event agenda is structured data that exists weeks before anyone turns a camera on. Joined against time-of-day timecode, every recording names itself — stage, session, speaker, sponsor — with no inference of any kind.

It will also tell you when a filename is well-formed and still wrong: S007 recorded during S011 is a valid shape carrying a false claim, and only the running order knows.

Checking a drive that arrived

If a drive was sealed with a convention on it, one command with no arguments checks both that it arrived intact and that the names conform:

shuttlecheck verify /Volumes/SHUTTLE01

No spec to be told about, no account, no connection.


What this package will not do

It will not rename, move or delete anything. That boundary is the point: it is the command a stranger will run on a live job, because running it cannot cost them anything.

Conforming files, the reversible journal, sealing drives and per-vendor specs are licensed separately as ShuttleCheck Pro. Asking for one of those commands here prints an explanation rather than an error.

Licence

Free to install and use. Not open source: no right to redistribute or modify. See https://mvrk.systems/shuttlecheck.

Made by MVRK Systems.

Metadata

Release files for shuttlecheck 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for shuttlecheck 0.2.1
File Size Uploaded
shuttlecheck-0.2.1.tar.gz 145.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for shuttlecheck 0.2.1
File Interpreter ABI Platform
shuttlecheck-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 254.9 kB

Release files / shuttlecheck-0.2.1.tar.gz

Download URL shuttlecheck-0.2.1.tar.gz
Size 145.3 kB
Tags Source
SHA-256 checksum
How to use checksums
787671e9397a3b9d0dad4e17a9dde0283f0f3f7a776257af204fef526f38ad93
BLAKE2b-256 checksum
How to use checksums
0a4458093aba4c1d4b342d487b7bcad5b907cbe23912bdd385783f865609f69e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 22, 2026.

Transparency log

Release files / shuttlecheck-0.2.1-py3-none-any.whl

Download URL shuttlecheck-0.2.1-py3-none-any.whl
Size 109.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
08d7945beb89c314c96400d38e901ca039f07e7626bb361bb201d3a8363f9160
BLAKE2b-256 checksum
How to use checksums
2705353a022cf82aed0d36c05581df3d1cb9f786e8cce681ed495ba1545df2f9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 22, 2026.

Transparency log

Release history Release notifications | RSS feed

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.0

2 release files

This release

0.2.1 This release

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page