revert_after in model output + 20 training examples
Model can now output revert_after (seconds) and revert_commands fields. Python service schedules timer from model's response, not just heuristics. Players notified of revert countdown. Revert announced when applied. Training examples: temporary gamerules with explicit/implicit/no duration, permanent changes (no revert), effects with built-in duration, combined reverts. Key principle: no duration specified → default 5 min revert for safety. "permanently"/"forever"/"always" → no revert. Effects → built-in duration, no revert_after needed. Seed dataset: 3,136 examples Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
{"id": "revert-format-000", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo disable mobs for 5 minutes", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["gamerule doMobSpawning false"], "revert_after": 300, "revert_commands": ["gamerule doMobSpawning true"], "reasoning": "Temporary mob disable. 5 minutes = 300 seconds. Model specifies revert.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 2}}
|
||||
{"id": "revert-format-001", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo stop mob griefing for 10 minutes", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["gamerule mobGriefing false"], "revert_after": 600, "revert_commands": ["gamerule mobGriefing true"], "reasoning": "Temporary mobGriefing off. 10 min = 600s.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 2}}
|
||||
{"id": "revert-format-002", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo freeze time for 2 minutes", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["gamerule doDaylightCycle false"], "revert_after": 120, "revert_commands": ["gamerule doDaylightCycle true"], "reasoning": "Brief time freeze. 2 min = 120s.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 2}}
|
||||
{"id": "revert-format-003", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo peaceful for 5 minutes", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["difficulty peaceful"], "revert_after": 300, "revert_commands": ["difficulty normal"], "reasoning": "Temporary peaceful. Reverts to normal after 5 min. Note: hostile mobs despawn permanently.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 2}}
|
||||
{"id": "revert-format-004", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo fast crops for 3 minutes", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["gamerule randomTickSpeed 100"], "revert_after": 180, "revert_commands": ["gamerule randomTickSpeed 3"], "reasoning": "Boost tick speed temporarily. Revert to default 3.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 3}}
|
||||
{"id": "revert-format-005", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo no fire spread for a while", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["gamerule doFireTick false"], "revert_after": 300, "revert_commands": ["gamerule doFireTick true"], "reasoning": "A while = default 5 min. Player didnt specify exact time.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 2}}
|
||||
{"id": "revert-format-006", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo disable phantoms for tonight", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["gamerule doInsomnia false"], "revert_after": 600, "revert_commands": ["gamerule doInsomnia true"], "reasoning": "Tonight = one night cycle ~10 min. Disable phantoms temporarily.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 2}}
|
||||
{"id": "revert-format-007", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo instant respawn for the next hour", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["gamerule doImmediateRespawn true"], "revert_after": 3600, "revert_commands": ["gamerule doImmediateRespawn false"], "reasoning": "1 hour = 3600 seconds.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 2}}
|
||||
{"id": "revert-format-008", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo no weather changes for 30 minutes", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["gamerule doWeatherCycle false", "weather clear"], "revert_after": 1800, "revert_commands": ["gamerule doWeatherCycle true"], "reasoning": "Freeze weather and clear it. 30 min = 1800s.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 2}}
|
||||
{"id": "revert-format-009", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo stop drowning damage for 2 minutes", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["gamerule drowningDamage false"], "revert_after": 120, "revert_commands": ["gamerule drowningDamage true"], "reasoning": "Brief drowning immunity. 2 min for underwater exploration.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 3}}
|
||||
{"id": "revert-format-010", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo keep inventory permanently", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["gamerule keepInventory true"], "reasoning": "Permanent keepInventory. Player said permanently — no revert_after.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 1}}
|
||||
{"id": "revert-format-011", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo disable mobs forever", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["gamerule doMobSpawning false"], "reasoning": "Permanent mob disable. Forever = no revert.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 1}}
|
||||
{"id": "revert-format-012", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo always day", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["gamerule doDaylightCycle false", "time set day"], "reasoning": "Always = permanent. No revert_after.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 1}}
|
||||
{"id": "revert-format-013", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo give me speed for 2 minutes", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["effect give slingshooter08 minecraft:speed 120 1"], "reasoning": "Effects have built-in duration. 2 min = 120 seconds in the effect command. No revert_after needed — effect expires naturally.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 3}}
|
||||
{"id": "revert-format-014", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo make me invincible for 30 seconds", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["effect give slingshooter08 minecraft:resistance 30 4"], "reasoning": "Resistance 5 for 30 seconds. Built-in duration, no revert needed.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 3}}
|
||||
{"id": "revert-format-015", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo disable mobs", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["gamerule doMobSpawning false"], "revert_after": 300, "revert_commands": ["gamerule doMobSpawning true"], "reasoning": "No duration specified. Default to 5 min revert for safety. Permanent changes require explicit permanently/forever.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 2}}
|
||||
{"id": "revert-format-016", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo stop creeper damage", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["gamerule mobGriefing false"], "revert_after": 300, "revert_commands": ["gamerule mobGriefing true"], "reasoning": "No duration. Default 5 min revert.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 2}}
|
||||
{"id": "revert-format-017", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo turn off fall damage", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["gamerule fallDamage false"], "revert_after": 300, "revert_commands": ["gamerule fallDamage true"], "reasoning": "No duration specified. Default 5 min revert for gameplay balance.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 2}}
|
||||
{"id": "revert-format-018", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo peaceful creative mode for 10 minutes", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["difficulty peaceful", "gamemode creative slingshooter08"], "revert_after": 600, "revert_commands": ["difficulty normal", "gamemode survival slingshooter08"], "reasoning": "10 min of peaceful creative. Both difficulty and gamemode revert together.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 1}}
|
||||
{"id": "revert-format-019", "source": "manual", "category": "command_gen", "input": {"user_message": "sudo god mode for 1 minute", "server_context": {"server_type": "paper", "version": "1.21.x", "online_players": ["slingshooter08"]}}, "output": {"commands": ["effect give slingshooter08 minecraft:resistance 60 4", "effect give slingshooter08 minecraft:regeneration 60 4", "effect give slingshooter08 minecraft:saturation 60 0"], "reasoning": "God mode via effects. 60 seconds built-in. No revert_after — effects expire naturally.", "safety_flags": []}, "metadata": {"difficulty": "medium", "validated": true, "risk_level": 3}}
|
||||
Reference in New Issue
Block a user