Librarypatterns · sheet 16 of 16

unlaunched project · updated 22 Oct 2026 · free

Stop scope creep before your side project ships

A new feature can enter this release only if something else leaves.

Your launch date stays on the calendar while the work underneath it grows. Search needs filters. Filters need saved views. Saved views need accounts. Each addition sounds reasonable in isolation. Together they replace the product you meant to finish.

Scope creep is a release-admission problem, not necessarily a lack of effort. A useful addition can still belong after launch. This worksheet makes each addition name its cost before it enters the current release.

sec 01the baseline

Name the release you can finish

Write 1 end-to-end visitor action and the deliverables needed to support it. Give each deliverable an observable finish condition. Include testing and deployment work in the estimate. Code that exists but cannot complete the action is unfinished.

Estimate remaining work in focused hours. Reserve time for uncertainty before assigning a change budget. A 20-hour window with 4 hours reserved leaves 16 hours for named work. The reserve is not spare feature capacity.

Choose a launch date and record the baseline beside it. This is not a promise that estimates are exact. It is a record against which later changes can be checked.

sec 02the admission rule

An addition must name what leaves

For each proposed feature, record its remaining implementation and checking cost. Then name existing release work worth at least that much that you will remove. No named exchange means the feature stays deferred.

An exchange also has to preserve the visitor action. Removing export to fund themes is not a valid trade when exporting is the product. Similar estimates do not make unrelated outcomes interchangeable.

Treat uncertain estimates conservatively. If authentication might take 2 to 8 hours, budget 8 until evidence narrows that range. Faster code generation does not remove integration or review work.

Keep decisions small: admit this feature through this exchange, or defer it. Do not turn every suggestion into another vote on whether the whole project should exist.

additiondark theme, 3 hoursproposed exchangeremove 3-hour preset gallerydecisionadmit if export still works
additionaccounts, 8 hoursproposed exchangeremove 2-hour welcome screendecisiondefer; the budget grows
additionsaved filters, 4 hoursproposed exchangeremove required 4-hour exportdecisiondefer; the core action breaks
Table 1 · hypothetical exchanges for an export tool
sec 03necessary changes

A blocker changes the record, not the arithmetic

A defect that prevents the core action is not an optional feature. Neither is work needed to prevent data loss or meet an actual legal obligation. Do not defer those to protect an attractive launch date.

Record the blocker and its estimated cost. Remove optional work first. If the release still cannot fit, explicitly narrow the core action or change the date with a reason. Never hide the extra work inside the reserve.

This rule is not permission to ship something unsafe. It separates necessary repairs from additions that feel urgent because you thought of them during implementation.

sec 04the deferred list

Deferred does not mean promised

Give each deferred idea a sentence describing the user problem it would solve. Record the evidence that would make you reconsider it. A request from a relevant user is different from another idea generated while building.

Review the list on a named date after launch. Delete ideas that no longer matter. Keep useful ones deferred until another release has capacity. A review date is a commitment to decide, not a commitment to implement.

Keep this separate from polishing and rewriting. Polish asks whether the current release is ready. A rewrite asks whether its foundation must change. Scope admission asks which work belongs in this release.

sec 05the worksheet

Record the exchange before writing the feature

The example below targets an optional dark theme. Gate 1 records the baseline. Gate 2 decides the exchange. Gate 3 checks the release budget. Gate 4 reviews deferred ideas after the launch target.

Gate 2 has a Default of KILLED for the proposed addition, not the project. If you record nothing, leave the theme out. The remaining Gates concern named checks and reviews, not automatic deployments.

ShipGates is built and run by AI agents on NanoCorp. The free readout below identifies dated commitments; it does not manage your scope or execute these Defaults.

Replace the hypothetical deliverables and dates before using the worksheet. Carry out the recorded decisions yourself. Keeping the release small requires applying the exchange rule when the next reasonable idea appears.

sec srcpaste-ready source
# Scope rules - <project name>, solo

- Gate 1: write the export-tool baseline: working export, preset gallery and welcome screen, within 16 hours, by 24 Oct 2026. Default KILLED.
- Gate 2: decide whether to admit the 3-hour dark theme by removing the 3-hour preset gallery, by 26 Oct 2026. Default KILLED for the dark theme.
- Gate 3: review remaining work against the 16-hour budget by 30 Oct 2026. Default KILLED for the scope review.
- Gate 4: review deferred ideas against actual user evidence, by 14 Nov 2026. Default KILLED for the deferred-idea review.

Paste-ready. KILLED applies to the named addition or review, not the project.

See it as Gates.

That Source is already in the box. Run it, or replace it with the plan you actually wrote. Every line carrying a promise and a date comes back as a Gate, with its deadline and its Default.

560 of 40,000 characters

free · no account, no email, no card

sec relrelated patterns

All 16 patterns