From 05dd45698a80d499cf44d4823429ddc53d7ac258 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 21 May 2026 05:08:42 +0000 Subject: [PATCH 1/2] Initial plan From 4f483f74351e0f9f1259538f18ed56c12f9649a4 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 21 May 2026 05:10:12 +0000 Subject: [PATCH 2/2] Add planning document with ambiguities, questions, and risks Agent-Logs-Url: https://github.com/VictorrLiu/Pub2pod/sessions/4c14b9ee-492f-4191-9f85-c9ea72c1980c Co-authored-by: VictorrLiu <91512405+VictorrLiu@users.noreply.github.com> --- plan.md | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 plan.md diff --git a/plan.md b/plan.md new file mode 100644 index 0000000..75a284c --- /dev/null +++ b/plan.md @@ -0,0 +1,53 @@ +# Pub2pod Planning (No Build Yet) + +## Scope acknowledgement +- This phase is planning-only. +- No pipeline implementation is started in this document. +- Requested model preference captured: **Claude Opus 4.7**. + +## What is still unclear / ambiguous +1. **Provider stack**: exact LLM provider/API + fallback policy are unspecified. +2. **TTS stack**: provider, voice inventory, and licensing constraints are unspecified. +3. **Rights/access policy**: behavior for paywalled or unavailable full text is unspecified. +4. **Grounding/citation rules**: required citation format and claim traceability in outputs are unspecified. +5. **Novelty method**: retrieval scope and criteria for “better/different from prior work” are unspecified. +6. **Length targets**: desired summary size and podcast runtime are unspecified. +7. **Narration style controls**: speaker persona and pacing controls are unspecified. +8. **Windows runtime constraints**: packaging and local dependency expectations are unspecified. +9. **Caching strategy**: cache keying, invalidation TTL, and offline reuse policy are unspecified. +10. **Failure semantics**: retry limits, partial-output policy, and exit codes are unspecified. +11. **Config surface**: precedence between config file vs CLI flags vs env vars is unspecified. +12. **Data/privacy posture**: whether paper text can be sent to external APIs is unspecified. + +## Clarifying questions (small batch 1) +Please answer this first batch before we draft batch 2. + +1. **LLM provider/model**: Should we lock to Claude Opus 4.7 only, or allow provider/model config with Opus 4.7 as default? +2. **TTS provider**: Which provider should be primary (and do you want an offline fallback)? +3. **Paywalled papers**: If full text is inaccessible, should output be: + - metadata+abstract-only summary/podcast, + - hard fail with actionable message, or + - user-prompted override? +4. **Output length target**: What is your default target for: + - summary note length, + - single-narrator runtime, + - two-host runtime? +5. **Config strategy**: Prefer primarily a `config.toml/yaml` file with optional CLI overrides, or CLI-first with minimal config file? + +## Technical risks / decisions to resolve early +- **Hallucination risk** in methods/novelty claims without citation-backed grounding. +- **Licensing/compliance risk** for TTS voice usage and redistribution of generated audio. +- **Access fragility** across DOI/PubMed/PDF sources and publisher rate limits. +- **Cost risk** from multi-stage LLM + TTS calls without strict token/audio budgeting. +- **Reproducibility risk** if model/provider output drift is not bounded by deterministic prompts/settings. +- **Latency risk** for long papers if no chunking + staged summarization strategy. +- **Quality risk** if script generation is not constrained by speaking-rate/pacing targets. + +## Draft execution plan (to finalize after Q&A) +- [ ] Confirm provider, model, and TTS decisions +- [ ] Finalize error-handling + paywall policy +- [ ] Finalize config schema and CLI precedence +- [ ] Finalize retrieval/grounding and novelty-analysis criteria +- [ ] Freeze architecture and module contracts +- [ ] Define acceptance criteria and test plan +- [ ] Begin implementation only after plan sign-off