{"results":[{"id":"cloudflare-update-dns-record-single-entry-point","text":"The `update_dns_record` function is the single public entry point for Cloudflare DNS management in ftl2-servercraft.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null},{"id":"cloudflare-zone-lookup-last-two-domain-parts","text":"Zone lookup extracts the root domain from the hostname by taking the last two domain parts (e.g., `world1.servercraft2.com` → `servercraft2.com`).","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null},{"id":"diverse-application-hosting-platform","text":"FTL2 serves as a hosting platform for diverse application types: long-lived daemon contexts with event/gate/SSH infrastructure support game server lifecycle management (servercraft with watchdog, TUI, backup), while the same provisioning pipeline supports hot-reload web applications (catbeez arcade) where publishing is purely file upload with no restart.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null},{"id":"ftl2-application-framework-beyond-automation","text":"FTL2 serves as a full application framework beyond one-shot automation: long-lived daemon contexts support persistent services, the event/gate/SSH pipeline enables real-time TUIs, and persistent state orchestrates multi-run workflows — demonstrated by servercraft (game lifecycle manager with watchdog and TUI dashboard) and ftl2-htop (real-time infrastructure monitoring).","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null},{"id":"observable-resilient-application-platform","text":"FTL2 infrastructure applications achieve both resilience and full observability simultaneously: servercraft demonstrates safe re-provisioning via idempotent cloud operations while every watchdog and AI-loop self-healing cycle emits structured events — autonomous operation without sacrificing operational insight.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null},{"id":"polymorphic-resilient-game-servers","text":"Each game server type in servercraft gets both custom lifecycle behavior through the 8-function script interface (provision, start, verify, backup, restore, stop, get_player_count, reconfigure) and unified resilience monitoring through the watchdog's warmup/threshold/grace-period chain — the polymorphism handles game-specific differences while the watchdog provides game-agnostic operational safety.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null},{"id":"safe-intelligent-autonomous-lifecycle","text":"Servercraft achieves safe AND intelligent autonomous lifecycle management: intelligent watchdog behavior (10-minute warmup, 3-consecutive-failure threshold, grace-period reset on player join, context-sensitive teardown) safely re-invokes infrastructure operations because FTL2's multi-layer idempotency prevents duplicate resources or repeated destructive side effects on each re-execution cycle.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null},{"id":"script-interface-eight-functions","text":"The ftl2-servercraft script interface defines exactly 8 functions: `provision`, `start_server`, `verify_server`, `restore_world`, `backup_world`, `get_player_count`, `save_and_stop`, `destroy`.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null},{"id":"servercraft-automation-context-params","text":"Every servercraft infrastructure command creates an FTL2 `automation()` context with `fail_fast=True`, `auto_install_deps=True`, and `secret_bindings` mapping module FQCNs to Vault secret names (`LINODE_TOKEN`, `LINODE_ROOT_PASS`, `SLACK_TOKEN`).","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null},{"id":"servercraft-complete-autonomous-system","text":"Servercraft is a complete autonomous game hosting system: polymorphic game support via the script interface, intelligent lifecycle management (watchdog warmup, consecutive-failure threshold, grace-period reset, context-sensitive teardown), and a responsive TUI dashboard for monitoring and control.","truth_value":"OUT","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null},{"id":"servercraft-config-default-servers-yml","text":"All servercraft commands accept `--config path/to/servers.yml` with the default being `servers.yml`.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null},{"id":"servercraft-default-subcommand-is-tui","text":"Running `ftl2-servercraft` with no subcommand launches the TUI dashboard (equivalent to `ftl2-servercraft tui`).","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null},{"id":"servercraft-game-server-polymorphism","text":"Servercraft implements game server polymorphism: the `script` field in servers.yml selects a Python module implementing the 8-function script interface, with game-specific variations (NeoForge: 7-step provision, 30s backup poll, \"minecraft\" tmux session; Terraria: 5s backup wait, port 7777, \"terraria\" host group, regex-based player count) all conforming to the same lifecycle contract.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null},{"id":"servercraft-gate-modules-on-launch","text":"The `launch` and `reconfigure` commands use `gate_modules=\"auto\"` with `gate_dependencies=[\"httpx\"]` to pre-build modules for remote execution performance.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null},{"id":"servercraft-get-player-count-returns-none-when-down","text":"`get_player_count()` returns `None` when the tmux session is down (server not running), `0` when running but no players matched, or the parsed player count as an integer.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null},{"id":"servercraft-intelligent-lifecycle-management","text":"Servercraft implements intelligent lifecycle management: automated watchdog paths (warmup grace, consecutive-failure threshold, player-join reset) and manual stop paths adapt teardown behavior based on operational context — watchdog aborts on backup failure to preserve data, while manual stop continues past backup failure because the user explicitly chose to shut down.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null},{"id":"servercraft-is-minecraft-lifecycle-manager","text":"ftl2-servercraft is a Minecraft server lifecycle manager built on FTL2, providing CLI subcommands to provision, start, stop, back up, verify, and monitor game servers on Linode infrastructure.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null},{"id":"servercraft-launch-lifecycle-sequence","text":"The `launch` subcommand runs the full lifecycle: provision → optionally restore from backup → start → verify. Verification failure raises `RuntimeError` and exits with code 1.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null},{"id":"servercraft-neoforge-backup-polls-30s","text":"The NeoForge `backup_world()` sends `save-all` and polls the server log for up to 30 seconds waiting for \"Saved the game\" confirmation before archiving. Proceeds with a warning if confirmation never appears.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null},{"id":"servercraft-neoforge-provision-seven-steps","text":"The NeoForge `provision()` function orchestrates seven sequential steps (infrastructure, minecraft install, utilities, security, swap, ownership, DDNS) plus an optional NeoForge install, each idempotent via `ftl.state` checks.","truth_value":"IN","justification_count":0,"dependent_count":0,"challenges":[],"last_reviewed":null,"review_result":null}],"count":48,"limit":20,"offset":0}