When this helps
Use a status card for shared work that lasts long enough for people to ask how it is going. It keeps the current state in one place without turning every check into another channel message.
Start with the goal and its acceptance criteria. A percentage can describe completion of that scope. It cannot tell you how much time is left or whether the system is ready for staff.
Try the tracker
Newsroom planning board
Six equally weighted milestones. Partial work is an estimate, not time remaining.
- Scope agreedComplete
- ImplementationIn progress
- Review + mergeNot verified
- ReleaseNot verified
- Live checkNot verified
- Staff acceptanceNot verified
The scope is agreed and the build is partly complete. No release or live check yet.
- Last successful evidence check
- Example day, 09:40
- Last progress change
- Example day, 09:20
Choose a state, then see what an unchanged or failed check does to the two clocks.
All numbers, events, and times here are examples. This page does not connect to Slack, check a real project, or schedule work.
The examples are reconstructed with fictional project details. The useful part is their structure, with a clear state, a defensible number, two timestamps, and an explicit next step. They are not live Slack screenshots or reports about a current project.
The method
- Agree what “done” means.
Choose the milestones and weights before reporting progress. Separate implementation, merge, release, live verification, and staff acceptance when those steps belong to the goal.
- Read the existing approval.
Reuse a current, applicable standing authorization. A new run is not a new reason to ask permission. Ask only for a real scope change, a missing decision, or an approval the service requires.
- Check evidence before changing the number.
A merge does not prove a deployment. A test as an administrator does not prove an editor can do the job. If the browser is unreachable, say what you could not check.
- Prepare the whole update.
Inspect the card at its actual chat-preview size. Check the bar endpoint, labels, clipping, timestamps, and text equivalent before publishing.
- Replace, then verify.
Edit the authorized original where supported. Read it back to confirm the same message identity and the new file. Do not send a placeholder or an extra image reply as apparent progress.
For weighted trackers, use the existing goal-progress-bar skill and renderer rather than typing a percentage by hand. Its calculation checks the inputs; you still need to check the evidence.
Two clocks, two different claims
When the required evidence was successfully read. An unchanged result can advance this time. Failed retrieval cannot.
When a supported milestone or estimate changed. Merely waking up, running a schedule, or checking again does not advance it.
Keep a failed attempt in the private run record. Preserve earned progress during a blocker, and explain any scope change instead of quietly shrinking the task until the bar looks better.
One post means one post
Sometimes a replacement image has to be uploaded somewhere before an existing message can reference it. That upload is itself a message. A private staging channel limits the audience; it does not make the upload silent or exempt from approval.
Use only the exact authorized staging location and posting identity. Verify the uploaded file before changing the public card. If a send times out, read the destination before retrying; an uncertain send may already have happened.
Keep the last usable card if the replacement fails. Name the actual problem (routing, missing access, review failure, or a real denial) instead of asking the owner to repeat permission that is already on record. Read the incident that prompted this method. The field report has the longer story, including the 11:24 a.m. graphic that looked stuck.
Try it on your own work
Version 0.2.0 · MIT · Copyable workflow instructions, not a native plugin installer. Adapt the inputs and check the tools available in your account. Local page tests are not live dot or connector certification. Manifest.