Skip to content

docs: AGENTS.md belépő doksi és higiénia-javítások (hypo 2026-10-27) - #33

Merged
godavid merged 3 commits into
mainfrom
local/docs-hypo-2026-10-27
Oct 31, 2026
Merged

godavid merged 3 commits into
mainfrom
local/docs-hypo-2026-10-27

Conversation

@godavid

@godavid godavid commented Oct 27, 2026 •

Copy link
Copy Markdown
Owner

A 2026-10-27-i tulajdonosi /hypo fix kör: belépő doksi az agenteknek, a kódhoz igazított üzemeltetési, termék- és dizájndoksi, pontos agent-sablonok. Kód csak kommentben és agentnek szóló szövegben változott.

  • Belépő doksi (új): AGENTS.md (+154) és a rá mutató CLAUDE.md symlink: olvasási sorrend, landolás és deploy a ruleset és a release-production.yml szerint, rangsorolt „Ne tedd” lista, parancsok, invariánsok és őreik, kódterületek és importszabályok, nyelv, szótár.
  • Doksi-frissesség: docs/uzemeltetes.md (+/-211: SQL 01–05 sorrendje, anon timeout, backfill-előfeltételek, delta-őrök, cache-idők, valtozasok: a cursor (felveve_utan) egész napi kötegeket dob el — 171/221 módosítás csendben elveszik #26 ismert korlát, DEPLOY_HOLD), PRODUCT.md (+/-24: a deploy csak a release-production.yml-ből megy), DESIGN.md (+/-32), a 2026-08-07-i keresés-terv elé állapotjelzés (+8: kész, archivált, a deploy-lépései érvénytelenek).
  • Agentnek szóló szöveg: packages/pipeline/src/sablonok.ts AGENTS_MD (+/-9: az index pontos mezőnevei, valós horgony-példa, paragrafus paraméter), apps/web/app/llms.txt/route.ts (1 sor: index-mezőnevek), apps/web/lib/kereso.ts (csak komment: INVARIANT: a kiemelésről, STX/ETX, soha nem HTML).
  • Méret: 9 fájl, 380 beszúrás, 66 törlés. A nyitott tételek (CI-tesztkapu, XSS-teszt, deps-javítás a piros biztonsag miatt és a többi) a [hypo] 2026-10-27 tulajdonosi audit — nyitott tételek #32-ben.

Elfogadási feltételek (~/.claude/plans/accept-gitjog-local-docs-hypo-2026-10-27.md): a belépő doksik a kódnak megfelelnek, nincs bennük a rulesetet vagy a release-production.yml-t megkerülő utasítás; a kód melletti szöveg a valós mezőneveket, horgonyformát és kiemelés-invariánst írja; tiszta friss review a fejen.

Tesztterv:

  • Helyi next dev (dev-budget alatt): a GET /llms.txt 200, a 101. sor az új [{slug, documentId, megjeloles, cim, rovidites}] szöveg; a futás generált fájljai (apps/web/AGENTS.md, .next/, next-env.d.ts) utána visszaállítva.
  • A hypo-kör fókuszált bizonyítása: pnpm --filter @gitjog/pipeline exec tsc --noEmit pontosan a dokumentált 7 hiba, a szoveg tsc tiszta, az AGENTS_MD sablon hibátlanul renderel, horgonyId("6:272. § [Megbízási szerződés]") = 6-272-sz-megbizasi-szerzodes.
  • Figyelem: a kötelező biztonsag check a mainen 2026-10-26 óta piros (zod/undici advisory); ez a PR is bukni fog rajta, amíg a deps-javítás ([hypo] 2026-10-27 tulajdonosi audit — nyitott tételek #32 első tétele) be nem kerül.

Review-nitek (nem javítjuk automatikusan):

  • docs/uzemeltetes.md:197 és :400: <!-- INFERRED: verify --> jelölők. A :197-es szétcsúszás-őr bekezdés a delta.ts/health.ts szerint helyes (MAX_GYANUS_UJ=50, FRISS_NAPOK=30, az üzenetek szövege), az a jelölő törölhető. A :400-as notify pgrst, 'reload config' lépés az egyetlen, amely a repóból nem bizonyítható.
  • docs/uzemeltetes.md Ismert korlátok: a cursor-veszteség leírása („ha a lap határa egy azonos felveve köteg közepére esik”) a valtozasok: a cursor (felveve_utan) egész napi kötegeket dob el — 171/221 módosítás csendben elveszik #26-nak felel meg, a valtozasok.ts viszont csökkenő sorrendben a legújabb limit tételt vágja le, és a cursort a maximumra lépteti: az első lapon túli minden tétel elvész, a régebbi teljes kötegek is. Az útmutatás („ne ajánld veszteségmentesnek”) mindkét esetben biztonságos.
  • DESIGN.md: a „nyomtatás … mindig a világos tokenek élnek” a globals.css kommentjét ismétli; az @media print blokk saját, sötétebb készletet állít (tinta 0.2, pecset 0.32, vonal 0.78, papír #fff). Jobb: „világos, nyomtatásra sötétített tokenek”.
  • AGENTS.md Parancsok, keresőindex-újraépítés: a parancsból hiányzik a NYILT_ADAT_REPO_DIR, amely a docs/uzemeltetes.md-ben szerepel; nélküle az újraépítés csendben a <repo>/data/repo-t olvassa.
  • docs/uzemeltetes.md config.ts pont: „backfill nélkül a delta szétcsúszás-őre leállítja a napi futást” csak 50-nél több gyanús állapotnál igaz (MAX_GYANUS_UJ); egy kis új jogszabály átmehet.
  • Az llms.txt route és a sablonok.ts AGENTS_MD módosítása string-literál doksi-tartalom, nem logika; mindkettő egyezik az IndexTetel mezőneveivel és a horgonyId() kimenetével (6-272-sz-megbizasi-szerzodes, kézzel ellenőrizve); teszt nem snapshotolja őket.

Nyitott tételek: #32.

  • model: claude-opus-5.5
    effort: high
    round: 1
    sha: de5c93d
    verdict: important-open
    context: fresh
    findings: unknown (az Important leleteket a 71b07c8 javította az első push előtt)
    cost: unknown
  • model: claude-opus-5.5
    effort: high
    round: 1
    sha: 71b07c8
    verdict: clean
    context: fresh
    findings: important 0, nit 6, pre-existing 3
    cost: unknown
  • model: claude-opus-5.5
    effort: high
    round: 1
    sha: fe3e32a
    verdict: clean
    context: fresh
    findings: important 0, nit 1, pre-existing 0
    cost: unknown
    duration: 1m0s

🤖 Generated with Claude Code

godavid and others added 2 commits October 27, 2026 14:24
Az agentes fejlesztés védelme: belépési pont, friss üzemeltetési leírás,
pontos agent-sablonok.

- AGENTS.md (új, a CLAUDE.md erre mutató symlink): olvasási sorrend,
  landolás és deploy a ruleset és a release-production.yml szerint,
  rangsorolt „Ne tedd” lista, parancsok (a pipeline tsc 7 ismert
  hibájával), invariánsok és őreik, kódterületek és importszabályok,
  nyelv, szótár, ütközési szabály.
- docs/uzemeltetes.md: a 01–05 SQL sorrendje és superuseres alkalmazása,
  az anon statement_timeout, indexépítés és backfill előfeltételei,
  karbantartó eszközök, szétcsúszás- és hálózati őr a riasztás-receptben,
  csomagonkénti tesztek (a golden hashek kihagyásával), REST cache-idők,
  felvételi napló visszaesése, #26 ismert korlát, horgony-invariáns
  új helye, gitleaks-allowlist, DEPLOY_HOLD gh-parancsokkal, a régi
  aldomain DNS-állapota és a 2026-09-23-i döntés.
- PRODUCT.md: a deploy csak a release-production.yml-ből megy (a merge
  élesít, helyi prod deploy tilos); revalidate-webhook; packages/szoveg;
  REST és MCP a gépi felületek között.
- DESIGN.md: jogszabály-lista, diff-nézet, sötét és nyomtatási tokenek,
  a megosztókártyák hex-másolatai, köztes betűméretek a kód szerint.
- sablonok.ts AGENTS_MD és llms.txt: az index pontos mezőnevei; a nem
  létező horgony-példa helyett valós Ptk.-példa és a paragrafus-paraméter.
- kereso.ts: a hibás „<mark>” komment helyett INVARIANT-komment
  (STX/ETX, soha nem HTML).
- A 2026-08-07-i keresés-terv elé állapotjelzés: kész, archivált,
  a deploy- és push-lépései érvénytelenek.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Ne tedd 9: a kapu szövege a kódhoz igazítva (a delta csak új
  időállapotot felvevő futáskor írja vissza az adat-repo AGENTS.md-jét),
  egyezik a docs/uzemeltetes.md-vel.
- Invariánsok: a health.test.ts a terjedelem-őrt, a szétcsúszás-őrt és a
  parser-őrfeltételeket is lefedi; a delta commit-elhagyó ága teszteletlen.

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

godavid commented Oct 27, 2026

Copy link
Copy Markdown
Owner Author

Review — claude-opus-5.5@high, round 1, friss kontextus (subagent; bemenet: a diff és a repó review-szabályai)
Tartomány: origin/main...71b07c8 (teljes diff; az első push előtt egy javítás + újraellenőrzés, a kör számát nem növeli)

Important: nincs.

Nit: docs/uzemeltetes.md:197 és :400: <!-- INFERRED: verify --> jelölők. A :197-es szétcsúszás-őr bekezdés a delta.ts/health.ts szerint helyes (MAX_GYANUS_UJ=50, FRISS_NAPOK=30, az üzenetek szövege), az a jelölő törölhető; a :400-as notify pgrst, 'reload config' lépés az egyetlen, amely a repóból nem bizonyítható.
docs/uzemeltetes.md:197

Nit: a cursor-veszteség leírása az Ismert korlátok között a #26-nak felel meg, a valtozasok.ts viszont csökkenő sorrendben a legújabb limit tételt vágja le és a cursort a maximumra lépteti: az első lapon túli minden tétel elvész, a régebbi teljes kötegek is. Az útmutatás („ne ajánld veszteségmentesnek”) mindkét esetben biztonságos.
docs/uzemeltetes.md (Ismert korlátok)

Nit: a „nyomtatás … mindig a világos tokenek élnek” a globals.css kommentjét ismétli; az @media print blokk saját, sötétebb készletet állít (tinta 0.2, pecset 0.32, vonal 0.78, papír #fff). Jobb: „világos, nyomtatásra sötétített tokenek”.
DESIGN.md

Nit: a keresőindex-újraépítés parancsából hiányzik a NYILT_ADAT_REPO_DIR, amely a docs/uzemeltetes.md-ben szerepel; nélküle az újraépítés csendben a <repo>/data/repo-t olvassa.
AGENTS.md (Parancsok)

Nit: „backfill nélkül a delta szétcsúszás-őre leállítja a napi futást” csak 50-nél több gyanús állapotnál igaz (MAX_GYANUS_UJ); egy kis új jogszabály átmehet.
docs/uzemeltetes.md (config.ts pont)

Nit: az llms.txt route és a sablonok.ts AGENTS_MD módosítása string-literál doksi-tartalom, nem logika; mindkettő egyezik az IndexTetel mezőneveivel és a horgonyId() kimenetével (6-272-sz-megbizasi-szerzodes, kézzel ellenőrizve); teszt nem snapshotolja őket.
apps/web/app/llms.txt/route.ts:90

Pre-existing: a kódkomment szerint „A delta minden futáskor kiírja” (AGENTS_MD); a delta.ts csak új időállapotot felvevő futáskor írja. Ugyanaz az elavulás, amelyet a diff a docs/uzemeltetes.md-ben javított. → #32
packages/pipeline/src/sablonok.ts:85

Pre-existing: a komment szerint a KOTEG_MERET „feldolgozott jogszabályonként” számol, a :224-es ellenőrzés commitokat számol (commitSzamlalo - utolsoPushnal >= 500). Az új doksi helyesen „500 commitonként”. → #32
packages/pipeline/src/backfill.ts:42

Pre-existing: a fejléc relatív test/szakaszok.test.ts hivatkozása a csomagon belül helyes, de a horgony-teszt csomaghatáron át az apps/web/lib/md.ts-t is importálja (az új AGENTS.md kivételként dokumentálja). → #32
packages/szoveg/src/szakaszok.ts:1

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

@godavid

godavid commented Oct 27, 2026

Copy link
Copy Markdown
Owner Author

owner-ok — landolási engedély: a tulajdonos 2026-10-27-i kérése (owner lane, /hypo fix minden repón):

subagent -ek menjenek végig a repo -kon és futassák a teljes hypo audit és fix -et az összes repo -n. te csak felügyeled. légy alapos és mély. a cél az agentic fejlesztés védelme.

A kérés a munka saját követő lépéseit is fedi (CI- és review-javítás, rebase, ütközés).

@godavid

godavid commented Oct 27, 2026

Copy link
Copy Markdown
Owner Author

A riport a de5c93d állapotot írja le (a „nincs pusholva” akkori állapot). A PR feje 71b07c8: a review két javítása az AGENTS.md-ben. A nyitott tételek: #32.

Codebase Hygiene Report — gitjog — 2026-10-27

Repó: godavid/gitjog (publikus pnpm monorepo). Mód: /hypo fix (owner lane, a 2026-10-27-i, minden repóra kiterjedő futás). Alap: main @ 8b5588f. Worktree: /Users/noname/code/.worktrees/gitjog/claude/hypo-2026-10-27, ág local/docs-hypo-2026-10-27. Egy commit az alapon: de5c93d („docs: hypo higiénia-kör (2026-10-27)”), nincs pusholva. A riport nyelve magyar (a repó nyelve).

A fő kockázat a kör előtt: a repóban nem volt belépő doksi (nincs követett AGENTS.md, CLAUDE.md vagy README.md). A PRODUCT.md azt írta, hogy a prod deploy CLI-ből indul (2026-10-06 óta tilos), a 2026-08-07-i terv helyi vercel deployt és main-re pusht írt elő. Az adat-repó agent-sablonja nem létező horgonyt adott példának. A futásidejű SQL-sorrend (a 05 felülírja a 02-t és a 04-et) sehol nem volt leírva.

# Check Előtte Utána Nyitott tételek (előtte → utána)
1 Decision Traceability ⚠️ ⚠️ 3 → 2
2 Invariant Coverage ⚠️ ⚠️ 7 → 6
3 Anti-Pattern Registry ❌ ✅ 1 → 0
4 Module Boundaries ❌ ✅ 2 → 1 (gépi függőség-kapu hiányzik, csak javaslat)
5 Doc Freshness ❌ ⚠️ 34 → 12
6 Schema Docs ⚠️ ⚠️ 3 → 2
7 Context Entry Points ❌ ✅ 4 → 0
8 Session Continuity ⚠️ ⚠️ 5 → 3

Overall: előtte 0/8 passing · 4 warnings · 4 failures; utána 3/8 passing · 5 warnings · 0 failures

Mechanikai réteg (hypo-audit.sh): előtte 1 ❌ / 3 ⚠️ (nincs gyökér AGENTS.md/CLAUDE.md; a PRODUCT.md 10 commit / 40 nap lemaradás; a DESIGN.md és a PRODUCT.md egy belépő doksiból sem érhető el). Utána, a de5c93d commiton: 0 ❌ / 0 ⚠️. Dead ref nincs, minden doksifa elérhető, INVARIANT: jelölő 0 → 1 fájl, belépő-doksi invariáns-említés 0 → 3. Az integrálás közben a commit után két új dead ref jött elő (apps/web/AGENTS.md, apps/web/CLAUDE.md – gitignore-olt, a next dev írja): a mondatot átírtam, a commit ezzel együtt készült. A változott doksik relatív linkjei mind feloldódnak (0 törött).

A repó saját doksi-kapuja: nincs (check:* script, hygiene workflow, scripts/ci nincs). Fókuszált bizonyítás dev-budget alatt: pnpm --filter @gitjog/pipeline exec tsc --noEmit → pontosan 7 hiba (6× TS2835 a packages/szoveg/src/index.ts-ben, 1× TS7006 a src/kereso-index.ts-ben), ahogy az AGENTS.md leírja; pnpm --filter @gitjog/szoveg exec tsc → tiszta. Az AGENTS_MD sablon node type-strippinggel betöltve hibátlanul renderel. A horgonyId("6:272. § [Megbízási szerződés]") = 6-272-sz-megbizasi-szerzodes (a sablon új példája).

Agent readability (measured)

  • Always-on belépő kontextus: ~3,1k token 1 fájlban (AGENTS.md; a CLAUDE.md symlink), keret 8k; router-tábla 0. Előtte: 0 token (nem volt belépő doksi).
  • Lépés-2 doksik: nincs külön anti-pattern- vagy invariáns-fájl, mindkettő az AGENTS.md-ben él (benne a 3,1k-ban). Sémadoksi: nincs külön; a docs/uzemeltetes.md Keresés / Agent-felület szakaszai írják le (a teljes runbook 24,5 KB → 34,1 KB, ~7k → ~9,7k token; lépés-3 olvasmány, nem always-on).
  • Fan-out a belépő doksiból: 6 doksi (hypo-audit), az olvasási sorrend 5 lépés.
  • Leszállítatlan kódot leíró kötelező doksi: nincs. A docs/superpowers/ rekordjai mind leszállított munkák; a 2026-08-07-i terv elején most állapotjelzés áll, a 2026-09-16-i terv és a két spec elején még nincs (lásd Manuális tételek).
  • A belépő doksiból elérhetetlen doksifa: nincs (előtte: PRODUCT.md, DESIGN.md, docs/uzemeltetes.md, docs/superpowers/).
  • Kihagyva (rekord / generált / keretrendszer / kód-tulajdonú felület): docs/superpowers/plans/2026-09-16-agent-felulet.md, docs/superpowers/specs/2026-08-06-teljes-szoveges-kereses-design.md, docs/superpowers/specs/2026-09-16-agent-felulet-design.md (törzsük érintetlen), packages/pipeline/test/fixtures/mini-elvart.md, az IndexNow-kulcsfájl, server.json, apps/web/app/agenteknek/page.tsx, az openapi.json és az MCP route szövegei, apps/web/next-env.d.ts, pnpm-lock.yaml, data-static/torvenyek.json, packages/pipeline/adatrepo/napi-delta.yml (byte-azonos az élővel), a gitignore-olt apps/web/AGENTS.md és CLAUDE.md.

Top 5 Priority Fixes

  1. Belépő doksi (kész): gyökér AGENTS.md (+ CLAUDE.md symlink): olvasási sorrend, landolás és deploy a ruleset (23985520) és a release-production.yml szerint, rangsorolt „Ne tedd” lista, parancsok, invariánsok és őreik, kódterületek, nyelv, szótár, ütközési szabály.
  2. Deploy-utasítások (kész, részben): a PRODUCT.md hamis „CLI-ből deployolunk” mondata javítva; a 2026-08-07-i terv elé „KÉSZ, archivált, a deploy-lépések érvénytelenek” állapotjelzés. Nyitott: a docs/superpowers/plans/2026-09-16-agent-felulet.md L3-6/L53 még mindig helyi cd apps/web && vercel --prod --yes-t ír elő; ugyanilyen állapotjelzés kell elé (és a két spec elé).
  3. CI nem futtat tesztet és típusellenőrzést (javaslat): a determinizmus, a horgony, a delta-őrök és a dátumellenőrzés tesztjeit semmi nem kényszeríti ki; a pipeline tsc --noEmit a Agent-felület: REST API + MCP-szerver + felvételi napló #10 óta 7 hibával bukik. Új teszt workflow + kötelező check kell.
  4. SQL-futtatási sorrend és az anon timeout (doksi kész, kód nyitott): a runbook most leírja a 01→05 sorrendet és a superuseres alkalmazást; a 8 s-os anon statement_timeout viszont csak az élő DB-ben él, SQL-fájl nem rögzíti (javaslat: 06-anon-idokorlat.sql).
  5. A biztonsági scan piros a mainen (nem hypo-hatókör, de a landolást blokkolja): a 2026-10-26-i ütemezett Biztonság futás (run 40305913308) pnpm audit high: zod <4.6.6 (GHSA-mrhx-c7xc-m3w5), undici 7.18.0–7.30.1 (GHSA-xjj6-f33q-929c). A kötelező biztonsag check minden új PR-en bukni fog, a doksi-PR-en is, amíg az overrides be nem kerül a pnpm-workspace.yaml-ba.

Details

1 — Decision Traceability ⚠️ → ⚠️. Nincs ADR-könyvtár, -eszköz vagy -sablon. A döntések dátumozott szakaszokban élnek (docs/uzemeltetes.md, PRODUCT.md) és a docs/superpowers/specs-ben. Javítva: a döntések most egy ugrásra elérhetők (AGENTS.md → docs/uzemeltetes.md); a runbookba bekerült két addig csak privát memóriában élő döntés (a régi aldomain DNS-e 2026-09-23 óta szándékosan nincs helyreállítva; a Firewall rate-limit log módban). Nyitott: a fő függőségek (Supabase, Vercel, mcp-handler, pnpm fő verzió) választásának indoka szétszórt; döntési mechanizmust ez a kör nem vezetett be (owner-döntés).

2 — Invariant Coverage ⚠️ → ⚠️. Javítva: invariáns-tábla az AGENTS.md-ben pontos helyekkel és őrökkel (mindegyik sor a kódhoz ellenőrizve); apps/web/lib/kereso.ts hibás „<mark> jelöléssel kiemelve” kommentje helyett INVARIANT: komment (STX/ETX, soha nem HTML); a horgony-invariáns hivatkozásai a packages/szoveg-re mutatnak. Nyitott: semmilyen teszt nem fut CI-ben; az XSS-invariánsnak (apps/web/lib/md.ts) nincs tesztje; a kiemelés-invariánsnak nincs gépi őre; a napi-delta.yml két példányának azonossága kézi; a 8 s-os anon timeout nincs SQL-ben; a KIEMELT_SLUGOK ↔ JOGSZABALYOK szinkronját teszt nem őrzi.

3 — Anti-Pattern Registry ❌ → ✅. Új „Ne tedd (a legdrágább elöl)” szakasz az AGENTS.md-ben: 10 sor mi / miért / helyette formában, költség szerint rangsorolva, a gépi kapuval őrzöttek [kapu] jelöléssel (main-push: ruleset; adat-repó AGENTS.md: a delta visszaírja).

4 — Module Boundaries ❌ → ✅. Új „Kódterületek és importszabályok” tábla az AGENTS.md-ben (az egyetlen hiteles hely): packages/szoveg/src, packages/pipeline/src, packages/pipeline/supabase, packages/pipeline/adatrepo, apps/web – cél, importálhat, nem importálhat, import-stílus, kivételek. Import-szkennel ellenőrizve (pipeline: minden relatív import .js; szoveg: csak diff; a web nem importál pipeline-t). Az integráláskor pontosítottam: a pipeline listájába a domhandler (csak típus), a webébe az @vercel/analytics és a szerveroldali node:* került. Nyitott (javaslat): gépi függőség-kapu.

5 — Doc Freshness ❌ → ⚠️. Javítva (a fixerek 37 tétele, ebből 26 ellenőrizve a kóddal, lásd lent): PRODUCT.md deploy-, ritmus-, monorepo- és gépifelület-sorai; DESIGN.md lista-, diff-, sötét-, nyomtatási és tipográfiai sorai; docs/uzemeltetes.md pipeline-modullista (a törölt packages/pipeline/src/szakaszok.ts helyett packages/szoveg), backfill-előfeltételek, --folytat mellékhatásai, parse-próba könyvtára, terjedelem-anomália kézi futása, tesztparancsok, REST cache-idők, strukturált adat, felvételi napló visszaesése, gitleaks-allowlist, régi aldomain; sablonok.ts AGENTS_MD (index-mezőnevek, valós horgony-példa, paragrafus paraméter); llms.txt index-mezőnevek. Az integráláskor javítva: a runbook füstteszt-URL-je (földek forgalm → földek+forgalm, nyers szóközzel a curl elutasítja). Nyitott (12): lásd a Manuális tételeket (sablon-README reflog-recept, „egy commit = egy időállapot” megfogalmazás, llms.txt nyers szóköz és diff-dátumok, csatornak.ts „egyetlen forrás” komment, „4+ MB”, semak.ts nem létező horgony-példa, keresőoldali <Link> horgonnyal, PRODUCT.md átirányítás-vállalás, hiányzó LICENSE, két terv és két spec állapotjelzése).

6 — Schema Docs ⚠️ → ⚠️. Javítva: a runbook mind az öt SQL-szkriptet felsorolja, a 05-öt az élő kereses()/kereses_api()-ként jelöli, leírja a sorrendet, a superuseres alkalmazást, a 03 jelszóparaméterét és az index újraépítését. Nyitott: nincs táblaszintű sémadoksi (a jogszabaly és a szakasz oszlopai, kapcsolata csak az SQL-ben); az anon timeout nincs SQL-ben.

7 — Context Entry Points ❌ → ✅. Egy tulajdonos (AGENTS.md, symlinkelt CLAUDE.md), 5 lépéses olvasási sorrend, ütközési szabály, szótár (kód-repó vs adat-repó, a megtartott régi azonosítók, időállapot / felvételi napló / njt-verziószám, kiemelt, réteg, delta / backfill), ~3,1k token, minden hivatkozott fájl létezik. Státuszsor-konvenció nincs a repóban (nem hiba).

8 — Session Continuity ⚠️ → ⚠️. Javítva: minden doksifa elérhető; a privát memóriában élő üzemeltetési csapdák bekerültek a runbookba (letiltott napi-delta workflow, Firewall rate-limit, a régi aldomain döntése, a „hiányzó §” hibakeresése). Nyitott: nincs git tag; nincs olyan lépés, amely a runbookot a viselkedésváltozással együtt frissítteti (a #21 és a #30 doksi nélkül ment be); a b83f853 (#31) commit-üzenete angol.

Ellenőrzött javítások (26, a belépő doksival kezdve): ruleset (csak PR, squash, biztonsag + CodeQL, admin bypass) a gh api szerint; a release-production.yml path-szűrője; a delta cronja (03:30 UTC); a csomagnevek és scriptek; a pipeline tsc 7 hibája és a szoveg tsc tisztasága (lefuttatva); az invariáns-tábla őrei (DiffNezet szerver-komponens, keresoIndexSzinkron, CACHE_VERZIO, a health.test.ts csak a terjedelem-őrt fedi); az importszabályok (szken); NYILT_CSAK, réteg-értékek; a 4 golden hash describe.skipIf; a CLAUDE.md symlink; a 05 felülírja a kereses-t és a kereses_api-t, a 03 szinkron_jelszo változója, chr(2)/chr(3) minden kiemelésben, statement_timeout csak kommentben; kereso-feltoltes --slugok és olvasott fájlok, alapértelmezett data/repo; backfill kilépése létező könyvtárnál, checkout/clean, 500-as köteg; MAX_GYANUS_UJ=50, FRISS_NAPOK=30, MAX_HALOZATI_HIBA=20 és az üzenetek szövege; cache-idők és stale-while-revalidate=86400; a legislationDate hiánya; a valtozasok visszaesési ága; az adat-repó AGENTS.md csak új állapotnál íródik; paragrafusKivag és ROVIDITES_ALIAS; .gitleaks.toml nincs és a gitleaks --config nélkül fut; index-ujraepites commitol, nem pushol; DEPLOY_HOLD a workflow-ban; DESIGN.md osztályok, KONTEXTUS = 3, összecsukó sor, hex-másolatok a 3 OG-fájlban és az icon.svg-ben, sötét és nyomtatási tokenek; 6 órás ISR; a sablon index-kulcsai a commit.ts szerint; a terv-állapotjelzés commitjai léteznek, a terv törzse érintetlen.

Védőkorlátok: a PRODUCT.md impeccable-jelölője és ## címei, a DESIGN.md és a runbook címei változatlanok; a régi márkanév szava egy hozzáadott sorban sincs; generált vagy keretrendszer-blokkhoz nem nyúltunk; kód csak kommentben és agentnek szóló szövegben változott (kereso.ts, sablonok.ts AGENTS_MD, llms.txt route szövege). A nyelvi szabály miatt a kereso.ts kommentjében a „See” „Lásd:”-ra javítva. Visszaállítás nem kellett: minden változott fájlnak volt fixer-tulajdonosa, részleges szerkesztés nem maradt.

Recommended Actions

Kész (commit de5c93d, nincs pusholva):

  1. AGENTS.md (új) + CLAUDE.md symlink.
  2. docs/uzemeltetes.md: 19 javítás + a füstteszt-URL.
  3. PRODUCT.md: deploy, ritmus, monorepo, gépi felületek, link.
  4. DESIGN.md: 6 javítás.
  5. packages/pipeline/src/sablonok.ts AGENTS_MD: index-kulcsok, horgony-példa, paragrafus.
  6. apps/web/app/llms.txt/route.ts: index-kulcsok.
  7. apps/web/lib/kereso.ts: INVARIANT: komment.
  8. docs/superpowers/plans/2026-08-07-teljes-szoveges-kereses.md: állapotjelzés.

Landoláshoz: a változás érinti az apps/web/**-t, tehát a merge a release-production.yml-en át élesít (csak komment- és llms.txt-szövegváltozás). A biztonsag check a zod/undici advisory miatt most piros lesz; előbb egy külön deps-PR kell (overrides a pnpm-workspace.yaml-ban). Az auto-merge ki van kapcsolva (allow_auto_merge=false): zöld után kézi squash-merge.

Manuális tételek (owner vagy külön PR):

  1. docs/superpowers/plans/2026-09-16-agent-felulet.md, specs/2026-08-06-…, specs/2026-09-16-… — a cím után ugyanilyen állapotjelzés, a törzs érintetlen: „KÉSZ, archivált rekord, nem utasítás; leszállítva (Agent-felület: REST API + MCP-szerver + felvételi napló #10, Agent-felület és értesítés a weboldalon #17 / 2026-08-07); deploy csak a release-production.yml-ből, csak squash PR; link ../../uzemeltetes.md”. A 2026-09-16-i terv L3-6/L53 helyi vercel --prod-ot ír elő.
  2. .github/workflows/teszt.yml (új; a Bump actions/setup-node from 7.0.0 to 7.1.0 in the actions group across 1 directory #24 miatt ne a biztonsag.yml-ben) — pull_request + push: main, contents: read, SHA-pinelt checkout (persist-credentials: false), pnpm/action-setup (12), setup-node (24), pnpm install --frozen-lockfile, pnpm -r test, pnpm --filter @gitjog/pipeline exec tsc --noEmit, pnpm --filter @gitjog/szoveg exec tsc; utána a teszt legyen kötelező check a ruleset 23985520-ban. Ehhez előbb: .js kiterjesztés a packages/szoveg/src relatív importjaiba (index.ts, hivatkozas.ts, szakasz-diff.ts), ez megszünteti a 7 tsc-hibát. Utána az AGENTS.md-ből törölni a 7-hibás megjegyzést és a „zöld PR csak a biztonsági ellenőrzéseket bizonyítja” sort, a runbook 4. lépéséből a „CI ma EGYETLEN tesztet sem futtat” részt.
  3. apps/web/lib/md.ts XSS-teszt — új packages/szoveg/test/md-xss.test.ts (a szoveg vitestje már importálja az mdRender-t): ellenséges markdownból (<script>, <img onerror>, <svg onload>, <b>) nem lehet tag, és minden id illeszkedjen a /^[a-z0-9-]+$/-re; a komment elejére INVARIANT:; az AGENTS.md invariáns-sora erre a tesztre mutasson.
  4. Kiemelés-invariáns gépi őre — CI-grep: bukjon, ha egy packages/pipeline/supabase/*.sql StartSel=</StopSel=< mintát tartalmaz, vagy az apps/web/app/kereses dangerouslySetInnerHTML-t használ; vagy vitest a kiemelve("a\u0002<script>x</script>\u0003b") escape-elt kimenetére.
  5. napi-delta.yml byte-azonosság — heti ütemezett lépés: curl -sSfL https://raw.githubusercontent.com/godavid/magyar-jog/main/.github/workflows/napi-delta.yml | diff -u packages/pipeline/adatrepo/napi-delta.yml -; utána az AGENTS.md „Ne tedd” 3. sora és az invariáns-sor [kapu].
  6. packages/pipeline/supabase/06-anon-idokorlat.sql (új, idempotens) — alter role anon set statement_timeout = '8s'; notify pgrst, 'reload config';; az owner erősítse meg, hogyan állt be az élő érték, utána a runbook <!-- INFERRED: verify --> jelölője törölhető, a sor a 06-ra mutasson (01→06).
  7. docs/uzemeltetes.md két <!-- INFERRED: verify --> jelölője — az owner erősítse meg a szétcsúszás-őr teendőjét (backfill --folytat / index-ellenorzes) és a timeout-parancsot; a Vercel dashboardon ellenőrizze a Firewall-szabály módját (2026-09-25: log).
  8. KIEMELT_SLUGOK ↔ JOGSZABALYOK — vitest a packages/pipeline/test-ben: minden JOGSZABALYOK tételre KIEMELT_SLUGOK[documentId] === slug, a kulcshalmazok egyezzenek (vagy a KIEMELT_SLUGOK a JOGSZABALYOK-ból származzon); utána a runbookból a „(ezt teszt nem őrzi)” törölhető.
  9. apps/web/lib/api/valtozasok.ts cursor (valtozasok: a cursor (felveve_utan) egész napi kötegeket dob el — 171/221 módosítás csendben elveszik #26, nyitott) — keyset cursor (felveve, slug, datum) vagy a lap kiterjesztése a köteg végéig, teszt a limit-nél nagyobb, azonos időbélyegű köteggel; utána az „Ismert korlátok” tétele és a „(ma nem veszteségmentes …)” megjegyzés törölhető.
  10. apps/web/lib/api/semak.ts L13 — a nem létező 18-sz-elovasarlasi-jog helyett: „A § horgonya, pl. „6-272-sz-megbizasi-szerzodes” (Ptk.; a kereses vagy a tartalomjegyzék adja).” (MCP- és OpenAPI-szöveg, élőben ellenőrizve).
  11. PRODUCT.md L87-88 (és a runbook átnevezés-szakasza) — owner-döntés: (a) a vállalás marad → a jogtar.remenyfarm.hu DNS-rekord vissza a Vercelre és a domain a gitjog projekthez; (b) elengedve → a sor: „A régi aldomain DNS-rekordja megszűnt (2026-10-27: NXDOMAIN), ezért az átirányítás nem él; a next.config.ts host-redirectje csak a rekord visszaállításával működne.” A runbook már leírja a 2026-09-23-i döntést, a PRODUCT.md még a vállalást.
  12. Gyökér LICENSE — owner-döntés (jogosult neve): a szabványos MIT-szöveg; a PRODUCT.md L99 és a package.json-ok "license": "MIT" ezzel válik felismerhetővé (a GitHub most null-t mutat).
  13. apps/web/app/kereses/page.tsx L107-109 — a horgonyos <Link> helyett sima <a> (a :target kliens-navigáció után nem frissül), az L2 next/link import törlése; webes változás, deployol.
  14. sablonok.ts L99-100 és llms.txt route L31-32 (és a README_MD L8) — „egy commit = egy hatálybalépési nap, az aznap változó összes törvénnyel; mindig adj meg útvonalat (-- jogszabalyok/<slug>/szoveg.md)”.
  15. sablonok.ts README_MD L20-21 — a main@{dátum} reflog-recept friss klónban üres diffet ad; helyette allapotok.json-ból jq-val kiválasztott SHA-k (a pontos szöveg a review-leletben). Ugyanez kézzel a godavid/magyar-jog/README.md-be (külön repó).
  16. sablonok.ts L1 fejléc — owner-választás: (a) a README_MD/LICENSE_TXT szinkronja az élő fájlokból + LICENSE_HU_MD sablon, vagy (b) a fejléc mondja ki, hogy ezeket csak a friss backfill írja, az élő README és LICENSE 2026-08-10 óta kézzel szerkesztett; az AGENTS_MD a kivétel.
  17. llms.txt route L63/L69 és apps/web/lib/csatornak.ts L49 — földek forgalm → földek+forgalm (nyers szóközzel a curl elutasítja).
  18. llms.txt route L38 — „{tol} és {ig} két létező időállapot napja (az idővonal vagy az allapotok.json adja), {tol} a korábbi; más dátumra 404”.
  19. apps/web/lib/csatornak.ts L1-3 — vagy az llms.txt route is innen importálja a REST_PELDAK, FRISSITES_UTAN, OPENAPI_URL, RSS_URL, torvenyRss értékeket, vagy a komment mondja ki, hogy az llms.txt ezeket kézzel ismétli.
  20. sablonok.ts L96 és llms.txt route L91 — „4+ MB” → „3+ MB” (élő méret 3 365 848 bájt).
  21. Megosztókártyák és favicon hex-színei — teszt, amely a globals.css világos :root OKLCH-értékeit sRGB hexre váltja és összeveti a 3 opengraph-image.tsx konstansaival és az icon.svg kitöltéseivel; vagy közös modulból exportált hex-értékek.
  22. Függőség-kapu — CI-lépések a teszt-workflow-ban: a web és a szoveg ne importáljon pipeline-t; a szoveg ne importáljon next, react, @supabase/, node:fs, node:child_process, postgres, cheerio csomagot; a packages/*/src ne importáljon apps/-t; NEXT_PUBLIC_SUPABASE ne legyen az apps-ban.
  23. Márka- és nyelvi őr — CI: ! git grep -n -i '<régi márkaszó>' -- . ':!pnpm-lock.yaml' ':!PRODUCT.md' ':!docs/uzemeltetes.md' ':!apps/web/next.config.ts', és ugyanez a PR-címre (PR_TITLE env-ből, nem ${{ }}-ből).
  24. pnpm fő verzió — owner-döntés: "packageManager": "pnpm@<pontos verzió>" a gyökér package.json-ba; a napi-delta.yml mindkét példánya ugyanarra a fő verzióra (most 11, a többi workflow 12), egy körben, byte-azonosan; egy sor a runbookba.
  25. Runbook-szinkron — .github/pull_request_template.md egy sorral: „Ha üzemeltetési viselkedés (delta-őr, cache-idő, deploy, titok, SQL) változott, a docs/uzemeltetes.md ugyanebben a PR-ben frissült.”
  26. Deps-javítás a piros biztonsag miatt — overrides a pnpm-workspace.yaml-ban: zod ≥ 4.6.6, undici ≥ 7.30.1; ez a hypo-PR landolásának előfeltétele. Két Dependabot @vitest/mocker frissítés is elbukott.

…it miatt

A kötelező biztonsag check a mainen 2026-10-26 óta piros (GHSA-mrhx-c7xc-m3w5 zod,
GHSA-xjj6-f33q-929c undici, mindkettő high); a docs-PR ezen bukott. Lockfile: zod 4.6.7, undici 7.30.1.

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

godavid commented Oct 31, 2026

Copy link
Copy Markdown
Owner Author

Review claude-opus-5.5@high · round 1 · delta 71b07c8..fe3e32a (CI fix)

Delta review 71b07c8..fe3e32a (CI fix: pnpm-workspace.yaml overrides undici@>=7.0.0 <7.30.1 -> ^7.30.1 and zod@<4.6.6 -> ^4.6.6, regenerated pnpm-lock.yaml: zod 4.6.5 -> 4.6.7, undici 7.30.0 -> 7.30.1). Override syntax matches the existing entries; the lockfile has one resolution of each with integrity hashes and no dangling versions; the apps/web importer specifier rewrite is what pnpm writes for an override; zod usage (z.object, z.string, z.coerce, ...) is unaffected by a patch bump. The rest of the diff was reviewed clean at 71b07c8.

Nit: the direct zod range in apps/web/package.json:22 (^4.2.0) could carry the new floor; the override is still needed for the MCP SDK's transitive zod.

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

@godavid
godavid merged commit 083706b into main Oct 31, 2026
8 checks passed
@godavid

godavid commented Oct 31, 2026

Copy link
Copy Markdown
Owner Author

closeprs: deploy verified 083706b — Release Production run 41185160698 (Build -> Deploy -> Smoke) green; curl https://gitjog.remenyfarm.hu/llms.txt line 101 now reads ... — [{slug, documentId, megjeloles, cim, rovidites}] (the changed marker).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant