d7971023b6
CAP-033: `nova --help` exits 0 and lists a subcommand for every user-facing core/ module (15 expected subcommands parsed from help). CAP-034 (AST scan, parametrized per nova/<module>.py excl. cli/__init__): - (a) line count ≤50 - (b) ≤3 FunctionDef/AsyncFunctionDef - (c) every bare ast.Call target resolves to a core.* import, a builtin, or a local function def (attribute/method calls allowed) - (d) no `if` statements except `if __name__ == "__main__"` nova init: in tmp_path, asserts .nova/, .nova/contract.yml.attestations/, .gitignore created with all 6 secrets-exclusion lines; refuses existing dir without --force. ---ci--- project: acdl phase: 1 milestone: v1.28 status: execute persona: cli-engineer ---/ci---