Story: Clean up sprint timeline generation

Table of Contents

This page documents a story in Sprint 20. It captures the goal, current status, acceptance criteria, and the tasks that compose it.

Goal

The sprint timeline generates one org-mode file per bucket (entry type). Two quality problems today:

  1. Empty buckets generate files. An empty captures.org or decisions.org is noise — it adds a file to the directory tree that readers open expecting content.
  2. No catalogue file. The sprint backlog has no single place to see which bucket files exist and navigate to them. Each bucket file is an island.

This story fixes both: suppress empty bucket files on generation, and introduce a sprint_timeline.org catalogue that the sprint backlog links to and that in turn links to every non-empty bucket file.

Status

Field Value
State DONE
Parent sprint Sprint 20
Now Nothing.
Waiting on Nothing.
Next Nothing.
Last touched 2026-06-11

Acceptance

  • Running the timeline generator with an empty bucket does not produce an org file for that bucket.
  • A sprint_timeline.org catalogue file exists in each sprint's timeline/ directory and lists every non-empty bucket with a link to its file.
  • The sprint backlog (sprint.org or equivalent) links to sprint_timeline.org.
  • Existing non-empty bucket files are unaffected.

Tasks

Task State Start End Description
Skip generating org files for empty timeline buckets DONE 2026-06-11 2026-06-11 When a timeline bucket has no entries, do not write the bucket org file.
Add sprint_timeline.org catalogue linked from sprint backlog DONE 2026-06-11 2026-06-11 Generate a sprint_timeline.org catalogue indexing all non-empty bucket files; link it from the sprint backlog.

Decisions

Out of scope

  • Retroactively deleting already-generated empty bucket files from the repo — that can be a separate cleanup pass.
  • Changing the content or structure of individual bucket files.

Emacs 29.1 (Org mode 9.6.6)