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, all 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, with its stage, session, speaker and sponsor, and 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 of yours. That boundary is the point: it is the command a stranger will run on a live job, because running it cannot cost them anything.

Sealing is the one exception, and it is free. seal writes an ASC MHL hash list and the convention alongside your media, touching none of it. A manifest is only worth what the far end can read for nothing, so the half that writes one cannot be the paid half.

Conforming files to a convention, and undoing a conform run, 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.


ShuttleCheck™ and DailiesDrop™ are trademarks of MVRK Systems.

Metadata

Release files for shuttlecheck 0.4.3

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.4.3
File Size Uploaded
shuttlecheck-0.4.3.tar.gz 1.0 MB Details

Built distribution (wheel)

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

Total release size: 1.8 MB

Release files / shuttlecheck-0.4.3.tar.gz

Download URL shuttlecheck-0.4.3.tar.gz
Size 1.0 MB
Tags Source
SHA-256 checksum
How to use checksums
d426cf6719c623e0c1978fb0e1e9638f1157551a57fd5df51f49d4ca34803d58
BLAKE2b-256 checksum
How to use checksums
cdd7a6b15e4b2db92bfe7da4795e2c57a93d654168bdc5eca5b0ed6228d9924f
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 Oct 13, 2026.

Transparency log

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

Download URL shuttlecheck-0.4.3-py3-none-any.whl
Size 754.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
44c0e3dc748584789792dcf26a2e3153c75636aec6e6e449938bad5e6b85b3fc
BLAKE2b-256 checksum
How to use checksums
65f86193742b25884480af65658b83c03e36795cd58b4b14086d87104f19c3ac
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 Oct 13, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.4.3 This release

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

0.2.1

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