docs: move journal/voice work to explicit backburner track
Konrad's decision (15 May 2026): Phase A.2 (manual JournalEntry
UI) + Phase B (Letterly inbound webhook) are too complex to
interleave with normal app work — they'll be built and tested
offline on a separate track, not in ai-dev.
Verified there is NOTHING to remove or bypass: zero JournalEntry
model/views/urls/templates, zero Letterly/webhook/@csrf_exempt
code anywhere on ai-dev, latest migration is 0015. The working
app was already 100% clean of journal/voice code — these features
never left the design-doc stage.
Doc changes:
- parked-work.md: "Blocked on Konrad's input" section replaced
with "🧊 Backburner — separate offline track", with an explicit
"do NOT start in ai-dev" warning and the nothing-to-remove
verification recorded.
- CLAUDE.md breadcrumb: reframed from "parked pending Q5/Q7
answers" (implies ready-to-go once answered) to "deliberately
deferred to offline track — do not pick up as normal feature
work".
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
5162db966a
commit
d7015b9210
13
CLAUDE.md
13
CLAUDE.md
@ -12,9 +12,16 @@ day is captured in the "DEPLOY ORDERING" bullet of the
|
||||
Flatlogic/AppWizzy Deployment section — restart must come AFTER
|
||||
the code is pulled, because `DEBUG=False` caches templates.)
|
||||
|
||||
Phase A.2 (manual JournalEntry UI) and Phase B (Letterly inbound
|
||||
webhook) from the Site Work Logging design are parked pending Q5 / Q7
|
||||
answers — see `docs/plans/parked-work.md`.
|
||||
**🧊 Backburner — do NOT start in `ai-dev`:** Phase A.2 (manual
|
||||
JournalEntry UI) and Phase B (Letterly inbound webhook) are
|
||||
deliberately deferred to a separate offline build/test track
|
||||
(Konrad's decision, 15 May 2026 — they're complex and will be
|
||||
proven offline first). They are NOT "blocked waiting on an answer"
|
||||
and should not be picked up as normal feature work. **Nothing
|
||||
journal/voice-related exists in the working app** — verified zero
|
||||
`JournalEntry`/webhook/`@csrf_exempt` code on `ai-dev`; there was
|
||||
never anything to remove. See the "Backburner" section in
|
||||
`docs/plans/parked-work.md`.
|
||||
|
||||
## Coding Style
|
||||
- Always add clear section header comments using the format: # === SECTION NAME ===
|
||||
|
||||
@ -28,42 +28,46 @@ Flatlogic Deployment section.
|
||||
|
||||
---
|
||||
|
||||
## Blocked on Konrad's input
|
||||
## 🧊 Backburner — journal/voice features (separate offline track)
|
||||
|
||||
### Phase A.2 — Manual JournalEntry web UI
|
||||
> **Decision (15 May 2026):** Konrad parked the entire journal /
|
||||
> voice-transcript line of work. It's more complex than the rest of
|
||||
> the app and will be built + tested **offline, on a separate
|
||||
> track**, NOT mixed into `ai-dev`. **Do NOT start either of these
|
||||
> in `ai-dev` or in any normal feature session.** They are not
|
||||
> "blocked waiting on an answer" — they are deliberately deferred
|
||||
> until Konrad chooses to spin up a dedicated offline effort.
|
||||
|
||||
**Status:** Designed in the Site Work Logging brainstorm. Model
|
||||
class drafted in the design doc (not yet in `core/models.py`).
|
||||
Not yet built.
|
||||
**Important — nothing is in the working app.** Verified 15 May 2026:
|
||||
zero `JournalEntry` model / views / URLs / templates anywhere in
|
||||
`core/`, zero Letterly / webhook / `@csrf_exempt` code on `ai-dev`,
|
||||
latest migration is `0015_absence_project`. There is no dead code,
|
||||
no feature flag, no migration to reverse. "Removing" these was a
|
||||
no-op — they were never built into the running app. The working
|
||||
app (`ai-dev` + production) is completely clean of journal/voice
|
||||
code.
|
||||
|
||||
**Blocked on:** Q7 from the original brainstorm — "Who is Vi?" The
|
||||
answer drives whether `JournalEntry` needs a `recipient` or
|
||||
`audience` field (i.e. is this a public log, or does it have
|
||||
specific addressees like a client). **Default if unanswered:** no
|
||||
recipient field — entries are all-admin-readable.
|
||||
### Phase A.2 — Manual JournalEntry web UI (deferred)
|
||||
|
||||
**Scope when unblocked:** ~1 hour of work. Manual entry form at
|
||||
`/journal/new/`, list at `/journal/`, edit at `/journal/<id>/edit/`.
|
||||
Admin-only views. Lives on `ai-dev` (no webhook involvement).
|
||||
Designed in the Site Work Logging brainstorm (`~/.claude/plans/
|
||||
prancy-painting-brook.md`, local). A `JournalEntry` model + manual
|
||||
entry form/list/edit, admin-only. Open question if/when resumed:
|
||||
**Q7 "Who is Vi?"** — drives whether `JournalEntry` needs a
|
||||
`recipient`/`audience` field. Default if never answered: no
|
||||
recipient field, all-admin-readable. ~1 hour scope. When resumed,
|
||||
build on the offline track first, not directly in `ai-dev`.
|
||||
|
||||
### Phase B — Letterly inbound webhook (`integrations` branch)
|
||||
### Phase B — Letterly inbound webhook (deferred)
|
||||
|
||||
**Status:** Designed in the Site Work Logging brainstorm. Belongs
|
||||
on the `integrations` branch, **not** `ai-dev`.
|
||||
|
||||
**Blocked on:** Q5 from the original brainstorm — Konrad needs to
|
||||
share a sample Letterly webhook payload. Need to know:
|
||||
- Does it include the recording user (so we can map to a Django User)?
|
||||
- Does it include project / location metadata, or just the transcript?
|
||||
- Does it include an audio URL for link-back?
|
||||
- Does Letterly support custom fields (so a deep-link from
|
||||
`/site-report/<id>/edit/` could embed a `work_log_id` that the
|
||||
webhook reads back)?
|
||||
|
||||
**Scope when unblocked:** ~3-4 hours including tests + one-off
|
||||
Letterly account setup. Adds a `@csrf_exempt` view at
|
||||
`/webhooks/letterly/`, `JournalEntry` row creation, HMAC body
|
||||
verification, shared-secret URL token.
|
||||
Designed in the same brainstorm. A `@csrf_exempt` view at
|
||||
`/webhooks/letterly/` that creates `JournalEntry` rows from voice
|
||||
transcripts, with HMAC body verification + shared-secret URL token.
|
||||
Open question if/when resumed: **Q5 — a sample Letterly webhook
|
||||
payload** (does it include the recording user / project metadata /
|
||||
audio URL / custom fields?). ~3-4 hours scope + one-off Letterly
|
||||
account setup. This was always meant to live on the `integrations`
|
||||
branch, never `ai-dev` — and now it's offline-track until Konrad
|
||||
revisits.
|
||||
|
||||
---
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user