{"actions":{"bootstrapAndRun":{"effect":"installs rote if missing, inspects, prepares, and asks before running","href":"https://play.modiqo.ai/install?play=rajkaria/night-shift@0.1.0","method":"GET","rel":"https://rote.dev/rels/bootstrap-and-run","requiresConsent":true,"responseMediaType":"text/x-shellscript"},"inspect":{"command":"rote play inspect https://play.modiqo.ai/rajkaria/night-shift@0.1.0","effect":"read-only"},"installCliOnly":{"effect":"installs the rote CLI, nothing else","href":"https://play.modiqo.ai/install","method":"GET","rel":"https://rote.dev/rels/install-cli","requiresConsent":true,"responseMediaType":"text/x-shellscript"},"run":{"command":"rote play run https://play.modiqo.ai/rajkaria/night-shift@0.1.0","effect":"executes the play locally after consent","headless":{"approvalAssertion":"--yes","approvalRequiredBeforeInvocation":true,"commandTemplate":"rote play run https://play.modiqo.ai/rajkaria/night-shift@0.1.0 <name=value...> --yes","stdinPolicy":"never pipe input to automate the interactive Ready selector"},"requiresConsent":true}},"description":"Every editor and every dashboard shows commit times in whatever zone this machine is set to today, which quietly rewrites your history every time you travel or change laptops. Git records the committer's own UTC offset inside the timestamp, so a commit made at 04:12 in Tokyo is a 04:12 commit for ever. This reads that offset intact and answers, from the record rather than from memory, how much of your work lands after midnight. Every git repository under a root you choose, read through one fixed, read-only \u0060git\u0060 command line. Every hour, weekday and calendar date on the card is the wall clock the committer's own offset encodes, never this machine's idea of local time. Commits are matched to you by the addresses git already knows, plus any others you name. The distributions are the easy half. The half worth having is the correlation: for late commits against the rest, how often a commit was later reverted, how often a fix-up followed it within the hour, and how long its subject line was — three recorded facts,","distribution":{"digest":"sha256:7a117208fba1c98292b10e14345e13798e911e613e102729f22dc21ab1bc7805","mediaType":"application/vnd.modiqo.rote-flow","size":1023196,"verifiedBy":"rote verifies the downloaded archive against this digest before it runs"},"effects":{"credentialsProvidedBy":"runner","credentialsRemainLocal":true,"declaredWrites":[],"publisherReceivesCredentials":false},"id":"https://play.modiqo.ai/rajkaria/night-shift@0.1.0","inputPolicy":{"omittedValues":"inspect_full_parameters_before_collecting_values_or_consent","optionalWithDefault":"show_default_and_accept_override","optionalWithoutDefault":"omit_unless_supplied","required":"ask","secrets":"collect_locally_outside_conversation"},"links":{"docs":"https://rote.dev","page":"https://play.modiqo.ai/rajkaria/night-shift@0.1.0","protocol":"https://play.modiqo.ai/.well-known/rote","self":"https://play.modiqo.ai/rajkaria/night-shift@0.1.0.json"},"name":"night-shift","owner":{"kind":"user","slug":"rajkaria"},"parameters":[{"default":"~/daily","description":"Created if missing. Everything this Play writes goes here and nowhere else.","example":"~/daily","input":{"allowCustom":true,"choices":[],"label":"Out dir"},"name":"out_dir","required":false,"type":"string"},{"default":"false","description":"true runs the whole Play against a bundled synthetic commit history, so a first run needs nothing installed and no account.","example":"false","input":{"allowCustom":true,"choices":[],"label":"Demo"},"name":"demo","required":false,"type":"string"},{"default":"~","description":"Every git repository under this folder has its commit log read. Nothing outside it is opened.","example":"~/Projects","input":{"allowCustom":true,"choices":[],"label":"Root"},"name":"root","required":false,"type":"string"},{"default":90,"description":"How many days back to read. The same value is passed to the read and the report, so the denominator on the card is the window you asked for.","example":90,"input":{"allowCustom":true,"choices":[],"label":"Days"},"name":"days","required":false,"type":"integer"},{"default":"","description":"Comma separated. Commits are matched to you by the addresses git already knows; add any others here so a second identity is not counted as somebody else.","example":"you@work.example,you@home.example","input":{"allowCustom":true,"choices":[],"label":"Emails"},"name":"emails","required":false,"type":"string"},{"default":23,"description":"Local hour after which a commit counts as late. 23 means from 11pm.","example":23,"input":{"allowCustom":true,"choices":[],"label":"Late hour"},"name":"late_hour","required":false,"type":"integer"},{"default":5,"description":"Local hour the late window closes. 5 means the window runs 11pm to 5am.","example":5,"input":{"allowCustom":true,"choices":[],"label":"Dawn hour"},"name":"dawn_hour","required":false,"type":"integer"},{"default":60,"description":"A commit that amends or fixes another within this many minutes is counted as a fixup, which is how the card compares late work with the rest.","example":60,"input":{"allowCustom":true,"choices":[],"label":"Fixup minutes"},"name":"fixup_minutes","required":false,"type":"integer"}],"preparation":[{"action":{"command":"rote play inspect https://play.modiqo.ai/rajkaria/night-shift@0.1.0 --json","effect":"read-only"},"step":1,"type":"inspect_local_readiness"},{"references":["/parameters"],"step":2,"type":"collect_parameters","whenValuesOmitted":"Run step 1 before collecting inputs or showing defaults; omittedFields are unknown values, not absent defaults or exhaustive choices."},{"references":["/parameters","/requirements","/effects"],"step":3,"type":"review"},{"consentBoundary":"the user approves the exact play and parameter values","references":["/parameters","/requirements","/effects"],"step":4,"type":"obtain_run_consent"},{"action":{"command":"rote play run https://play.modiqo.ai/rajkaria/night-shift@0.1.0","headlessCommandTemplate":"rote play run https://play.modiqo.ai/rajkaria/night-shift@0.1.0 <name=value...> --yes"},"preservesAcquisitionBoundaries":["adapter_selection","oauth_dcr","google_discovery","static_token_setup","runtime_security_checks"],"requiresConsent":true,"step":5,"type":"run"}],"producedBy":{"roteVersion":"0.79.0"},"publishedAt":"2026-09-05T20:40:18.950138+00:00","reference":"rajkaria/night-shift@0.1.0","requested":"rajkaria/night-shift","requirements":{"adapters":[],"browser":{"dependencies":[],"runtime":false,"signIn":false},"hostToolRequirements":[{"command":"python3","required":true,"versionRequirement":null}],"localTools":["python3"],"roteCli":{"minimumVersion":"0.91.0"},"sessions":false},"resolution":"latest","schema":"rote.play.v1","stats":{"downloads":2,"installs":0},"steps":{"count":2,"names":["read_commits","report"]},"title":"night-shift","type":"play","version":"0.1.0","visibility":"public"}