first pass at the newspaper builder
Test / test (push) Has been cancelled

This commit is contained in:
2026-09-14 11:57:22 +10:00
commit bec1eaac87
497 changed files with 178953 additions and 0 deletions
@@ -0,0 +1,48 @@
# Evidence
## Project Type
Greenfield. No prior workspace content; the repo is a freshly initialized git
repo with no commits.
## Sources Scanned
- `aidlc/spaces/default/memory/org.md` — framework defaults for the five
practice areas (way of working, walking skeleton, testing posture,
deployment, code style).
- Initial project description: "wedding newspaper generator — author content as
markdown, render as a printable newspaper in pure HTML5+CSS, print to A4 from
the browser. Fully local, never deployed beyond localhost."
- Primary-source web research (whatwg fetch spec, MDN same-origin policy,
CORS handbook) on whether a `file://` page can read sibling local files.
- **Empirical browser test** (2026-09-13): real Chromium driven via node
+ playwright-core. Plain Chromium: `fetch('article.txt')` from a `file://`
page → blocked (`TypeError: Failed to fetch`, CORS from origin 'null');
native file picker → works. Chromium with `--allow-file-access-from-files`:
fetch works but requires a non-default, security-weakening launch flag.
## Participant Evidence
- Lead draft: team-practices.md, discovered-rules.md, evidence.md,
practices-discovery-timestamp.md.
- Support contributions (contributed into the artifacts):
- `contributions/aidlc-quality-agent.md` — test-after posture justified;
renders/print as the testable surfaces; keep A4 containment + markdown
fidelity as the acceptance checks.
- `contributions/aidlc-developer-agent.md` — content/presentation separation
(`content/` vs `templates/`), tolerant transform, plain-HTML file layout.
- `contributions/aidlc-devsecops-agent.md` — zero-dependency = zero
supply-chain risk; no-remote-URLs as a load-bearing security rule; the page
must work offline.
## Interview Decisions
- Q1 Way of working: `C` direct to main (solo local project).
- Q2 Walking skeleton: `B` no separate skeleton step.
- Q3 Testing posture: `C` unit tests for the markdown→HTML transform.
- Q4 Deployment/run: `X` resolved via research + confirmation — file-only
static Python generator emitting a self-contained `newspaper.html`, with an
in-page file-picker live-load path; no server, never beyond localhost.
- Q5 Code style: `C` no style rules, minimal and pragmatic.
- Q6 Content/presentation: `A` separate `content/` and `templates/`.
## Unresolved Uncertainty
- None blocking. The browser `file://` constraint is settled empirically: use
user-granted file access (picker/drag-drop), never `fetch()` of local files,
except under the non-default Chromium flag.