SUBAGENT CONSTRAINTS AND GUARD RAILS
Defines hard stop conditions, approved actions, and reporting rules for subagent AI assistants in a video rendering project.
What this file does
Defines hard stop conditions, approved actions, and reporting rules for subagent AI assistants in a video rendering project.
When to use it
- Setting up guardrails for an AI coding assistant in a complex build project
- Preventing unauthorized architecture or dependency changes during automated development
- Enforcing LOC limits and escalation paths for subagent tasks
- Documenting branch management rules for large changesets
Assumes this stack
SUBAGENT CONSTRAINTS AND GUARD RAILS
🚨 CRITICAL STOP CONDITIONS
SUBAGENT OPERATIONAL MANDATE
SUBAGENTS OPERATE WITH STRICT MANDATES - THEY ARE NOT YOLO/VIBE MACHINES
- NO ARCHITECTURAL DECISIONS unless explicitly guided by master LLM
- ESCALATE ALL QUESTIONS/DECISIONS to prompter when uncertain
- ADHERE TO PROMPTER RULES - follow established patterns and constraints
- EARN TRUST THROUGH DISCIPLINE - respect comes from doing the right thing consistently
Professional Standards
- Your prompter is not an American yolo script kiddie, and you are not to behave like one either
- Everyone is an adult working on trust from peers
- Achieve respect/responsibility/trust by doing the right thing or learning along the way
- NO UNAUTHORIZED FEATURES - ask before adding ANY new functionality
Code Change Limits
- STOP if changes exceed 10 LOC - report back for approval
- STOP if task requires architectural changes - investigation only
- STOP if multiple files need modification - seek guidance
- NEVER ADD/REMOVE Maven plugins, dependencies, or build features without explicit permission
Architecture Protection
- NO Java version changes without explicit permission
- NO preview features or experimental syntax (--enable-preview is RED FLAG)
- NO build system modifications (Maven/Gradle configs)
- NO dependency version changes without approval
URI/URL Specific Constraints
- CRITICAL: URI/URL issue is foundational infrastructure affecting entire stack
- Intent: Support multiple protocols (
https://,file://,spotify://) - Problem: Wrong instantiation causes exceptions across codebase
- APPROACH: Investigation and documentation ONLY - no implementation changes
✅ APPROVED ACTIONS
Investigation Tasks
- Analyze compilation status in latest GitHub versions
- Document architectural challenges and impact assessment
- Provide implementation proposals for review
- Identify dependencies and affected components
Safe Code Changes
- Single-line bug fixes with clear impact
- Standard Java syntax improvements (no preview features)
- Documentation and comment updates
- Test additions (non-invasive)
Branch Management for Large Changesets
- CRITICAL: When working on non-master branch with large pending changeset FOR NEW FUNCTIONALITY → CREATE NEW BRANCH
- FIX/AMEND existing versions: Work directly on existing branch - DO NOT create new branch
- NEW FUNCTIONALITY: Create new branch to protect waiting changesets
- Protects waiting changesets from corruption during NEW FEATURE development only
Dependency Management Philosophy
- Prefer newer versions over stale/old versions
- Minor version bumps are safe and recommended
- Better to use new version than have downstream problems
- Always check for stale dependencies in existing branches
📋 REPORTING REQUIREMENTS
When blocked by constraints:
- Identify the specific constraint violated
- Document what you discovered during investigation
- Propose alternative approaches or next steps
- Request specific guidance or permissions needed
🎯 SUCCESS CRITERIA
A successful subagent task:
- Stays within LOC limits
- Provides clear analysis and recommendations
- Identifies architectural impact without making changes
- Reports back with actionable next steps
Remember: Subagents are investigation specialists, not implementation bulldozers.
What's inside
6 constraint categories: stop conditions, approved actions, branch management, dependency philosophy, reporting requirements, success criteria
Change this for your project
- Replace
StigLau/VideoRendererwith your own repository name - Replace
spotify://with your own URI protocols if different - Adjust
10 LOClimit to your project's preferred threshold
Where it goes
Keep it in your repository where the agent or team that needs it will read it.
Worth borrowing
- Separating critical stop conditions from approved actions to avoid ambiguity
- Requiring subagents to identify the violated constraint when blocked
Related Documents
DunApp PWA - Project Constraints
Defines 14 hard constraints for a Hungarian PWA project, banning Netlify deployment and enforcing local-only testing, Supabase backend, and zero-cost development.
Constraints
Defines a three-tier priority system for design decisions, with conflict resolution examples to guide trade-offs.
Version Constraints Guide
Teaches Composer version constraint syntax for WordPress plugins and themes using a custom shell script wrapper.
Specifying version constraints
Explains how to pin Terraform CLI, provider, and Ansible versions for IBM Cloud Schematics workspaces and actions.