数ヶ月前、何年も本番で稼働していたNestJS Online JudgeプラットフォームであるLeverageの本格的なコードレビューを始めた。テストなし。リンター強制なし。正式なレビュープロセスなし。ただ締め切りのプレッシャーの下で、機能ごとに有機的に成長してきたコードだけ。
29の文書化された問題を持って出てきた。いくつかは些細なスタイルのことだった。6つはしばらく画面を見つめて「これがどうやって動いていたんだ?」と思うようなバグだった。
この投稿はその6つについてだ。
レビュープロセス
特定のバグに入る前に、方法論について一言。大規模でテストされていないコードベースをレビューするとき、ランダムな探索はうまくいかない。見落としが出る。私は3つのエントリーポイントを使用した:
約4分
