docs: codify review standards into docs/ guides and index them - #143
Conversation
Codify recurring maintainer review feedback into five docs/ guides (accuracy, accessibility, security, testing, code-and-process), make docs/README.md the complete index of all docs (existing + new), and point the root README at that index, so contributors meet the bar on the first pass.
lyubomir-bozhinov
left a comment
There was a problem hiding this comment.
Полезен PR! Проверих конкретните твърдения срещу реалния код и преобладаващо са точни: базата amount_eur IS NOT NULL за сумите, integrity gate-ът, vitest конфигурацията (environment:'node' + app/**/*.test.ts), rate-limit assert-ът, unit тестовете на helper-ите, имената на пакетите. Това е трудната част в такъв документ и е свършена добре.
Дребно (LOW): в review-accuracy.md „slug на възложител" — възложителите се map-ват по ЕИК (params.eik в authority.tsx), не по slug; примерите с ЕИК и graph-node са си верни.
|
Addressed the wording note in |
|
Прегледах петте docs (@ |
|
Проверих PR #143 изцяло — целия diff (259 добавени реда, 0 изтрити), описанието, всички коментари по ревюто и сверих ключовите твърдения срещу живия код. Обхват и естество на промянатаPR-ът е само документация: пет нови ръководства в Сигурност и data integrity (OWASP)
Сверка с кода (точност на твърденията)Понеже документ, който описва невярно поведение, сам по себе си е дефект, проверих каноничните примери на място — всички са коректни:
Бележката за ЕИК-vs-slug от @lyubomir-bozhinov е адресирана коректно в Дребни, незадължителни наблюдения (non-blocking)
ЗаключениеЧиста, добре структурирана и фактологически проверена документация. Нулев риск за сигурност или интегритет на данните; напълно OWASP-съвместимо по подразбиране (няма код за атакуване). Съответства на описанието и на приложимите ревю-стандарти. Благодаря за прегледната работа — това реално сваля товара от бъдещите ревюта. ВЕРДИКТ: APPROVE ✅ — само документация, проверена срещу кода, без забележки от сигурността или интегритета на данните (блокери няма). |
Какво и защо
Събира повтарящите се бележки от ревютата в пет кратки ръководства в
docs/, за да може новитеконтрибутори да покриват очакванията на първи опит, а ревюто да се повтаря по-малко. Само
документация — без промени по кода.
Новите файлове:
docs/review-accuracy.md— точност и коректност (блокер за merge): единна база за стойността(
amount_eur IS NOT NULL), непълни периоди + YoY, 404 за несъществуващи обекти.docs/review-accessibility.md— достъпност и UI:sr-only role="status"за авто-submit филтри(
flows.tsx), палитрени токени, графики/SVG fallback.docs/review-security.md— Cloudflare/кеш/сигурност: ключове за кеш (CWE-349), rate limiting,CSP, валидация, D1 индекси, AI асистент.
docs/review-testing.md— тестове и CI:pnpm typecheckvs vitest, регресионни тестове,pnpm audit, integrity gate.docs/review-code-and-process.md— структура на кода и PR процес: преизползване, SQL в@sigma/db, координация на merge.Индексът
docs/README.mdстава пълен (съществуващи + нови), а коренниятREADME.mdсочи към него.Свързан issue
Няма — само документация. Радвам се да отворя issue, ако предпочитате да се проследи.
Вид промяна
docs— документацияКак е тествано
pnpm lint(prettier --check) — чисто за всички нови и променени файлове.typecheck/testне са приложими.Чеклист
Co-Authored-By:trailermidt-bg/sigma:mainpnpm typecheckминава (неприложимо — без код; не е счупено)pnpm test(поне за засегнатите пакети) минава (неприложимо — без код)pnpm lintе чисто.env*или.dev.varsdocs/е обновена (това е целта на PR-а)