# Initial Structure Task Template Use this template for the bootstrap structure plan. Save as `TASKS_DIR/01_initial_structure.md` initially, then rename to `TASKS_DIR/[JIRA-ID]_initial_structure.md` after Jira ticket creation. --- ```markdown # Initial Project Structure **Task**: [JIRA-ID]_initial_structure **Name**: Initial Structure **Description**: Scaffold the project skeleton — folders, shared models, interfaces, stubs, CI/CD, DB migrations, test structure **Complexity**: [3|5] points **Dependencies**: None **Component**: Bootstrap **Jira**: [TASK-ID] **Epic**: [EPIC-ID] ## Project Folder Layout ``` project-root/ ├── [folder structure based on tech stack and components] └── ... ``` ### Layout Rationale [Brief explanation of why this structure was chosen — language conventions, framework patterns, etc.] ## DTOs and Interfaces ### Shared DTOs | DTO Name | Used By Components | Fields Summary | |----------|-------------------|---------------| | [name] | [component list] | [key fields] | ### Component Interfaces | Component | Interface | Methods | Exposed To | |-----------|-----------|---------|-----------| | [name] | [InterfaceName] | [method list] | [consumers] | ## CI/CD Pipeline | Stage | Purpose | Trigger | |-------|---------|---------| | Build | Compile/bundle the application | Every push | | Lint / Static Analysis | Code quality and style checks | Every push | | Unit Tests | Run unit test suite | Every push | | Blackbox Tests | Run blackbox test suite | Every push | | Security Scan | SAST / dependency check | Every push | | Deploy to Staging | Deploy to staging environment | Merge to staging branch | ### Pipeline Configuration Notes [Framework-specific notes: CI tool, runners, caching, parallelism, etc.] ## Environment Strategy | Environment | Purpose | Configuration Notes | |-------------|---------|-------------------| | Development | Local development | [local DB, mock services, debug flags] | | Staging | Pre-production testing | [staging DB, staging services, production-like config] | | Production | Live system | [production DB, real services, optimized config] | ### Environment Variables | Variable | Dev | Staging | Production | Description | |----------|-----|---------|------------|-------------| | [VAR_NAME] | [value/source] | [value/source] | [value/source] | [purpose] | ## Database Migration Approach **Migration tool**: [tool name] **Strategy**: [migration strategy — e.g., versioned scripts, ORM migrations] ### Initial Schema [Key tables/collections that need to be created, referencing component data access patterns] ## Test Structure ``` tests/ ├── unit/ │ ├── [component_1]/ │ ├── [component_2]/ │ └── ... ├── integration/ │ ├── test_data/ │ └── [test files] └── ... ``` ### Test Configuration Notes [Test runner, fixtures, test data management, isolation strategy] ## Implementation Order | Order | Component | Reason | |-------|-----------|--------| | 1 | [name] | [why first — foundational, no dependencies] | | 2 | [name] | [depends on #1] | | ... | ... | ... | ## Acceptance Criteria **AC-1: Project scaffolded** Given the structure plan above When the implementer executes this task Then all folders, stubs, and configuration files exist **AC-2: Tests runnable** Given the scaffolded project When the test suite is executed Then all stub tests pass (even if they only assert true) **AC-3: CI/CD configured** Given the scaffolded project When CI pipeline runs Then build, lint, and test stages complete successfully ``` --- ## Guidance Notes - This is a PLAN document, not code. The `/implement` skill executes it. - Focus on structure and organization decisions, not implementation details. - Reference component specs for interface and DTO details — don't repeat everything. - The folder layout should follow conventions of the identified tech stack. - Environment strategy should account for secrets management and configuration.