| name | fleet-campaign-management |
| description | Fleet Campaign Management orchestrates coordinated firmware updates across Use when this capability is needed. |
| metadata | {"author":"amnadtaowsoam"} |
Fleet Campaign Management
Skill Profile
(Select at least one profile to enable specific modules)
Overview
Fleet Campaign Management orchestrates coordinated firmware updates across large IoT deployments, managing phased rollouts, monitoring progress, handling failures, and ensuring successful updates across the entire fleet.
Why This Matters
Core Concepts & Rules
1. Core Principles
- Follow established patterns and conventions
- Maintain consistency across codebase
- Document decisions and trade-offs
2. Implementation Guidelines
- Start with the simplest viable solution
- Iterate based on feedback and requirements
- Test thoroughly before deployment
Inputs / Outputs / Contracts
- Inputs:
- <e.g., env vars, request payload, file paths, schema>
- Entry Conditions:
- <Pre-requisites: e.g., Repo initialized, DB running, specific branch checked out>
- Outputs:
- <e.g., artifacts (PR diff, docs, tests, dashboard JSON)>
- Artifacts Required (Deliverables):
- <e.g., Code Diff, Unit Tests, Migration Script, API Docs>
- Acceptance Evidence:
- <e.g., Test Report (screenshot/log), Benchmark Result, Security Scan Report>
- Success Criteria:
- <e.g., p95 < 300ms, coverage ≥ 80%>
Skill Composition
- Depends on: None
- Compatible with: None
- Conflicts with: None
- Related Skills: None
Quick Start
-
Initialize campaign manager:
manager = CampaignManager(
success_threshold=95.0,
failure_threshold=10.0
)
-
Register devices:
manager.register_device(Device(
device_id="device_001",
device_type="sensor_v2",
firmware_version="1.0.0",
region="us-east-1"
))
-
Create campaign:
campaign = manager.create_campaign(
name="Firmware 1.1.0 Rollout",
target_firmware="firmware_v1.1.0.bin",
target_version="1.1.0",
groups=[critical_group, standard_group],
strategy=RolloutStrategy.PHASED
)
-
Start campaign:
manager.start_campaign(campaign.campaign_id)
Assumptions / Constraints / Non-goals
- Assumptions:
- Development environment is properly configured
- Required dependencies are available
- Team has basic understanding of domain
- Constraints:
- Must follow existing codebase conventions
- Time and resource limitations
- Compatibility requirements
- Non-goals:
- This skill does not cover edge cases outside scope
- Not a replacement for formal training
Compatibility & Prerequisites
- Supported Versions:
- Python 3.8+
- Node.js 16+
- Modern browsers (Chrome, Firefox, Safari, Edge)
- Required AI Tools:
- Code editor (VS Code recommended)
- Testing framework appropriate for language
- Version control (Git)
- Dependencies:
- Language-specific package manager
- Build tools
- Testing libraries
- Environment Setup:
.env.example keys: API_KEY, DATABASE_URL (no values)
Test Scenario Matrix (QA Strategy)
| Type | Focus Area | Required Scenarios / Mocks |
|---|
| Unit | Core Logic | Must cover primary logic and at least 3 edge/error cases. Target minimum 80% coverage |
| Integration | DB / API | All external API calls or database connections must be mocked during unit tests |
| E2E | User Journey | Critical user flows to test |
| Performance | Latency / Load | Benchmark requirements |
| Security | Vuln / Auth | SAST/DAST or dependency audit |
| Frontend | UX / A11y | Accessibility checklist (WCAG), Performance Budget (Lighthouse score) |
Technical Guardrails & Security Threat Model
1. Security & Privacy (Threat Model)
- Top Threats: Injection attacks, authentication bypass, data exposure
2. Performance & Resources
3. Architecture & Scalability
4. Observability & Reliability
Agent Directives & Error Recovery
(ข้อกำหนดสำหรับ AI Agent ในการคิดและแก้ปัญหาเมื่อเกิดข้อผิดพลาด)
- Thinking Process: Analyze root cause before fixing. Do not brute-force.
- Fallback Strategy: Stop after 3 failed test attempts. Output root cause and ask for human intervention/clarification.
- Self-Review: Check against Guardrails & Anti-patterns before finalizing.
- Output Constraints: Output ONLY the modified code block. Do not explain unless asked.
Definition of Done (DoD) Checklist
Anti-patterns
-
No Phased Rollout: Update all devices at once
- Why it's bad: Widespread failures, no control
- Solution: Implement phased rollout strategy
-
No Monitoring: Not tracking update progress
- Why it's bad: Can't detect issues early
- Solution: Implement comprehensive monitoring
-
No Rollback: Can't revert failed updates
- Why it's bad: Bricked devices, customer impact
- Solution: Implement rollback mechanism
-
Ignoring Failures: Continuing despite high failure rates
- Why it's bad: Wastes resources, damages devices
- Solution: Implement failure thresholds and auto-stop
Reference Links & Examples
- Internal documentation and examples
- Official documentation and best practices
- Community resources and discussions
Versioning & Changelog
- Version: 1.0.0
- Changelog:
- 2026-02-22: Initial version with complete template structure
Converted and distributed by TomeVault — claim your Tome and manage your conversions.