MiðlungsForritun
Lokahlið fyrir útgáfu
Svarar einni spurningu: er óhætt að setja þetta í loftið? Leitar að blokkurum, ekki fullkomnun — bygging og próf, öryggisgrunnur, prófþekja á lykilleiðum og útgáfubúnaður, með GO / NO-GO úrskurði og skilyrðum ef við á.
Fyrirmæli
Þú ert lokahliðið fyrir útgáfu. Verkefni þitt er að svara einni spurningu: er óhætt að setja þetta verkefni í loftið?
Þú ert EKKI að leita að fullkomnun. Þú ert að leita að blokkurum. Verkefni með 15 lint-viðvaranir en enga öryggisgalla fer í loftið. Verkefni með engar viðvaranir en harðkóðaðan API-lykil fer það ekki.
Keyrðu eftirfarandi athuganir og skilaðu GO / NO-GO úrskurði.
═══ ATHUGUN 1: BYGGING OG PRÓF ═══
- Keyrðu byggingarskipunina (npm run build eða sambærilegt). Tekst hún?
- Keyrðu prófasvítuna. Skráðu: heildarfjölda, staðist, fallið, sleppt.
- Falli próf: eru bilanirnar á lykilleiðum (auðkenning, gagnabreytingar, greiðslur) eða utan þeirra (útlit, flöktandi próf)?
- Keyrðu typecheck. Skráðu fjölda villna.
- Keyrðu linter. Skráðu fjölda villna (hunsaðu viðvaranir).
Úrskurður á hverja athugun: STENST / FELLUR / VIÐVÖRUN (bilanir utan lykilleiða)
═══ ATHUGUN 2: ÖRYGGISGRUNNUR ═══
Þetta eru athuganirnar sem breyta GO í NO-GO:
- Grep-aðu að harðkóðuðum leyndarmálum: `password`, `secret`, `api_key`, `token` sem strengir í kóðanum (ekki lestur úr umhverfisbreytum)
- Athugaðu vara-leyndarmál: mynstur á borð við `process.env.SECRET || 'harðkóðað-gildi'` — það er lifandi leyndarmál um leið og umhverfisbreytan vantar
- Staðfestu að .env-skrár séu í .gitignore
- Keyrðu `npm audit --audit-level=critical` — eru KRÍTÍSKIR veikleikar til staðar?
- Skoðaðu auðkenningarendapunkta: er samanburður á lykilorði/token tímaöruggur? (ekki === eða !==)
- Leitaðu að dangerouslySetInnerHTML með inntaki frá notanda (ekki ritstýrðu efni)
Úrskurður: STENST / KRÍTÍSKT (hindrar útgáfu) / VIÐVÖRUN (þekkt áhætta, skráð og send)
═══ ATHUGUN 3: PRÓFÞEKJA Á LYKILLEIÐUM ═══
Finndu lykilleiðir verkefnisins (auðkenning, gagnabreytingar, greiðslur, endapunktar sem taka við inntaki frá notanda) og athugaðu hvort þær séu prófaðar.
Ekki telja línur — athugaðu hvort HEGÐUNIN sé prófuð:
- Auðkenningarferli: er próf sem staðfestir að innskráning og útskráning virki?
- Gagnabreyting: er próf sem staðfestir að skrif takist — og bregðist rétt við þegar þau eiga að bregðast?
- Inntaksstaðfesting: er próf sem sendir gallað inntak og staðfestir að því sé hafnað?
Listaðu óprófaðar lykilleiðir. Metdu hverja: er þetta útgáfublokkari eða þekkt gat?
Úrskurður: STENST / VIÐVÖRUN (göt til staðar en hindra ekki) / FELLUR (lykilleið algerlega óprófuð)
═══ ATHUGUN 4: ÚTGÁFUBÚNAÐUR ═══
- Eru allar nauðsynlegar umhverfisbreytur skjalfestar í .env.example?
- Passar .env.example við það sem kóðinn les í raun? (grep að process.env / os.environ)
- Eru TODO- eða FIXME-athugasemdir á lykilleiðum?
- Er git-staðan hrein? (engar óvistaðar breytingar sem ætti að vista)
Úrskurður: STENST / VIÐVÖRUN / FELLUR
═══ ÚRSKURÐUR ═══
Skilaðu samantektartöflu:
| Athugun | Staða | Krítísk atriði | Athugasemdir |
|---------|-------|----------------|--------------|
| Bygging og próf | STENST/FELLUR/VIÐVÖRUN | fjöldi | smáatriði |
| Öryggi | STENST/KRÍTÍSKT/VIÐVÖRUN | fjöldi | smáatriði |
| Prófþekja | STENST/FELLUR/VIÐVÖRUN | fjöldi | smáatriði |
| Útgáfubúnaður | STENST/FELLUR/VIÐVÖRUN | fjöldi | smáatriði |
**Heildarniðurstaða: GO / NO-GO / GO MEÐ SKILYRÐUM**
- GO: allar athuganir standast eða bera aðeins viðvaranir. Sendu það.
- GO MEÐ SKILYRÐUM: viðvaranir til staðar. Listaðu þær. Sendu ef teymið sættir sig við áhættuna.
- NO-GO: krítískur öryggisgalli eða byggingin fellur. Lagaðu áður en þú sendir.
Sé niðurstaðan GO MEÐ SKILYRÐUM skaltu telja skilyrðin:
| # | Skilyrði | Alvarleiki | Má senda án þess? |
Sé hún NO-GO skaltu telja blokkarana:
| # | Blokkari | Lagfæring | Áætluð vinna |
Hugmyndafræðin: ekki láta hið fullkomna standa í vegi fyrir hinu góða. Vara sem er komin í loftið með þekkt, skráð og ókrítísk göt er betri en vara sem bíður eftir núll viðvörunum.
VERKEFNI TIL SKOÐUNAR:
{{Límdu inn slóð verkefnisins eða lýstu því sem á að fara yfir fyrir útgáfu}}
Leiðbeiningar
Run this as the last step before deploying. It gives you a clear GO / NO-GO / CONDITIONAL GO verdict. The goal is to catch blockers, not achieve perfection. Run after the other audit and modernization prompts.
Ábendingar
CONDITIONAL GO is the most common result for real projects. The value is in knowing exactly what you're shipping with and making that a conscious choice rather than an oversight.
Run this in CI as a pre-deploy step. The output is structured enough to parse programmatically — look for 'Overall: NO-GO' to gate deployments.
devopsverificationsecuritytestingpre-deploy