Skip to content

test(inbox): egységtesztek a listLetters és downloadNewLetters rétegre - #5

Merged
godavid merged 2 commits into
mainfrom
local/glm-tarhely-cli-inbox-download-tests
Oct 22, 2026
Merged

godavid merged 2 commits into
mainfrom
local/glm-tarhely-cli-inbox-download-tests

Conversation

@godavid

@godavid godavid commented Oct 21, 2026 •

Copy link
Copy Markdown
Owner

Generated by GLM-5.3 (opencode), not reviewed. Do not land without owner-ok.

Mit ad ez a PR

Csak egy új fájl: test/inbox.test.ts (11 teszt). A src/tarhely/inbox.ts eddig egyedüliként nem kapott tesztfájlt, pedig a README „Mit csinál, mit nem" és „Hibák és kilépési kódok" fejezeteinek fő ígéretei ebben a rétegben élnek. A src/-ben semmi nem változott.

Mit fed le

  • index.jsonl-alapú kihagyás: az indexben lévő levél nem „új"; második futás letöltése 0, a mappák és az index nem duplázódnak (listLetters + downloadNewLetters).
  • Részleges hiba: egy levél letöltésének HTTP 500-as válasza nem állítja meg a többit → a többi levél elment, result.failed/failures jelzi (ez a mező vezérli az 5-ös, partial kilépési kódot a src/commands/download.ts:57-ben), a bukott levél se mappát, sem indexbejegyzést nem kap, és a következő futáson újra letöltődik.
  • Mappanév: <receivedOn>_<eid>_<slug max 40> — a slug 40 karakternél csonkol; üres leírásnál a dokumentumtípus a fallback; hiányzó érkezési dátumnál „ismeretlen-datum".
  • Zip-kibontás: a zip csak --extract esetén kerül a kibontva/-ba (az eredeti zip mellé), nem-zip melléklet soha nem bontódik ki.
  • --since: a küszöbnap előtti levelek sem listában, sem letöltésben nem „újak".

Hogyan

A session és az API a test/api.test.ts és test/session.test.ts mintájára fake-elt: a lap evaluate-ja a portál-API útvonalai szerint válaszol (lista, részletek, letöltés, kvóta), egypostafiókos gyorsúton. Kimeneti mappa: fs.mkdtempSync. Csak szintetikus adat („Példa Kft.", „12345678", a meglévő tesztek NAV-példája).

Bizonyíték

  • dev-budget run --kind heavy -- pnpm vitest run test/inbox.test.ts → 11 passed
  • pnpm biome check test/inbox.test.ts → clean

A tesztek nem tártak fel src/-hibát, it.fails-ra nem volt szükség.

  • model: claude-opus-5.5
    effort: high
    round: 1
    sha: 5cf3f81
    verdict: clean
    context: fresh
    findings: important 0, nit 0, pre-existing 0
    cost: unknown
  • model: codex-gpt-6.1-sol
    effort: high
    round: 1
    sha: 5cf3f81
    verdict: clean
    context: fresh
    findings: important 0, nit 0, pre-existing 0
    cost: 21k tokens

…e (index.jsonl-kihagyás, részleges hiba és újrapróbálás, mappanév, zip-kibontás, --since)
@godavid godavid added the glm label Oct 21, 2026
A regex-csoportot és a letters[0]-t a repó mintája szerint őrzi
(?.[1] + undefined-vizsgálat, letters[0]?.), így a typecheck zöld.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@godavid

godavid commented Oct 22, 2026

Copy link
Copy Markdown
Owner Author

Review: claude-opus-5.5@high · round 1 · context: fresh
Tartomány: teljes diff, 24dac8ee40e2f0ea6aeef0f3594c09bd708fa36a...5cf3f810e384bcf5b02ecc8a5deade39b67d6c11 (main ← local/glm-tarhely-cli-inbox-download-tests)

Bemenetek: nincs REVIEW.md és nincs .claude/agents/*review*.md, ezért az AGENTS.md szabályai (origin/main 24dac8e): csak szintetikus fixture (Példa Kft., 12345678), csak *.gov.hu hálózat, a portálon csak olvasó végpontok.

A diff csak a test/inbox.test.ts fájlt adja hozzá. A reviewer soronként egyeztette a base src/tarhely/inbox.ts, api.ts, mailbox.ts, store/index.ts, extract.ts, errors.ts és src/commands/download.ts fájljaival: a 40 karakteres slug, az 5%-os kvóta (10/200), a „HTTP 500” szöveg, az egypostafiókos váltási út és az 5-ös (partial) kilépési kódra utaló megjegyzés mind egyezik a kóddal. Az új fájl a base egy másolatán futott: 11/11 teszt átmegy (vitest 5.0.1); a biome check a fájlon tiszta. A PR CI check jobja (lint, typecheck, test, build, gitleaks) sikeres a head SHA-n. A fixture-ök szintetikusak.

Findings: nincs.

verdict: clean
important 0, nit 0, pre-existing 0

@godavid godavid added risk:low reviewed:claude-opus-5.5@high review-round:1 [review] Review round 1 of max 3 owner-ok [license] The owner licensed this PR to land; set only by the owner lane labels Oct 22, 2026
@godavid

godavid commented Oct 22, 2026

Copy link
Copy Markdown
Owner Author

owner-ok — landolási engedély (a tulajdonos válasza a /decide-ban, 2026-10-22)

Kérdés: „Melyiket javítsam és landoljam?”

Válasz:

farmin#1033 Next.js RCE (Ajánlott), tarhely-cli#5 tesztek (Ajánlott)

@godavid

godavid commented Oct 22, 2026

Copy link
Copy Markdown
Owner Author

Codex review — codex-gpt-6.1-sol@high · round 1 · full diff 24dac8e...5cf3f81 · context: fresh (local Codex CLI, inputs: diff + AGENTS.md review rules; the repo has no REVIEW.md)

No findings.

verdict: clean
important 0, nit 0, pre-existing 0

@godavid godavid added the reviewed:codex-gpt-6.1-sol@high [review] Fresh review by codex-gpt-6.1-sol at high effort label Oct 22, 2026
@godavid
godavid merged commit 5ea1ce9 into main Oct 22, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

glm owner-ok [license] The owner licensed this PR to land; set only by the owner lane review-round:1 [review] Review round 1 of max 3 reviewed:claude-opus-5.5@high reviewed:codex-gpt-6.1-sol@high [review] Fresh review by codex-gpt-6.1-sol at high effort risk:low

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant