// SPDX-License-Identifier: AGPL-3.0-only // SPDX-FileCopyrightText: Copyright (C) 2026 Catcrafts® module Crafter.Review:Driver_impl; import :Driver; import :Core; import std; namespace Crafter::Review { namespace { constexpr std::string_view Usage = R"(usage: crafter-review [--config FILE] {run,freeze,slots,config} ... crafter-review {seats,inventory,sql,totp,init,doc,browser,stop} ... crafter-review --version The pre-push review pipeline: adversarial lenses, one claude process per inventory unit, against a frozen commit range.)"; } std::int32_t Main(std::span args) { const std::span rest = args.empty() ? args : args.subspan(1); if (!rest.empty() && rest.front() == "--version") { std::println("{}", DriverLine()); return 0; } if (!rest.empty() && (rest.front() == "-h" || rest.front() == "--help")) { std::println("{}", Usage); return 0; } std::println(std::cerr, "{}", Usage); return 3; } }