From 381ccdbae705b141282b1f7b344a8d5074c487ac Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Wed, 9 Sep 2026 09:14:40 +0200 Subject: docs: plan the contacts implementation Twelve tasks, TDD throughout, building bottom up: transport, bootstrap cache, server selection, jCard extraction, querying with the label walk, the worklist, resolution, the subcommand, an offline proof, two sweeps and the documentation. The code in the plan was assembled and run before committing it, against the plan's own tests, 44 of which pass. That found two defects in the plan itself: a parameter that shadowed the cache_dir function and forced a globals() lookup, now renamed to cache_root, and a hand-rolled fake request in the redirect test that lacked the attributes HTTPRedirectHandler reads, now a real urllib Request. Also drops the em dashes from the Documents list in AGENTS.md, which the no-em-dash writing rule covers and which the contacts entry had matched. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01Wrfqr2xqQfhtXCscU7zrdz --- AGENTS.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'AGENTS.md') diff --git a/AGENTS.md b/AGENTS.md index f4e40e1..8f37be8 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -279,15 +279,15 @@ umbrella design settles only what they share. ## Documents -- `docs/specs/2026-09-08-abusectl-design.md` — the umbrella design. Read it +- `docs/specs/2026-09-08-abusectl-design.md`, the umbrella design. Read it before changing anything about the case format, the redaction rule, or the ordering between MISP and the vendors. -- `docs/specs/2026-09-09-contacts.md` — the `contacts` spec. Read it before +- `docs/specs/2026-09-09-contacts.md`, the `contacts` spec. Read it before touching RDAP, the bootstrap cache, or anything that issues a query: it adds a FOURTH non-negotiable property, that a query carries a bare host or IP and never a URL. -- `docs/plans/2026-09-08-parse.md` — the plan `init` and `parse` were built +- `docs/plans/2026-09-08-parse.md`, the plan `init` and `parse` were built from. Historical once built, but it records why each test exists. -- `docs/BACKLOG.md` — open items, with the cause verified in the code rather +- `docs/BACKLOG.md`, open items, with the cause verified in the code rather than assumed. Read it before starting work; add to it rather than fixing something unasked. -- cgit v1.2.3