// MAINTENANCE PACK

MARCH 1 AND JUNE 1.
ONE LOCKED PACKET.

The problem is not “a generic SOP wiki.” The problem is the biannual Shutdown / Startup Procedures Summary for planned windows on March 1 and June 1. MaintWindow stores the developer roster and task template library, auto-creates events 30 days out via Kronos (MW_LEAD_DAYS, X-Cron-Secret), assigns developers to steps, previews HTML, exports PDF (WeasyPrint) and DOCX (python-docx), emails the packet with PDF to a distribution list using MW_SMTP_*, then locks the event read-only. mw_audit_log records deletes, assignment changes, sends, pre-checks. Pre-check warns on open Tradedesk lots and emits Herald. Send is Postgres advisory-locked (HTTP 409 on double-send). Authenticated GET /maintwindow/ may redirect to the dashboard — this storefront is for logged-out visitors. Health JSON, no DB.

Premier Mar 1 / Jun 1 Lock after send SMTP real
Dashboard How it works
2
Windows / year
30d
Auto-create lead
409
Double-send
Herald
Tradedesk pre-check
// HOW IT WORKS

Five steps from a calendar date to an immutable PDF

Unlike EUPM, this app *does* send email — that is the point of finalize. EUPM never sends.

01
Kronos creates the event
30 days before Mar 1 / Jun 1. CRON_SECRET header.
02
Assign the roster
Developers + task templates. Distribution list for the blast.
03
Pre-check
Open Tradedesk lots → warn + Herald. Audit log row.
04
Preview / export
HTML, PDF, DOCX. Read it before send.
05
Send and lock
SMTP with PDF. Advisory lock. Event becomes the institutional record.
Open MaintWindow
// EVENT

A dated packet, not a chat — CSS mock

Not ServiceNow change. Not EUPM .ics.

meltuc.tech/maintwindow/dashboard — CSS mock, not a product screenshot
WindowJun 1
Lead30 days
Statedraft → sent/locked
// SEND

SMTP is real here

MW_SMTP_* must work or finalize fails visibly. 409 if two sends race.

meltuc.tech/maintwindow · send — CSS mock, not a product screenshot
AttachPDF
Lockread-only after
Auditmw_audit_log
// PRE-CHECK

Tradedesk lots before you shut down

Herald gets the warning. Telegram is not the live bus.

meltuc.tech/maintwindow · precheck — CSS mock, not a product screenshot
Lotsopen → warn
BusHerald
409double-send
// vs EUPM

This one emails. That one downloads.

Do not copy EUPM never-sends language onto MaintWindow.

// WHAT IT REFUSES

No silent second send. No edit after lock.

Will not keep the packet mutable after distribution. Landing does not list roster emails.

// WHO THIS IS FOR

The operator who runs the twice-a-year window

Institutional memory for shutdown/startup. Not a daily stand-up tool.

// FEATURES

Roster, packet, send, lock

No invented CMDB.

📅
Two dates
Mar 1 and Jun 1.
⏰
Auto-create
Kronos + lead days.
👥
Roster
Developers + assign steps.
📚
Task library
Templates + items.
📄
PDF/DOCX
WeasyPrint + python-docx.
✉️
SMTP send
MW_SMTP_* + PDF attach.
🔒
Lock
Read-only after send.
🧾
Audit
mw_audit_log.
📣
Herald pre-check
Open Tradedesk lots.
// GET STARTED

Open the packet. Do not freestyle the window.

Login for dashboard. This page does not email anyone.

Open MaintWindow

Requires a MelTuc account. Create one free.

// SAID SLOWLY

What stays true over time

Biannual Shutdown/Startup Procedures Summary — assignments and PDF/DOCX export. Health stays cheap. If this page disagrees with the signed-in app, trust the app — the product contract and tests enforce that rule.