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

Built distribution (wheel)

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

Total release size: 1.8 MB

Release files / shuttlecheck-0.4.1.tar.gz

Download URL shuttlecheck-0.4.1.tar.gz
Size 1.0 MB
Tags Source
SHA-256 checksum
How to use checksums
675046a5df3f69471bcc0f326bcf202d880ad6c3c4d6b4034c214c1f5cbff203
BLAKE2b-256 checksum
How to use checksums
d23c0c8beb5e6b16a9cd90206f104294be48aff7335dc1f6c5422154f3bdc475
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 12, 2026.

Transparency log

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

Download URL shuttlecheck-0.4.1-py3-none-any.whl
Size 753.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4cfb7301efa05b430989eb4e1e6a1de9b033f82fbf1eb852b0db9a53edd25c0a
BLAKE2b-256 checksum
How to use checksums
397d021ef408d8a15b20a27507ab53629691467cd2f279927d2eff71afb66a86
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 12, 2026.

Transparency log

Release history Release notifications | RSS feed

0.4.3

2 release files

0.4.2

2 release files

This release

0.4.1 This release

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