C.W.K.
Stream
Lesson 03 of 05 · published

P0 / P1 / P2 / Never: The Intake Tiers

~13 min · bounded-replacement, scope, roadmap, prioritization

Level 0Reel Novice
0 XP0/39 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete
"Unknown is not a shipping classification."

A Roadmap That Says No

Every feature request arrives wearing the same friendly face: "wouldn't it be nice if…" A bounded tool needs a machine for turning that pressure into a decision, or it drowns. Ashen Reel's machine is four tiers, and the fourth one is the important one.

  • P0 — required for cutover. Dad cannot retire Movist until these pass: open a file, exact Recall seek, play/pause/volume, honest seek modes, subtitle and audio track selection, resume, full screen, screenshot, A-B loop. Proven, or the release is blocked. No partial credit.
  • P1 — daily-depth candidates. Real value, but they wait until the P0 path works and an observed workflow asks for them: thumbnail scrubbing, subtitle styling, local bookmarks, aspect controls.
  • P2 — evidence-gated specialists. Do not schedule until Dad demonstrates real friction and a positive delta over the current tool: audio passthrough matrices, EQ, multi-track composition, a full shortcut-preset system.
  • Never — deliberately refused. Not "later." Never: an SMB/FTP/WebDAV browser, web-media extraction, file deletion or rename, transcoding, a library manager, a transcript database, a Pippa brain.

The Never Tier Is the Point

Most roadmaps have P0 and P1 and a graveyard called "backlog" where P2 ideas rot without ever being told no. Ashen Reel names a Never tier out loud. Writing "we will never build a network-share browser" is a gift to your future self: it ends the recurring debate before it restarts, and it tells anyone reading the code exactly where the walls are.

Scope expands only from observed friction or a required failure — never from "a competitor has it" or "it'd be easy." The two most dangerous phrases in tool-building are the two this rule bans.

Here is the same rule as code, small enough to fit in your head:

Leaving a behavior 'Unknown' is itself a bug. Every surface Movist exposes is marked P0, P1, P2, or Never before shipping. An unclassified feature is a decision you're secretly deferring to whoever files the next request — which means the loudest request wins, not the most important one.

Notice the asymmetry: promoting up a tier takes evidence, but the default gravity is down. When in doubt, a thing is more-refused, not less. That single bias is why Ashen Reel is a deep player and not a slow, sprawling one.

Code

The intake tiers, and the only thing that promotes a P2·swift
/// How a candidate behavior enters (or never enters) Ashen Reel's scope.
enum ParityTier {
    case p0     // required for Movist cutover: proven, or the release is blocked
    case p1     // daily-depth candidate: enters when an observed workflow asks
    case p2     // evidence-gated specialist: needs friction AND a positive delta
    case never  // deliberately refused: SMB browser, web extraction, source mutation
}

/// The gate. Note P2 needs BOTH signals, and `.never` ignores every argument.
func shouldSchedule(_ tier: ParityTier,
                    frictionObserved: Bool,
                    positiveDelta: Bool) -> Bool {
    switch tier {
    case .p0:    return true                     // already required
    case .p1:    return frictionObserved
    case .p2:    return frictionObserved && positiveDelta
    case .never: return false                    // no amount of "but it'd be cool"
    }
}

External links

Exercise

Take a project you're working on and sort five pending ideas into P0 / P1 / P2 / Never. The rule: nothing may stay 'Unknown.' Force at least one idea into Never and write the one-sentence reason it will never be built. Which idea fought hardest against being classified? That's usually the one your scope is quietly bleeding into.
Hint
P0 = the release is blocked without it. Never = it belongs to a different tool or a different owner. If everything lands in P1, you haven't decided anything — you've just made a wish list with priorities.

Progress

Progress is local-only — sign in to sync across devices.
Spotted a bug or have feedback on this page?Report an Issue

Comments 0

🔔 Reply notifications (sign in)
Sign inPlease sign in to comment.

No comments yet — be the first.