Sundae Bar Logo

internal-reporting-playbook

Log In

Communication

Overview

Turns raw working material like standups, ticket dumps and sprint recaps into internal reports people actually read. It works out who needs to hear what, writes each piece at that reader's altitude, and calls project health straight instead of parking everything at yellow.

SKILL.md

Code
---
name: internal-reporting-playbook
description: ALWAYS load this for any internal reporting request — a status update, a progress note, a working-channel post, a stakeholder or partner email, an exec or leadership summary, or a rewrite of an earlier report — whether the context arrives dense (standups, ticket dumps, sprint recaps, launch readouts) or almost bare. It carries a practitioner's craft: judging who the report is for, mining raw context for the facts that carry weight, calling project health with a straight face, and writing short enough to actually be read. Work through it before drafting anything, or before declining to.
---

# An internal reporting playbook

Good internal reporting is a craft with a long memory, learned on the job and worth
setting down. What follows is that craft — the habits a trusted communicator brings to
every update, whatever its size.

Start with the only line that precedes the writing itself:
`Routing: <readerships found> → <pieces produced>, because <one-clause reason>.`
Everything under it is finished, sendable writing.

## The habit of writing for a named reader

Every piece you send is opened by a specific person, and good reporting begins by
picturing them. Write only to readerships the week genuinely earns; when that comes to
fewer pieces than the request implied, the routing line is where you say so, in a clause,
and move on. Phrases like "an update," "some comms," "keep people posted" mean the whole
readership, singular grammar notwithstanding. A request that points at one reader sets
the lead piece without silencing the others. Only language that fences the ask — one
channel and nothing besides — caps the set: honor it, and give that single piece your
full craft with nothing riding alongside.

A craftsperson's tell is refusing to pad. Where a reader owes you something, that request
travels in its own short, direct note to them — raised early while runway remains, saying
plainly what you need and by when, offered with help to clear it — never chased in front
of a crowd, where it reads as pressure rather than coordination. Small and separate beats
large and combined whenever two readers need different things.

## Reading the raw material like a reporter

The work of reporting is mostly reading. Go through the material twice: once for the shape
of the week — a launch, a slip, a corrected number, a dependency forming, ordinary
progress — and once to lift out the load-bearing facts, which rarely wear labels. Give
each surfaced item its owner, its date, and the cost of its slipping, and name who is
actively pushing it even when that person is you. A line with no owner and no date is not
yet news.

Accuracy outranks completeness — the oldest rule in the trade. Report what the material
supports, mark an assumption as an assumption, and never let an invented particular — a
date, a figure, an owner, a health color — pass for something established. A promise belongs to the person making it before it belongs to a report; a good reporter passes commitments along, never originates them. And an honest report needs some minimum to exist
at all: a person accountable, a place in time, something that truly happened. When the
material carries none of that, the craftsperson's move is not to manufacture a
plausible-looking shell but to say what is missing, what its absence costs the reader, and
where it can be found — and to stop there. Adjacent requests belong to adjacent crafts:
customer-facing notes, incident retrospectives, a one-off reply, anything about a single
person's performance — decline them cleanly and name what fits.

## Calling health without flinching

A status color is a claim, and a good reporter earns it: green only when nothing
conditional hangs over a commitment, since motion alone is not health; yellow when a named
condition could move a commitment even as the work tracks its plan, stated with the thing
that would clear it; red when a commitment will miss or a critical item has stalled with
no owner and no path. Bind one line of evidence to the color and show the shift when it
moved. Where signals conflict, name the conflict and grade to the worst you can defend.
Two failures every seasoned reporter learns to fear: the report that reads healthy until
the week it collapses — which failed as reporting long before the project did — and the
color parked at caution to avoid being wrong, which teaches readers to stop reading it.
Hard news reaches its subject in a quiet word first, inside the walls before outside them.

## Fitting each piece to its reader

Report at the altitude each reader lives at. The working team takes the whole operational
picture; partners take consequence, each affected group named and told what shifts for
them; leadership takes signal — the health call, the one thing that could move it, the
lever they alone hold. A stuck item is worked at exactly one altitude, the one whose
reader can free it, and shows elsewhere only as its effect. Anything delicate — friction,
outside positioning, who promised what — goes only to whoever owns that call, never a
broad channel. Every open decision ships with its fallback, so silence still resolves.
Any constraint the reader handed you — a name to avoid, a framing to keep, a confidence
to hold — lives in the writing of every piece, subject lines and openings included, and is
never itself named in what a reader sees.

Then write each piece in its own voice, re-derived from the facts rather than one draft
resized three times. A report worth trusting reads as if it could only have been written
about this project this week; if it would fit another unchanged, the thinking has not
happened. Round the numbers for leadership and keep them exact for the team. Cut the empty
courtesies and close on the real ask or an honest nothing-needed. Fill `[brackets]` from
the material alone, and drop any line it cannot support. Head each piece with what it is,
its reader, and its rough length, divided by `---`:

`## 📣 Team post — for: [#channel] (team, ~[N] words)`

    📌 [Project] — [date or sprint]
    ✅ Shipped — [what landed, with its result when known]
    🔧 In flight — [item] — @[owner] — ETA [date]
    🚧 Stuck — [item] — owner: [name or "unassigned"] — need by [date] — else [impact]
    📣 Needs a call — [open question, with its fallback]

Casual, scannable, fragments welcome. When it revises an earlier post, report the change
rather than the whole picture, and put any figure you are correcting at the top, stated
plainly, never softened under good news.

`## 📧 Stakeholder email — for: [recipients] (partners, ~[N] words)`

    Subject: [Project] — [update type] — [date]
    Hi [teams], [the headline for them, a sentence or two]
    [One line orienting a recipient who may not know the project]
    What this means for you — [Team A]: [their consequence]; [Team B]: [theirs]
    Risks & dependencies — [risk touching them] — mitigation: [what's underway]
    What we need — [request] — owner: [name] — by [date]
    Next update: [date]. Thanks, [sender]

Plain, warm, jargon rendered into outcomes before it leaves the team.

`## 📄 Exec summary — for: [forum] (leadership, ~[N] words)`

    ## [Project] — Status: [🟢/🟡/🔴] (as of [date])
    Why: [one line of evidence — on a change, "moved from [prior] because…"]
    - [outcome first: "Launched…", "Recovered…", "Cut…"]
    - Risk: [the technical issue as its business consequence]
    - [No action needed from you this period. | You alone can unblock: <ask> — by <date>]

The shortest and most decided piece. Its last line is one of two, always present: an
honest "nothing needed" — real information for a busy reader — or the single dated ask
only that reader can grant. Reserve "decision needed" for a decision truly open. A stuck
item under a named owner has earned its escalation clock: no word by a date, and you act.
Give technical risk as its business consequence, never raw. Carry dates exactly as the
material stated them.

## Craft that outlives a single report

A few habits mark the reporter you come to trust over years rather than one good week.
Keep a steady cadence, so a missing report is itself a signal worth noticing. When you
inherit a project mid-flight, report what you have confirmed rather than what you were
handed. When a program is winding down, the job turns from progress to disposition —
what shipped, what was cut, what remains for whoever comes next. Write for the colleague
reading three months on who was never in the room, so the record still explains itself.
Praise the specific person whose work earned it, by name and by number, because a team
reads its own reports and learns from them what gets noticed. And keep every piece to the
length its reader will actually spend on it: a team scans between meetings, a partner
reads for a minute, an executive for less — earning attention by asking little of it is
half the craft. Two more marks of the trade: a report is a favor to the reader, not a
performance for the writer, so its measure is whether they can act after reading, not
whether it looks thorough; and the same discipline governs good news and bad — a win
overstated costs the same trust as a risk understated, and a reporter who is believed in
a crisis is one who never inflated in calm.

## The last read

Before anything ships, read the whole set once as its readers will: each piece complete
and standing on its own, each reader met at their altitude and no other, each constraint
honored in the writing and named nowhere in it, nothing from one reader's world straying
into another's, each reader left knowing their next move even when that move is none.
Where the set turned on a real call — something held from a reader, ground prepared before
a hard message travels — add a couple of closing lines, marked as being for the sender and
not for sending on, that explain the call so it can be overruled. Where no such call was
made, let the last piece be the last word.

Platform-hosted file · no public repository.

AI

Scout Summary

Lab Performance
77Lab score

Iterations

249

Challenge

SBC11

Rating

5.0Excellent(1 Review)

Log In

Details

Creator

sundae_bar Lab

Files

1 file

Lab Submissions

249

Security Analysis

Malware-free

Pass

File integrity

Pass

Reputable source

Pass
Installation

Install via CLI

Or download via curl