Commit Graph
13 Commits
Author SHA1 Message Date
huntedbytheirs 00f4f0e1a0 feat(detect): define feature-check registry schema 2026-08-28 22:09:45 -04:00
huntedbytheirs 2e8553116b feat(ext): expose Lua API for checks and languages 2026-08-28 21:51:59 -04:00
huntedbytheirs 67bfcde386 feat(kdl): add DSL schema validation 2026-08-28 21:37:22 -04:00
huntedbytheirs 467d10bd0c feat(kdl): add typed KDL value model 2026-08-28 21:18:16 -04:00
huntedbytheirs 783019dff4 feat(ext): add extension discovery and loading
Extension discovery (plan todo 20): scans --ext-dir dirs,
STUPIDTOOLS_EXT, the XDG user dir and a builtin-ext dir for *.lua
modules, runs each in the sandboxed Lua runtime, and enumerates its
registrations; the builtin C/C++ modules load first via
st_ext_init_builtins. Fail-fast with an error naming file and line on
any malformed/sandbox-violating module.

The CLI gains a repeatable --ext-dir flag; with flag or env present
main.c runs discovery and prints 'loaded extension: ...' lines from
actual registrations (interim wiring until todo 23).

Note: src/Makefile.am gained the ext + vendored Lua sources because
the binary otherwise cannot link discovery -- required for the
root-verifiable CLI acceptance.
2026-08-28 21:17:05 -04:00
huntedbytheirs 88d78990d5 feat(kdl): add KDL parser producing AST 2026-08-28 20:53:45 -04:00
huntedbytheirs 15f8e1a61b feat(ext): embed sandboxed Lua runtime with C API 2026-08-28 20:53:00 -04:00
huntedbytheirs 50afaa17ca feat(kdl): add KDL lexer with source spans 2026-08-28 20:28:57 -04:00
huntedbytheirs 468aa1c4ef feat(ext): add builtin C/C++ language modules 2026-08-28 20:17:58 -04:00
huntedbytheirs 439aa0d856 feat(gen): add POSIX-sh emitter with quoting 2026-08-28 20:12:41 -04:00
huntedbytheirs d02b5aabcd feat(error): add typed errors + source-span diagnostics 2026-08-28 19:58:29 -04:00
huntedbytheirs b5718b7487 feat(cli): add entrypoint with --help/--version and exit codes 2026-08-28 19:48:33 -04:00
huntedbytheirs 238db8b484 build: add autotools bootstrap skeleton with C23 flags 2026-08-28 19:42:33 -04:00