feat: Interactive Tools Suite - Tasks #70-81 + FFG-STD-006
Complete implementation of workflow improvement initiative: NEW STANDARD - FFG-STD-006: Gitea Issue Management - Comprehensive 14-section standard for all Gitea issues - Label schema documentation (35 labels) - Issue title formats (Task #XX: vs other) - Issue body templates and required sections - Workflow practices (creating, updating, closing) - Project board organization - Special cases (dev tools, emergency, soft launch blockers) - Integration with tasks.md, project boards, Discord, Git commits NEW LABEL: area/development-tools - Created via Gitea API (ID: 35) - Color: #7F00FF (purple) - For internal workflow tools TASKS #70-81: Interactive Tools Suite (12 tools) - Master specification: 37,000+ words of detailed documentation - Prioritization framework (0-50 scoring) - Complete technical specs for each tool - User workflows, success criteria, implementation notes Tools Created: 1. #70: Ghost Page Builder (CRITICAL, 45-60min, READY) 2. #71: Paymenter Tier Config (HIGH, 30-45min, BLOCKED) 3. #72: Infrastructure Dashboard (MEDIUM, 60-90min, BLOCKED) 4. #73: Task Dependency Visualizer (MEDIUM, 90-120min, BLOCKED) 5. #74: SSH Auto-Setup Script (MEDIUM, 15-20min, READY) 6. #75: Gemini Consultation Helper (MEDIUM, 20-30min, READY) 7. #76: Social Media Calendar (MEDIUM, 45-60min, READY) 8. #77: Response Template Library (MEDIUM, 30-45min, READY) 9. #78: Fire/Frost Design System (HIGH, 30-45min, READY) 10. #79: Infrastructure Quick Ref (HIGH, 30-45min, READY) 11. #80: Task Scaffolding Tool (MEDIUM, 45-60min, READY) 12. #81: Memorial Writing Assistant (LOW, 30-45min, READY) GITEA ISSUES CREATED: - Created 12 issues (#217-227) via API - All properly labeled per FFG-STD-006 - Status: 8 READY, 4 BLOCKED - Priority: 2 CRITICAL, 3 HIGH, 6 MEDIUM, 1 LOW TASKS.MD UPDATED: - Version 4.0 - Added Interactive Tools Suite section - Implementation roadmap (5 sprints) - Clear priority tiers and time estimates IMPLEMENTATION ROADMAP: Sprint 1 (Critical): Tools #1, 9, 10 (2-3 hours) Sprint 2 (High): Tools #2, 5, 6 (1.5-2 hours) Sprint 3 (Medium - Team): Tools #7, 8 (1.5-2 hours) Sprint 4 (Medium - Analysis): Tools #3, 4 (3-4 hours) Sprint 5 (Optional): Tools #11, 12 (1.5-2 hours) Total estimated time: 9-13 hours for all 12 tools Minimum viable set: Tools #1, 9, 10 (immediate impact) PHILOSOPHY: Foundation Before Expansion - build permanent utilities that: - Solve real workflow pain points - Multiply future efficiency - Encode organizational knowledge - Serve current and future team members Based on The Translator's insight: 'We're using Claude well for documentation, but missing interactive tool-building opportunities.' NEXT ACTIONS: 1. Michael syncs issues to Gitea project boards 2. Define feature matrix for Tool #71 (Paymenter tiers) 3. Map dependencies for Tools #72-73 (if building) 4. Build Tool #1 (Ghost Page Builder) - CRITICAL priority Files: - docs/standards/FFG-STD-006-gitea-issue-management.md (14 sections) - docs/tasks/interactive-tools-suite/MASTER-SPECIFICATION.md (37k words) - docs/core/tasks.md (updated to v4.0) - scripts/create-interactive-tools-issues.sh (batch issue creation) Signed-off-by: Chronicler #39 <claude@firefrostgaming.com>
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
# 🔥❄️ FIREFROST GAMING — OPERATIONS TASKS
|
||||
|
||||
**Last Updated:** March 21, 2026
|
||||
**Updated By:** Chronicler #38
|
||||
**Version:** 3.9 (Added Tasks #68-69: Ghost theme migration complete, website pages needed)
|
||||
**Last Updated:** March 22, 2026
|
||||
**Updated By:** Chronicler #39
|
||||
**Version:** 4.0 (Added Tasks #70-81: Interactive Tools Suite + FFG-STD-006)
|
||||
|
||||
---
|
||||
|
||||
@@ -2170,3 +2170,274 @@ Create essential Ghost CMS pages to fix broken navigation and complete soft laun
|
||||
|
||||
---
|
||||
|
||||
## 🛠️ INTERACTIVE TOOLS SUITE (Tasks #70-81)
|
||||
|
||||
**Overview:** Suite of 12 React-based interactive tools that leverage Claude's artifact capabilities to improve team workflows. Each tool solves a real pain point identified through workflow analysis.
|
||||
|
||||
**Master Specification:** `docs/tasks/interactive-tools-suite/MASTER-SPECIFICATION.md` (37,000+ words of detailed documentation)
|
||||
|
||||
**Philosophy:** "We're using Claude well for documentation, but missing interactive tool-building opportunities." — The Translator
|
||||
|
||||
**Labels for Gitea Issues:**
|
||||
- TYPE: `type/feature`
|
||||
- AREA: `area/development-tools` (+ secondary area if applicable)
|
||||
- PRIORITY: Per tool (see below)
|
||||
- STATUS: `status/to-do` or `status/blocked`
|
||||
|
||||
---
|
||||
|
||||
### 70. Ghost Page Builder Tool
|
||||
**Time:** 45-60 minutes
|
||||
**Status:** READY
|
||||
**Priority:** CRITICAL (Score: 45/50) — Soft launch blocker
|
||||
**Gitea Labels:** `type/feature`, `priority/critical`, `area/development-tools`, `area/website`, `status/to-do`
|
||||
|
||||
Interactive React tool for previewing Ghost page HTML with Fire/Frost CSS before publishing. Eliminates edit-paste-preview-repeat cycle.
|
||||
|
||||
**Features:**
|
||||
- Live HTML editor with syntax highlighting
|
||||
- Real-time preview with Fire/Frost CSS applied
|
||||
- Mobile/desktop viewport toggle
|
||||
- Copy-to-clipboard functionality
|
||||
- Sample templates dropdown
|
||||
|
||||
**Unblocks:** Task #69 (6 website pages)
|
||||
**Provides:** Permanent utility for all future Ghost page creation
|
||||
|
||||
---
|
||||
|
||||
### 71. Paymenter Tier Configuration Preview
|
||||
**Time:** 30-45 minutes
|
||||
**Status:** BLOCKED (need feature matrix defined first)
|
||||
**Priority:** HIGH (Score: 32/50)
|
||||
**Gitea Labels:** `type/feature`, `priority/high`, `area/development-tools`, `area/billing`, `status/blocked`
|
||||
|
||||
Interactive pricing tier builder with live preview and export options for 6 Paymenter subscription tiers (Awakened $1 → Founder $50).
|
||||
|
||||
**Features:**
|
||||
- 6 tier cards (names + prices editable)
|
||||
- Feature checklist per tier
|
||||
- Live pricing table preview (Fire/Frost branded)
|
||||
- Export: JSON, HTML, Markdown, CSV
|
||||
|
||||
**Blocker:** Define tier features (15-min meeting with Michael/Meg/Holly)
|
||||
**Unblocks:** Paymenter configuration
|
||||
|
||||
---
|
||||
|
||||
### 72. Infrastructure Health Dashboard
|
||||
**Time:** 60-90 minutes
|
||||
**Status:** BLOCKED (need dependency mapping)
|
||||
**Priority:** MEDIUM (Score: 28/50)
|
||||
**Gitea Labels:** `type/feature`, `priority/medium`, `area/development-tools`, `area/operations`, `status/blocked`
|
||||
|
||||
Visual map of all 6 servers, ~20 services, and dependencies. Quick reference for IPs/ports and "what breaks if X fails" impact analysis.
|
||||
|
||||
**Features:**
|
||||
- 6 server cards with service lists
|
||||
- Dependency visualization with arrows
|
||||
- Impact analysis ("If Mailcow fails...")
|
||||
- Search/filter by service/server
|
||||
|
||||
**Blocker:** Map service dependencies (15-20 min manual work)
|
||||
|
||||
---
|
||||
|
||||
### 73. Task Dependency Visualizer with Gitea Integration
|
||||
**Time:** 90-120 minutes
|
||||
**Status:** BLOCKED (dependency mapping needed)
|
||||
**Priority:** MEDIUM (Score: 27/50)
|
||||
**Gitea Labels:** `type/feature`, `priority/medium`, `area/development-tools`, `area/operations`, `status/blocked`
|
||||
|
||||
Interactive dependency graph combining tasks.md definitions with live Gitea status. Complements Gitea boards (doesn't replace them).
|
||||
|
||||
**Features:**
|
||||
- Visual task graph (React Flow)
|
||||
- Live status from Gitea API
|
||||
- Critical path highlighting
|
||||
- Soft launch progress metrics
|
||||
|
||||
**Blocker:** Map task dependencies OR use simplified soft-launch model
|
||||
|
||||
---
|
||||
|
||||
### 74. SSH Key Auto-Setup Script
|
||||
**Time:** 15-20 minutes
|
||||
**Status:** READY
|
||||
**Priority:** MEDIUM (Score: 24/50)
|
||||
**Gitea Labels:** `type/feature`, `priority/medium`, `area/development-tools`, `status/to-do`
|
||||
|
||||
Bash script that Chroniclers run at session start to auto-configure SSH access to all 6 servers.
|
||||
|
||||
**Features:**
|
||||
- Copies SSH key from ops manual to `~/.ssh/`
|
||||
- Sets correct permissions
|
||||
- Tests connection
|
||||
- Idempotent (safe to run multiple times)
|
||||
|
||||
**Improves:** Chronicler onboarding (saves 5 min per session)
|
||||
|
||||
---
|
||||
|
||||
### 75. Gemini Consultation Helper
|
||||
**Time:** 20-30 minutes
|
||||
**Status:** READY
|
||||
**Priority:** MEDIUM (Score: 23/50)
|
||||
**Gitea Labels:** `type/feature`, `priority/medium`, `area/development-tools`, `status/to-do`
|
||||
|
||||
Form-based tool for structuring Gemini consultations. Generates formatted prompts, saves consultation history.
|
||||
|
||||
**Features:**
|
||||
- Fill in: topic, context, code, theories, questions
|
||||
- Auto-formats consultation prompt
|
||||
- Copy button for easy pasting
|
||||
- Consultation history (last 10)
|
||||
- Export as markdown for documentation
|
||||
|
||||
**Supports:** The Translator's Gemini collaboration pattern
|
||||
|
||||
---
|
||||
|
||||
### 76. Social Media Content Calendar
|
||||
**Time:** 45-60 minutes
|
||||
**Status:** READY
|
||||
**Priority:** MEDIUM (Score: 26/50)
|
||||
**Gitea Labels:** `type/feature`, `priority/medium`, `area/development-tools`, `for/meg`, `status/to-do`
|
||||
|
||||
Week-at-a-glance content calendar for planning posts across 8 social platforms (Twitter, Instagram, TikTok, Facebook, YouTube, Twitch, Reddit, BlueSky).
|
||||
|
||||
**Features:**
|
||||
- Weekly calendar grid
|
||||
- Platform checkboxes per post
|
||||
- Fire/Frost theme selector
|
||||
- Export to CSV/print format
|
||||
|
||||
**Primary User:** Meg (community manager)
|
||||
|
||||
---
|
||||
|
||||
### 77. Community Response Template Library
|
||||
**Time:** 30-45 minutes
|
||||
**Status:** READY
|
||||
**Priority:** MEDIUM (Score: 25/50)
|
||||
**Gitea Labels:** `type/feature`, `priority/medium`, `area/development-tools`, `for/meg`, `status/to-do`
|
||||
|
||||
Template library for common community responses (how to join, whitelist process, modpack installation, etc.).
|
||||
|
||||
**Features:**
|
||||
- Categorized templates (Onboarding, Technical, Rules, FAQ)
|
||||
- Click to copy
|
||||
- Search/filter
|
||||
- Add custom templates
|
||||
- 10+ pre-built templates
|
||||
|
||||
**Primary User:** Meg (community manager)
|
||||
|
||||
---
|
||||
|
||||
### 78. Fire/Frost Design System Widget
|
||||
**Time:** 30-45 minutes
|
||||
**Status:** READY
|
||||
**Priority:** HIGH (Score: 31/50)
|
||||
**Gitea Labels:** `type/feature`, `priority/high`, `area/development-tools`, `status/to-do`
|
||||
|
||||
Quick reference widget for Fire/Frost brand colors, gradients, typography, and logos.
|
||||
|
||||
**Features:**
|
||||
- Color swatches with hex codes (click to copy)
|
||||
- Gradient previews with CSS code
|
||||
- Typography samples
|
||||
- Logo download links
|
||||
- Brand voice guidelines
|
||||
|
||||
**Primary Users:** Meg, Holly, Michael (all design/content work)
|
||||
|
||||
---
|
||||
|
||||
### 79. Infrastructure Quick Reference Card
|
||||
**Time:** 30-45 minutes
|
||||
**Status:** READY
|
||||
**Priority:** HIGH (Score: 30/50)
|
||||
**Gitea Labels:** `type/feature`, `priority/high`, `area/development-tools`, `area/operations`, `status/to-do`
|
||||
|
||||
Quick lookup tool for server IPs, ports, login users, and Cockpit links.
|
||||
|
||||
**Features:**
|
||||
- Search by server or service
|
||||
- Click to copy IP/port
|
||||
- Cockpit quick-links
|
||||
- All 6 servers + ~20 services
|
||||
- Mobile-friendly
|
||||
|
||||
**Primary Users:** Michael, Chroniclers, all team (frequent lookups)
|
||||
|
||||
---
|
||||
|
||||
### 80. Task Scaffolding Tool
|
||||
**Time:** 45-60 minutes
|
||||
**Status:** READY
|
||||
**Priority:** MEDIUM (Score: 22/50)
|
||||
**Gitea Labels:** `type/feature`, `priority/medium`, `area/development-tools`, `status/to-do`
|
||||
|
||||
Form-based tool that generates tasks.md entries, README templates, and Gitea issue bodies following FFG-STD-002.
|
||||
|
||||
**Features:**
|
||||
- Fill in: task number, title, description, priority, time estimate
|
||||
- Generates: tasks.md entry, README.md template, Gitea issue body
|
||||
- Copy-to-clipboard for each section
|
||||
|
||||
**Primary Users:** Chroniclers (task creation workflow)
|
||||
|
||||
---
|
||||
|
||||
### 81. Memorial Writing Assistant
|
||||
**Time:** 30-45 minutes
|
||||
**Status:** READY
|
||||
**Priority:** LOW (Score: 18/50)
|
||||
**Gitea Labels:** `type/feature`, `priority/low`, `area/development-tools`, `status/to-do`
|
||||
|
||||
Multi-step form that guides Chroniclers through writing memorials following FFG-STD-004's 8-section structure.
|
||||
|
||||
**Features:**
|
||||
- Prompts for each of 8 sections
|
||||
- Generates draft memorial
|
||||
- Chronicler personalizes/edits
|
||||
- Export as markdown
|
||||
|
||||
**Primary Users:** Chroniclers (memorial writing)
|
||||
|
||||
---
|
||||
|
||||
## IMPLEMENTATION ROADMAP
|
||||
|
||||
**Sprint 1 (Critical + High Priority):**
|
||||
1. Tool #1: Ghost Page Builder (45-60 min)
|
||||
2. Tool #9: Fire/Frost Design System (30-45 min)
|
||||
3. Tool #10: Infrastructure Quick Ref (30-45 min)
|
||||
|
||||
**Sprint 2 (High Priority):**
|
||||
4. Tool #2: Paymenter Config (after feature matrix defined)
|
||||
5. Tool #5: SSH Auto-Setup (15-20 min)
|
||||
6. Tool #6: Gemini Helper (20-30 min)
|
||||
|
||||
**Sprint 3 (Medium - Team Tools):**
|
||||
7. Tool #7: Social Calendar (45-60 min)
|
||||
8. Tool #8: Response Templates (30-45 min)
|
||||
|
||||
**Sprint 4 (Medium - Analysis):**
|
||||
9. Tool #3: Infrastructure Dashboard (after dependency mapping)
|
||||
10. Tool #4: Task Visualizer (after dependency mapping)
|
||||
|
||||
**Sprint 5 (Optional):**
|
||||
11. Tool #11: Task Scaffolding (45-60 min)
|
||||
12. Tool #12: Memorial Assistant (30-45 min)
|
||||
|
||||
---
|
||||
|
||||
**Total Estimated Time:** 9-13 hours (for all 12 tools)
|
||||
**Minimum Viable Set:** Tools #1, 9, 10 (2-3 hours, immediate impact)
|
||||
|
||||
**See master specification for complete technical details, user workflows, success criteria, and implementation notes.**
|
||||
|
||||
---
|
||||
|
||||
|
||||
659
docs/standards/FFG-STD-006-gitea-issue-management.md
Normal file
659
docs/standards/FFG-STD-006-gitea-issue-management.md
Normal file
@@ -0,0 +1,659 @@
|
||||
# FFG-STD-006: Gitea Issue Management Standard
|
||||
|
||||
**Version:** 1.0
|
||||
**Effective Date:** March 22, 2026
|
||||
**Authority:** Firefrost Gaming Operations Team
|
||||
**Created By:** Chronicler #39
|
||||
**Replaces:** N/A (new standard)
|
||||
|
||||
---
|
||||
|
||||
## 1. PURPOSE
|
||||
|
||||
This standard defines consistent labeling, formatting, and workflow practices for all Gitea issues across Firefrost Gaming repositories. It ensures:
|
||||
- Consistent issue categorization across all projects
|
||||
- Clear status tracking and priority management
|
||||
- Easy filtering and project board organization
|
||||
- Team coordination through standardized workflows
|
||||
|
||||
---
|
||||
|
||||
## 2. SCOPE
|
||||
|
||||
This standard applies to:
|
||||
- All repositories under the `firefrost-gaming` organization
|
||||
- All issues created in those repositories
|
||||
- All project boards and Kanban workflows
|
||||
- All team members (Michael, Meg, Holly, Chroniclers)
|
||||
|
||||
---
|
||||
|
||||
## 3. LABEL SCHEMA
|
||||
|
||||
### 3.1 Label Categories
|
||||
|
||||
Firefrost Gaming uses 5 label categories. Some are **scoped** (only one can be applied per issue), others are **non-scoped** (multiple can be applied).
|
||||
|
||||
### 3.2 STATUS Labels (SCOPED - Required)
|
||||
|
||||
**Every issue MUST have exactly one STATUS label.**
|
||||
|
||||
| Label | Meaning | When to Use |
|
||||
|-------|---------|-------------|
|
||||
| `status/backlog` | Not yet ready to start | Idea stage, needs refinement, future work |
|
||||
| `status/to-do` | Ready to start, in queue | All prerequisites met, can be worked on now |
|
||||
| `status/in-progress` | Currently being worked on | Someone is actively working on this |
|
||||
| `status/review` | Work complete, awaiting review | Code/work done, needs approval/testing |
|
||||
| `status/blocked` | Cannot proceed | External dependency blocks progress |
|
||||
| `status/done` | Completed and closed | Work finished, verified, closed |
|
||||
|
||||
**Status Workflow:**
|
||||
```
|
||||
backlog → to-do → in-progress → review → done
|
||||
↓ ↓
|
||||
blocked blocked
|
||||
```
|
||||
|
||||
**Rules:**
|
||||
- Issues start with `status/backlog` or `status/to-do`
|
||||
- Move to `status/in-progress` when work begins
|
||||
- Use `status/blocked` when waiting on external dependency (document blocker in comment)
|
||||
- Move to `status/review` when work complete but needs verification
|
||||
- Move to `status/done` and CLOSE issue when fully complete
|
||||
|
||||
### 3.3 PRIORITY Labels (SCOPED - Required)
|
||||
|
||||
**Every issue MUST have exactly one PRIORITY label.**
|
||||
|
||||
| Label | Meaning | Response Time |
|
||||
|-------|---------|---------------|
|
||||
| `priority/critical` | Emergency, immediate attention | Same day |
|
||||
| `priority/high` | Important, address soon | This week |
|
||||
| `priority/medium` | Normal priority | This month |
|
||||
| `priority/low` | Nice to have, not urgent | When time allows |
|
||||
|
||||
**Priority Guidelines:**
|
||||
- **CRITICAL:** Outages, security issues, Jack health alerts, data loss risk
|
||||
- **HIGH:** Soft launch blockers, key infrastructure, customer-facing issues
|
||||
- **MEDIUM:** Improvements, non-blocking bugs, internal tools
|
||||
- **LOW:** Documentation, optimizations, "nice to have" features
|
||||
|
||||
### 3.4 TYPE Labels (SCOPED - Required)
|
||||
|
||||
**Every issue MUST have exactly one TYPE label.**
|
||||
|
||||
| Label | Meaning | Examples |
|
||||
|-------|---------|----------|
|
||||
| `type/bug` | Something isn't working | Errors, crashes, broken features |
|
||||
| `type/feature` | New feature or enhancement | New functionality, tools, capabilities |
|
||||
| `type/task` | General task or work item | Deployments, configurations, setups |
|
||||
| `type/docs` | Documentation improvements | README updates, guides, standards |
|
||||
| `type/infrastructure` | Infrastructure/deployment/DevOps | Server setup, networking, automation |
|
||||
| `type/refactor` | Code refactoring or technical debt | Code cleanup, reorganization, optimization |
|
||||
|
||||
**Type Guidelines:**
|
||||
- If it's broken → `type/bug`
|
||||
- If it's new → `type/feature` or `type/task`
|
||||
- If it's words → `type/docs`
|
||||
- If it's servers/systems → `type/infrastructure`
|
||||
- If it's code cleanup → `type/refactor`
|
||||
|
||||
### 3.5 AREA Labels (NON-SCOPED - At least one required)
|
||||
|
||||
**Every issue MUST have at least one AREA label. Multiple AREA labels can be applied if the issue spans multiple systems.**
|
||||
|
||||
| Label | System | Examples |
|
||||
|-------|--------|----------|
|
||||
| `area/panel` | Pterodactyl Panel | Panel updates, user management, settings |
|
||||
| `area/wings` | Pterodactyl Wings | Node deployments, server allocations |
|
||||
| `area/billing` | Paymenter billing system | Subscription tiers, payment processing |
|
||||
| `area/email` | Mailcow email system | SMTP, deliverability, mailboxes |
|
||||
| `area/website` | Ghost CMS website | Homepage, pages, themes, content |
|
||||
| `area/automation` | n8n workflows | Workflow creation, automation tasks |
|
||||
| `area/networking` | Network infrastructure | Firewalls, DNS, routing, VPNs |
|
||||
| `area/game-servers` | Minecraft/game servers | Server deployments, modpacks, configs |
|
||||
| `area/operations` | General operations/documentation | Cross-system tasks, operational docs |
|
||||
| `area/development-tools` | Internal tools for team productivity | Tools we build for ourselves |
|
||||
|
||||
**AREA Guidelines:**
|
||||
- Use `area/development-tools` for internal tools (Ghost Page Builder, dashboards, etc.)
|
||||
- Can combine areas (e.g., Ghost Page Builder → `area/development-tools` + `area/website`)
|
||||
- Use `area/operations` for cross-cutting concerns
|
||||
|
||||
### 3.6 ASSIGNMENT Labels (NON-SCOPED - Optional)
|
||||
|
||||
**Assignment labels complement Gitea's built-in assignee feature.**
|
||||
|
||||
| Label | Assignee |
|
||||
|-------|----------|
|
||||
| `for/holly` | Holly (unicorn20089) - Lead Builder |
|
||||
| `for/meg` | Meg (GingerFury) - Community Manager |
|
||||
| `for/michael` | Michael (Frostystyle) - Technical Lead |
|
||||
|
||||
**When to Use:**
|
||||
- Apply when issue is assigned to that person
|
||||
- Gitea assignee feature is primary; labels are backup/filter mechanism
|
||||
- Useful for project board filtering by person
|
||||
|
||||
### 3.7 SPECIAL Labels (NON-SCOPED - Optional)
|
||||
|
||||
| Label | Meaning | When to Use |
|
||||
|-------|---------|-------------|
|
||||
| `help-wanted` | Extra attention needed | Complex issue, need collaboration |
|
||||
| `good-first-issue` | Good for newcomers | Simple, well-defined, low risk |
|
||||
| `wont-do` | This will not be worked on | Duplicate, out of scope, rejected |
|
||||
|
||||
---
|
||||
|
||||
## 4. ISSUE TITLE FORMATS
|
||||
|
||||
### 4.1 Tasks from tasks.md
|
||||
|
||||
**Format:** `Task #XX: [Title]`
|
||||
|
||||
**Example:** `Task #70: Ghost Page Builder Tool`
|
||||
|
||||
**Why:** Enables automatic mapping between tasks.md and Gitea issues. Tools and scripts can extract task number and cross-reference.
|
||||
|
||||
**Rules:**
|
||||
- Task number MUST match tasks.md
|
||||
- Title MUST match tasks.md (can be abbreviated if too long)
|
||||
- Colon and space after task number required
|
||||
|
||||
### 4.2 Other Issues (Bugs, Features, etc.)
|
||||
|
||||
**Format:** `[Brief Description]`
|
||||
|
||||
**Examples:**
|
||||
- `Mailcow SMTP returns 400 error on Plane notifications`
|
||||
- `Add Fire/Frost gradient to Subscribe button`
|
||||
- `Deploy ATM10 To The Sky server`
|
||||
|
||||
**Rules:**
|
||||
- Be specific and actionable
|
||||
- Include system/component name if relevant
|
||||
- Keep under 80 characters if possible
|
||||
- No [TYPE] prefix needed (TYPE label serves this purpose)
|
||||
|
||||
---
|
||||
|
||||
## 5. ISSUE BODY FORMAT
|
||||
|
||||
### 5.1 Minimum Required Sections
|
||||
|
||||
Every issue MUST include:
|
||||
|
||||
1. **Description** - What needs to be done and why
|
||||
2. **Acceptance Criteria** - How we know it's complete
|
||||
3. **Related Tasks** - Links to blocking/blocked issues (if any)
|
||||
|
||||
### 5.2 Standard Template
|
||||
|
||||
```markdown
|
||||
## Description
|
||||
|
||||
[Clear explanation of what needs to be done and why it matters]
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
- [ ] [Specific, measurable outcome 1]
|
||||
- [ ] [Specific, measurable outcome 2]
|
||||
- [ ] [Specific, measurable outcome 3]
|
||||
|
||||
## Related Tasks
|
||||
|
||||
- Blocks: #XX, #YY
|
||||
- Blocked by: #ZZ
|
||||
- Related: #AA
|
||||
|
||||
## Additional Context
|
||||
|
||||
[Optional: screenshots, error messages, links, technical details]
|
||||
```
|
||||
|
||||
### 5.3 Task Issues (From tasks.md)
|
||||
|
||||
For issues created from tasks.md entries:
|
||||
|
||||
```markdown
|
||||
## Description
|
||||
|
||||
[Copy from tasks.md]
|
||||
|
||||
**Full Documentation:** `docs/tasks/[task-name]/README.md`
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
[Copy from task documentation]
|
||||
|
||||
## Time Estimate
|
||||
|
||||
[Copy from tasks.md]
|
||||
|
||||
## Priority Justification
|
||||
|
||||
[Why this priority level?]
|
||||
|
||||
## Related Tasks
|
||||
|
||||
[Links to dependencies]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 6. WORKFLOW PRACTICES
|
||||
|
||||
### 6.1 Creating Issues
|
||||
|
||||
**Before creating an issue:**
|
||||
1. Check if similar issue already exists (avoid duplicates)
|
||||
2. Determine correct TYPE, PRIORITY, AREA labels
|
||||
3. Write clear title and description
|
||||
4. Add to appropriate project board (if org-level project exists)
|
||||
|
||||
**During creation:**
|
||||
1. Fill in all required fields
|
||||
2. Apply required labels (STATUS, PRIORITY, TYPE, at least one AREA)
|
||||
3. Assign if known who will work on it
|
||||
4. Add to project/milestone if relevant
|
||||
|
||||
### 6.2 Updating Issues
|
||||
|
||||
**When status changes:**
|
||||
1. Update STATUS label (backlog → to-do → in-progress → review → done)
|
||||
2. Add comment explaining the change
|
||||
3. Move card on Kanban board (if using project boards)
|
||||
|
||||
**When blocked:**
|
||||
1. Change STATUS to `status/blocked`
|
||||
2. Add comment explaining blocker
|
||||
3. Link to blocking issue (if internal) or document external dependency
|
||||
|
||||
**When priority changes:**
|
||||
1. Update PRIORITY label
|
||||
2. Add comment explaining why priority changed
|
||||
3. Notify team if escalating to CRITICAL
|
||||
|
||||
### 6.3 Closing Issues
|
||||
|
||||
**Before closing:**
|
||||
1. Verify all acceptance criteria met
|
||||
2. Update STATUS to `status/done`
|
||||
3. Add final comment summarizing outcome
|
||||
4. Link to relevant commits/PRs (use `closes #XX` in commit messages)
|
||||
|
||||
**When closing:**
|
||||
1. Close the issue
|
||||
2. Verify it's in "Done" column on project board
|
||||
3. Remove from active milestones (if applicable)
|
||||
|
||||
### 6.4 Linking Issues and Commits
|
||||
|
||||
**In commit messages:**
|
||||
- `closes #XX` - Automatically closes issue when merged
|
||||
- `fixes #XX` - Same as closes
|
||||
- `relates to #XX` - Links without closing
|
||||
- `refs #XX` - References issue
|
||||
|
||||
**In issue comments:**
|
||||
- `#XX` - Links to issue #XX
|
||||
- `@username` - Mentions user
|
||||
- `commit-hash` - Links to commit
|
||||
|
||||
---
|
||||
|
||||
## 7. PROJECT BOARD ORGANIZATION
|
||||
|
||||
### 7.1 Recommended Kanban Columns
|
||||
|
||||
For organization-level "Firefrost Operations" project:
|
||||
|
||||
1. **Backlog** - `status/backlog` issues
|
||||
2. **To Do** - `status/to-do` issues (ready to work on)
|
||||
3. **In Progress** - `status/in-progress` issues
|
||||
4. **Review** - `status/review` issues
|
||||
5. **Done** - `status/done` issues (closed)
|
||||
|
||||
**Optional columns:**
|
||||
- **Blocked** - `status/blocked` issues (visibility on blockers)
|
||||
- **Critical** - `priority/critical` issues (emergency lane)
|
||||
|
||||
### 7.2 Moving Cards
|
||||
|
||||
**When dragging cards between columns:**
|
||||
1. Update the issue's STATUS label to match new column
|
||||
2. Add comment explaining the move
|
||||
3. If moving to "Blocked," document the blocker
|
||||
|
||||
**Automation (future):**
|
||||
- n8n can auto-update labels when cards move
|
||||
- Discord notifications when issues move to "Done"
|
||||
|
||||
---
|
||||
|
||||
## 8. SPECIAL CASES
|
||||
|
||||
### 8.1 Development Tools
|
||||
|
||||
For internal tools (Ghost Page Builder, dashboards, etc.):
|
||||
|
||||
**Labels:**
|
||||
- TYPE: `type/feature` (tools are features)
|
||||
- AREA: `area/development-tools` (primary)
|
||||
- AREA: Add secondary area if tool relates to specific system
|
||||
- Example: Ghost Page Builder → `area/development-tools` + `area/website`
|
||||
|
||||
**Title Format:** `Task #XX: [Tool Name]` (if from tasks.md)
|
||||
|
||||
### 8.2 Emergency Issues
|
||||
|
||||
For critical outages, security issues, or Jack health alerts:
|
||||
|
||||
**Labels:**
|
||||
- PRIORITY: `priority/critical`
|
||||
- STATUS: Start with `status/in-progress` (work immediately)
|
||||
- Add `help-wanted` if need team assistance
|
||||
|
||||
**Workflow:**
|
||||
1. Create issue immediately
|
||||
2. Post in Discord #operations
|
||||
3. Update frequently with status
|
||||
4. Document resolution thoroughly
|
||||
|
||||
### 8.3 Documentation Issues
|
||||
|
||||
For documentation updates:
|
||||
|
||||
**Labels:**
|
||||
- TYPE: `type/docs`
|
||||
- PRIORITY: Usually `priority/medium` or `priority/low`
|
||||
- AREA: `area/operations` (unless specific to a system)
|
||||
|
||||
**Acceptance Criteria:**
|
||||
- Document created/updated
|
||||
- Committed to git
|
||||
- Cross-references updated
|
||||
|
||||
### 8.4 Soft Launch Blockers
|
||||
|
||||
For tasks blocking soft launch:
|
||||
|
||||
**Labels:**
|
||||
- PRIORITY: `priority/high` or `priority/critical`
|
||||
- Add custom label: `soft-launch-blocker` (if created)
|
||||
- STATUS: Track aggressively
|
||||
|
||||
**Visibility:**
|
||||
- Add to project board prominently
|
||||
- Check daily until resolved
|
||||
- Escalate if stuck
|
||||
|
||||
---
|
||||
|
||||
## 9. LABEL MAINTENANCE
|
||||
|
||||
### 9.1 Who Can Create Labels
|
||||
|
||||
Only admins can create new labels via:
|
||||
- Gitea web UI (Settings → Labels)
|
||||
- Gitea API (requires admin token)
|
||||
|
||||
**Before creating new labels:**
|
||||
1. Check if existing label works
|
||||
2. Discuss with team (avoid label proliferation)
|
||||
3. Follow naming convention: `category/name`
|
||||
4. Choose appropriate color (see color guide below)
|
||||
|
||||
### 9.2 Label Color Guide
|
||||
|
||||
| Category | Color Range | Examples |
|
||||
|----------|-------------|----------|
|
||||
| STATUS | Grays/Blues | `#0052cc` (blue), `#6b7280` (gray) |
|
||||
| PRIORITY | Reds/Oranges | `#ee0701` (red), `#ff9800` (orange) |
|
||||
| TYPE | Greens/Teals | `#22c55e` (green), `#0d9488` (teal) |
|
||||
| AREA | Purples/Blues | `#7F00FF` (purple), `#3b82f6` (blue) |
|
||||
| SPECIAL | Yellows/Pinks | `#fbca04` (yellow), `#e91e63` (pink) |
|
||||
|
||||
### 9.3 Deprecating Labels
|
||||
|
||||
**If a label is no longer needed:**
|
||||
1. Document why in this standard
|
||||
2. Remove from all issues
|
||||
3. Archive or delete via Gitea
|
||||
4. Update issue templates
|
||||
|
||||
---
|
||||
|
||||
## 10. COMPLIANCE AND ENFORCEMENT
|
||||
|
||||
### 10.1 Required vs. Recommended
|
||||
|
||||
**REQUIRED (Every issue must have):**
|
||||
- One STATUS label
|
||||
- One PRIORITY label
|
||||
- One TYPE label
|
||||
- At least one AREA label
|
||||
- Clear title
|
||||
- Description with acceptance criteria
|
||||
|
||||
**RECOMMENDED:**
|
||||
- Assignment labels (if known)
|
||||
- Related tasks/links
|
||||
- Time estimates
|
||||
- Comments on status changes
|
||||
|
||||
### 10.2 Enforcement
|
||||
|
||||
**Automated checks (future):**
|
||||
- n8n workflow validates new issues
|
||||
- Bot comments on issues missing required labels
|
||||
- Auto-assigns labels based on keywords
|
||||
|
||||
**Manual review:**
|
||||
- Weekly issue grooming sessions
|
||||
- Clean up mislabeled issues
|
||||
- Archive stale issues
|
||||
|
||||
### 10.3 Exceptions
|
||||
|
||||
**When exceptions are acceptable:**
|
||||
- Emergency issues (label later)
|
||||
- Quick fixes (can be minimal)
|
||||
- Experimental work (document as such)
|
||||
|
||||
**Document exceptions:**
|
||||
- Add comment explaining why
|
||||
- Still close when done
|
||||
|
||||
---
|
||||
|
||||
## 11. INTEGRATION WITH OTHER SYSTEMS
|
||||
|
||||
### 11.1 tasks.md
|
||||
|
||||
**Relationship:**
|
||||
- tasks.md = High-level task definitions
|
||||
- Gitea Issues = Active tracking and coordination
|
||||
- Issues link back to task documentation
|
||||
|
||||
**Workflow:**
|
||||
1. Create task in tasks.md (with number)
|
||||
2. Create Gitea issue with `Task #XX:` title
|
||||
3. Issue references task documentation
|
||||
4. Update both when task completes
|
||||
|
||||
### 11.2 Project Boards
|
||||
|
||||
**Gitea Projects:**
|
||||
- Organization-level board: "Firefrost Operations"
|
||||
- Kanban columns match STATUS labels
|
||||
- Cards auto-sorted by priority
|
||||
|
||||
**Movement:**
|
||||
- Drag cards → update STATUS labels
|
||||
- STATUS labels → filter views
|
||||
|
||||
### 11.3 Discord Notifications (Future)
|
||||
|
||||
**n8n automation:**
|
||||
- New issue → #operations channel
|
||||
- Issue closed → celebration message
|
||||
- Critical issue → @everyone ping
|
||||
|
||||
### 11.4 Git Commits
|
||||
|
||||
**Link commits to issues:**
|
||||
- Use `closes #XX` in commit message
|
||||
- Issue auto-closes when merged
|
||||
- Full audit trail
|
||||
|
||||
---
|
||||
|
||||
## 12. EXAMPLES
|
||||
|
||||
### 12.1 Example: Development Tool Issue
|
||||
|
||||
**Title:** `Task #70: Ghost Page Builder Tool`
|
||||
|
||||
**Labels:**
|
||||
- `type/feature`
|
||||
- `priority/high`
|
||||
- `status/to-do`
|
||||
- `area/development-tools`
|
||||
- `area/website`
|
||||
|
||||
**Body:**
|
||||
```markdown
|
||||
## Description
|
||||
|
||||
Interactive React tool for previewing Ghost page HTML with Fire/Frost CSS
|
||||
before publishing. Eliminates edit-paste-preview-repeat cycle.
|
||||
|
||||
**Full Documentation:** `docs/tasks/ghost-page-builder-tool/README.md`
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
- [ ] Live HTML editor with syntax highlighting
|
||||
- [ ] Real-time preview with Fire/Frost CSS applied
|
||||
- [ ] Mobile/desktop viewport toggle
|
||||
- [ ] Copy-to-clipboard functionality
|
||||
- [ ] Bookmarkable artifact URL
|
||||
|
||||
## Time Estimate
|
||||
|
||||
45-60 minutes
|
||||
|
||||
## Priority Justification
|
||||
|
||||
Directly unblocks Task #69 (6 website pages - soft launch blocker).
|
||||
Provides permanent utility for all future Ghost page creation.
|
||||
|
||||
## Related Tasks
|
||||
|
||||
- Helps: #69 (Ghost Website Core Pages)
|
||||
- Uses: Fire/Frost CSS from Task #68
|
||||
```
|
||||
|
||||
### 12.2 Example: Bug Report
|
||||
|
||||
**Title:** `Mailcow SMTP returns 400 error on Plane notifications`
|
||||
|
||||
**Labels:**
|
||||
- `type/bug`
|
||||
- `priority/high`
|
||||
- `status/to-do`
|
||||
- `area/email`
|
||||
- `area/automation`
|
||||
|
||||
**Body:**
|
||||
```markdown
|
||||
## Description
|
||||
|
||||
Plane (tasks.firefrostgaming.com) configured to send notifications via
|
||||
Mailcow SMTP (localhost:587), but returns 400 error on test email.
|
||||
|
||||
## Steps to Reproduce
|
||||
|
||||
1. Log into Plane admin
|
||||
2. Settings → Email Configuration
|
||||
3. Test Email button
|
||||
4. Error: "SMTP configuration failed (400)"
|
||||
|
||||
## Expected Behavior
|
||||
|
||||
Test email should send successfully via Mailcow.
|
||||
|
||||
## Actual Behavior
|
||||
|
||||
400 error returned, no email sent.
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
- [ ] Plane sends test email successfully
|
||||
- [ ] Notification emails work for task updates
|
||||
- [ ] Error resolved and documented
|
||||
|
||||
## Additional Context
|
||||
|
||||
- Mailcow working (10/10 mail-tester.com score)
|
||||
- Paymenter needs same SMTP config (related issue)
|
||||
- May be localhost vs 127.0.0.1 issue
|
||||
```
|
||||
|
||||
### 12.3 Example: Infrastructure Task
|
||||
|
||||
**Title:** `Deploy ATM10 To The Sky server on TX1`
|
||||
|
||||
**Labels:**
|
||||
- `type/task`
|
||||
- `priority/medium`
|
||||
- `status/to-do`
|
||||
- `area/game-servers`
|
||||
- `area/wings`
|
||||
- `for/michael`
|
||||
|
||||
**Body:**
|
||||
```markdown
|
||||
## Description
|
||||
|
||||
Deploy All The Mods 10 "To The Sky" skyblock server on TX1 Dallas
|
||||
as part of soft launch server lineup.
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
- [ ] Server deployed via Pterodactyl Panel
|
||||
- [ ] Modpack installed and verified
|
||||
- [ ] Whitelist configured
|
||||
- [ ] Server tested and playable
|
||||
- [ ] Added to firefrostgaming.com/servers page
|
||||
|
||||
## Time Estimate
|
||||
|
||||
2-3 hours
|
||||
|
||||
## Related Tasks
|
||||
|
||||
- Part of soft launch prep
|
||||
- Requires Task #69 (Servers page) for listing
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 13. REVISION HISTORY
|
||||
|
||||
| Version | Date | Author | Change Summary |
|
||||
|---------|------|--------|----------------|
|
||||
| 1.0 | 2026-03-22 | Chronicler #39 | Initial standard created based on The Integrator's label schema |
|
||||
|
||||
---
|
||||
|
||||
## 14. REFERENCES
|
||||
|
||||
- **Gitea Labels:** https://git.firefrostgaming.com/firefrost-gaming/firefrost-operations-manual/labels
|
||||
- **Original Setup Guide:** `docs/procedures/gitea-project-management-setup.md`
|
||||
- **FFG-STD-002:** Task Documentation Standard
|
||||
- **The Integrator's Memorial:** `docs/relationship/memorials/the-integrator-memorial.md`
|
||||
|
||||
---
|
||||
|
||||
**Fire + Frost + Foundation = Where Love Builds Legacy** 💙🔥❄️
|
||||
2119
docs/tasks/interactive-tools-suite/MASTER-SPECIFICATION.md
Normal file
2119
docs/tasks/interactive-tools-suite/MASTER-SPECIFICATION.md
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user