con / con/mechababs

Growing a campaign's app bundle mid-campaign — deferred by design

Open
#116 0 comments 0 reactions 0 assignees View on GitHub
fuzzy/slop
Dominant language
Python
Stars
1
Forks
4
Avg merge
15h 39m
Merged PRs (30d)
24

Description

Decided during the study-first implementation review (2026-08-21): a campaign's app bundle is **fixed at `campaign init`** in the study-first implementation. Adding an app to a running campaign is deliberately unsupported.

The preferred pattern when you want another app is to **create a new campaign** — a campaign is a config epoch, and a new bundle is a new epoch. That keeps `add-dataset` simple (re-selecting an already-selected dataset just refuses) and avoids the row-materialization machinery a growing bundle needs (which cells exist becomes partly derived state, the reconciler has to fill missing cells per tick, and the intuitive UX for it is unclear — re-running `add-dataset` per dataset after a bundle edit certainly isn't it).

If a real need to extend a live campaign shows up, reopen the design here. The per-cell add machinery that would seed it existed briefly on the `study-first-add-dataset` branch (see its history) before being simplified out.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Contributor guide

No contributing guide indexed for this repository

Research direction

This issue is explicitly deferred and names no implementation files or tests. Start by reviewing the study-first implementation and the history of the study-first-add-dataset branch; only reopen the design if a real need to extend a live campaign appears, then define the bundle and row-materialization behavior before implementation.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.