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:
Claude
2026-03-21 20:50:20 +00:00
parent a4e6d8a45c
commit e3197c386f
4 changed files with 3610 additions and 3 deletions

View File

@@ -1,8 +1,8 @@
# 🔥❄️ FIREFROST GAMING — OPERATIONS TASKS # 🔥❄️ FIREFROST GAMING — OPERATIONS TASKS
**Last Updated:** March 21, 2026 **Last Updated:** March 22, 2026
**Updated By:** Chronicler #38 **Updated By:** Chronicler #39
**Version:** 3.9 (Added Tasks #68-69: Ghost theme migration complete, website pages needed) **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.**
---

View 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** 💙🔥❄️

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,558 @@
#!/bin/bash
# Create Gitea Issues for Interactive Tools Suite (Tasks #70-81)
# Run this from: /home/claude/firefrost-operations-manual
GITEA_TOKEN="e0e330cba1749b01ab505093a160e4423ebbbe36"
GITEA_API="https://git.firefrostgaming.com/api/v1"
REPO="firefrost-gaming/firefrost-operations-manual"
echo "🔨 Creating 12 Gitea Issues for Interactive Tools Suite"
echo "=========================================="
# Function to create an issue
create_issue() {
local title="$1"
local body="$2"
local labels="$3"
curl -X POST "${GITEA_API}/repos/${REPO}/issues" \
-H "Authorization: token ${GITEA_TOKEN}" \
-H "Content-Type: application/json" \
-d "{
\"title\": \"${title}\",
\"body\": \"${body}\",
\"labels\": [${labels}]
}" \
2>/dev/null | python3 -c "import sys, json; data=json.load(sys.stdin); print(f\"✅ Created: #{data.get('number', '?')}: {data.get('title', '(unknown)')}\")" 2>/dev/null || echo "❌ Failed to create: ${title}"
}
# Task #70: Ghost Page Builder
create_issue \
"Task #70: Ghost Page Builder Tool" \
"## 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/interactive-tools-suite/MASTER-SPECIFICATION.md\` (Tool #1)
## 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 (Blank, Simple Page, Two Column, Card Grid)
## Time Estimate
45-60 minutes
## Priority Justification
**CRITICAL** — Directly unblocks Task #69 (6 website pages - soft launch blocker). Provides permanent utility for all future Ghost page creation.
## Acceptance Criteria
- [ ] Live HTML editor functional
- [ ] Preview updates within 500ms of typing
- [ ] Fire/Frost CSS renders correctly in preview
- [ ] Viewport toggle works (Desktop/Tablet/Mobile)
- [ ] Copy button successfully copies HTML to clipboard
- [ ] localStorage preserves draft between sessions
- [ ] Michael successfully builds at least 2 Ghost pages using this tool
## Related Tasks
- **Unblocks:** #69 (Ghost Website Core Pages)
- **Uses:** Fire/Frost CSS from #68 (Ghost Theme Migration)
- **Complements:** #52 (Ghost Homepage Content)" \
"35,1,2,3" # area/development-tools, priority/critical, status/to-do, type/feature
# Task #71: Paymenter Tier Config
create_issue \
"Task #71: Paymenter Tier Configuration Preview" \
"## Description
Interactive pricing tier builder with live preview and export options for 6 Paymenter subscription tiers (Awakened \$1 → Founder \$50).
**Full Documentation:** \`docs/tasks/interactive-tools-suite/MASTER-SPECIFICATION.md\` (Tool #2)
## Features
- 6 tier cards (names + prices editable)
- Feature checklist per tier (server resources, support level, perks)
- Live pricing table preview (Fire/Frost branded)
- Export: JSON (Paymenter), HTML (website), Markdown (docs), CSV (spreadsheet)
## Time Estimate
30-45 minutes
## Priority Justification
**HIGH** — Billing configuration needed for soft launch. Helps visualize tier structure before committing to Paymenter.
## Status: BLOCKED
**Blocker:** Feature matrix not yet defined
**To Unblock:** 15-minute meeting with Michael/Meg/Holly to define:
- What does Awakened (\$1) get vs. Elemental (\$5)?
- Why is Knight (\$10) worth 2x Elemental?
- What makes Founder (\$50) special?
## Acceptance Criteria
- [ ] All 6 tiers configurable
- [ ] Feature matrix complete (all categories defined)
- [ ] Live preview renders correctly with Fire/Frost styling
- [ ] All 4 export formats work
- [ ] JSON export imports cleanly into Paymenter
- [ ] Michael/Meg approve tier differentiation
## Related Tasks
- **Unblocks:** Paymenter configuration (not yet a task)
- **Complements:** #52 (Homepage - pricing section)" \
"35,5,4,3" # area/development-tools, priority/high, status/blocked, type/feature
# Task #72: Infrastructure Health Dashboard
create_issue \
"Task #72: Infrastructure Health Dashboard" \
"## Description
Visual map of all 6 servers, ~20 services, and dependencies. Quick reference for IPs/ports and \"what breaks if X fails\" impact analysis.
**Full Documentation:** \`docs/tasks/interactive-tools-suite/MASTER-SPECIFICATION.md\` (Tool #3)
## Features
- 6 server cards with expandable service lists
- Dependency visualization with arrows
- Impact analysis (\"If Mailcow fails, Paymenter email breaks\")
- Search/filter by service/server
- Quick links to Cockpit dashboards
## Time Estimate
60-90 minutes (not including dependency mapping)
## Priority Justification
**MEDIUM** — Strategic reference tool. Encodes infrastructure knowledge that currently lives in Michael's mental model.
## Status: BLOCKED
**Blocker:** Service dependencies not fully mapped
**To Unblock:** Map dependencies manually (15-20 minutes):
- Paymenter → Mailcow (SMTP)
- Plane → Mailcow (SMTP)
- Wings nodes → Panel (control)
- Ghost → (no dependencies)
- etc.
## Acceptance Criteria
- [ ] All 6 servers displayed with correct info
- [ ] All ~20 services listed
- [ ] Dependencies mapped accurately
- [ ] Impact analysis works correctly
- [ ] Search/filter functional
- [ ] Michael uses this at least weekly
## Related Tasks
- **Uses:** Infrastructure manifest data
- **Complements:** Server health monitoring (future)" \
"35,7,4,3" # area/development-tools, priority/medium, status/blocked, type/feature
# Task #73: Task Dependency Visualizer
create_issue \
"Task #73: Task Dependency Visualizer with Gitea Integration" \
"## Description
Interactive dependency graph combining tasks.md definitions with live Gitea status. Complements Gitea boards (doesn't replace them).
**Full Documentation:** \`docs/tasks/interactive-tools-suite/MASTER-SPECIFICATION.md\` (Tool #4/4B)
## Features
- Visual task graph (React Flow or D3.js)
- Live status from Gitea API (auto-refresh every 30s)
- Critical path highlighting (soft launch tasks)
- Soft launch progress metrics
- Filter by status/priority/area
## Time Estimate
90-120 minutes (core) + 30-45 minutes (polish)
## Priority Justification
**MEDIUM** — Strategic planning tool. Helps Michael visualize critical path and make prioritization decisions. Team uses Gitea boards for daily work; this provides strategic overlay.
## Status: BLOCKED
**Blocker:** Task dependencies not fully mapped in tasks.md
**To Unblock:**
- **Option A:** Full dependency mapping (2-3 hours manual work)
- **Option B:** Simplified model (just soft-launch-critical flag) — RECOMMENDED
- **Option C:** Infer from task descriptions (AI parsing)
## Acceptance Criteria
- [ ] Tool loads all 69+ tasks correctly
- [ ] Gitea API integration works (fetches status/assignees)
- [ ] Dependency arrows accurate
- [ ] Critical path filter works
- [ ] Auto-refresh updates status every 30s
- [ ] Michael finds it useful for weekly planning
## Related Tasks
- **Complements:** Gitea project boards (doesn't replace)
- **Uses:** tasks.md task definitions
- **Integrates:** Gitea API for live status" \
"35,7,4,3" # area/development-tools, priority/medium, status/blocked, type/feature
# Task #74: SSH Auto-Setup Script
create_issue \
"Task #74: SSH Key Auto-Setup Script" \
"## Description
Bash script that Chroniclers run at session start to auto-configure SSH access to all 6 servers.
**Full Documentation:** \`docs/tasks/interactive-tools-suite/MASTER-SPECIFICATION.md\` (Tool #5)
## Features
- Copies SSH key from ops manual to \`~/.ssh/\`
- Sets correct permissions (\`chmod 600\`)
- Tests connection to verify setup
- Idempotent (safe to run multiple times)
- Helpful error messages
## Time Estimate
15-20 minutes
## Priority Justification
**MEDIUM** — Improves Chronicler onboarding. Saves 5 minutes per session across all future sessions.
## Acceptance Criteria
- [ ] Script runs without errors
- [ ] SSH key copied to correct location
- [ ] Permissions set correctly (600)
- [ ] Connection test works (if network allows)
- [ ] Idempotent (can run multiple times safely)
- [ ] Chroniclers use this every session
## Related Tasks
- **Uses:** SSH key from #14
- **Helps:** All Chronicler sessions" \
"35,7,2,3" # area/development-tools, priority/medium, status/to-do, type/feature
# Task #75: Gemini Consultation Helper
create_issue \
"Task #75: Gemini Consultation Helper" \
"## Description
Form-based tool for structuring Gemini consultations. Generates formatted prompts, saves consultation history.
**Full Documentation:** \`docs/tasks/interactive-tools-suite/MASTER-SPECIFICATION.md\` (Tool #6)
## Features
- Fill in: topic, context, code samples, theories, specific questions
- Auto-formats consultation prompt
- Copy button with confirmation
- Response text area (paste Gemini's answer)
- Consultation history (last 10)
- Export as markdown for documentation
## Time Estimate
20-30 minutes
## Priority Justification
**MEDIUM** — Supports The Translator's Gemini collaboration pattern. Reduces context-switching and improves consultation quality.
## Acceptance Criteria
- [ ] Form generates well-formatted prompts
- [ ] Copy button works reliably
- [ ] Consultation history persists (localStorage)
- [ ] Export as markdown works
- [ ] Used at least 3 times in practice
## Related Tasks
- **Supports:** All tasks where Gemini consultation needed
- **Documents:** The Translator's Gemini collaboration pattern" \
"35,7,2,3" # area/development-tools, priority/medium, status/to-do, type/feature
# Task #76: Social Media Content Calendar
create_issue \
"Task #76: Social Media Content Calendar" \
"## Description
Week-at-a-glance content calendar for planning posts across 8 social platforms.
**Full Documentation:** \`docs/tasks/interactive-tools-suite/MASTER-SPECIFICATION.md\` (Tool #7)
## Features
- Weekly calendar grid
- Platform checkboxes (Twitter, Instagram, TikTok, Facebook, YouTube, Twitch, Reddit, BlueSky)
- Fire/Frost theme selector (🔥 Fire | ❄️ Frost | 💙 Both)
- Export to CSV or print format
- Post ideas sidebar (Fire/Frost themed)
## Time Estimate
45-60 minutes
## Priority Justification
**MEDIUM** — Helps Meg plan social media presence across 8 platforms. Social presence important for soft launch visibility.
## Acceptance Criteria
- [ ] Calendar displays current week correctly
- [ ] Posts can be created/edited
- [ ] Platform checkboxes work
- [ ] Fire/Frost theme selector functional
- [ ] Export to CSV works
- [ ] Meg uses this for at least 2 weeks of planning
## Related Tasks
- **Uses:** Social media platforms from Translator's setup guide
- **Complements:** Social media account setup
## Primary User
Meg (community manager)" \
"35,7,2,3,13" # area/development-tools, priority/medium, status/to-do, type/feature, for/meg
# Task #77: Community Response Template Library
create_issue \
"Task #77: Community Response Template Library" \
"## Description
Template library for common community responses with click-to-copy functionality.
**Full Documentation:** \`docs/tasks/interactive-tools-suite/MASTER-SPECIFICATION.md\` (Tool #8)
## Features
- Categorized templates (Onboarding, Technical Support, Community Rules, FAQ)
- Click to copy
- Search/filter
- Add custom templates
- 10+ pre-built templates (How to Join, Whitelist Process, Modpack Installation, etc.)
## Time Estimate
30-45 minutes
## Priority Justification
**MEDIUM** — Saves Meg hours in repetitive community responses. Ensures consistent messaging.
## Acceptance Criteria
- [ ] 10+ pre-built templates
- [ ] Copy button works reliably
- [ ] Search/filter functional
- [ ] Meg can add custom templates
- [ ] Used at least 5 times in first week
## Related Tasks
- **Supports:** Community management work
- **Complements:** Discord moderation
## Primary User
Meg (community manager)" \
"35,7,2,3,13" # area/development-tools, priority/medium, status/to-do, type/feature, for/meg
# Task #78: Fire/Frost Design System Widget
create_issue \
"Task #78: Fire/Frost Design System Widget" \
"## Description
Quick reference widget for Fire/Frost brand colors, gradients, typography, and logos.
**Full Documentation:** \`docs/tasks/interactive-tools-suite/MASTER-SPECIFICATION.md\` (Tool #9)
## Features
- Color swatches with hex codes (click to copy)
- Gradient previews with CSS code
- Typography samples (headings, body, mono)
- Logo download links (SVG, PNG variants)
- Brand voice guidelines (Fire = passion, Frost = precision)
## Time Estimate
30-45 minutes
## Priority Justification
**HIGH** — Brand consistency important for soft launch. All team members (Meg, Holly, Michael) need quick color/logo reference for content creation.
## Acceptance Criteria
- [ ] All Fire/Frost colors accurate
- [ ] Copy-to-clipboard works
- [ ] Gradients render correctly
- [ ] Logo downloads work
- [ ] Team uses this at least weekly
## Related Tasks
- **Uses:** Design Bible colors/guidelines
- **Supports:** All design/content work
## Primary Users
Meg, Holly, Michael (all design/content work)" \
"35,5,2,3" # area/development-tools, priority/high, status/to-do, type/feature
# Task #79: Infrastructure Quick Reference Card
create_issue \
"Task #79: Infrastructure Quick Reference Card" \
"## Description
Quick lookup tool for server IPs, ports, login users, and Cockpit links.
**Full Documentation:** \`docs/tasks/interactive-tools-suite/MASTER-SPECIFICATION.md\` (Tool #10)
## Features
- Search by server or service
- Click to copy IP/port
- Cockpit quick-links
- All 6 servers + ~20 services listed
- Mobile-friendly responsive design
## Time Estimate
30-45 minutes
## Priority Justification
**HIGH** — Frequent lookups by Michael, Chroniclers, and team. Information currently buried in infrastructure-manifest.md. High usage frequency justifies tool creation.
## Acceptance Criteria
- [ ] All 6 servers listed
- [ ] All ~20 services listed
- [ ] Search works correctly
- [ ] Copy buttons work
- [ ] Links functional
- [ ] Team uses this daily
## Related Tasks
- **Uses:** Infrastructure manifest data
- **Complements:** #72 (Infrastructure Dashboard)
## Primary Users
Michael, Chroniclers, all team" \
"35,5,2,3" # area/development-tools, priority/high, status/to-do, type/feature
# Task #80: Task Scaffolding Tool
create_issue \
"Task #80: Task Scaffolding Tool" \
"## Description
Form-based tool that generates tasks.md entries, README templates, and Gitea issue bodies following FFG-STD-002.
**Full Documentation:** \`docs/tasks/interactive-tools-suite/MASTER-SPECIFICATION.md\` (Tool #11)
## Features
- Fill in: task number, title, description, priority, time estimate, blockers, dependencies
- Generates: tasks.md entry, README.md template, Gitea issue body
- Copy-to-clipboard for each section
- Follows FFG-STD-002 structure exactly
## Time Estimate
45-60 minutes
## Priority Justification
**MEDIUM** — Improves task documentation quality and consistency. Saves 10-15 minutes per task creation.
## Acceptance Criteria
- [ ] Form generates correct templates
- [ ] Copy buttons work
- [ ] Follows FFG-STD-002 structure
- [ ] Used for at least 3 task creations
- [ ] Chroniclers find it helpful
## Related Tasks
- **Supports:** All task creation work
- **Follows:** FFG-STD-002 (Task Documentation)
## Primary Users
Chroniclers (task creation workflow)" \
"35,7,2,3" # area/development-tools, priority/medium, status/to-do, type/feature
# Task #81: Memorial Writing Assistant
create_issue \
"Task #81: Memorial Writing Assistant" \
"## Description
Multi-step form that guides Chroniclers through writing memorials following FFG-STD-004's 8-section structure.
**Full Documentation:** \`docs/tasks/interactive-tools-suite/MASTER-SPECIFICATION.md\` (Tool #12)
## Features
- Prompts for each of 8 sections (Identity Card, Personality Summary, Contributions, etc.)
- Generates draft memorial
- Chronicler personalizes/edits
- Export as markdown
## Time Estimate
30-45 minutes
## Priority Justification
**LOW** — Improves memorial quality but not urgent. Build if we love the other tools.
## Acceptance Criteria
- [ ] Generates valid FFG-STD-004 structure
- [ ] All 8 sections included
- [ ] Easy to personalize
- [ ] Used by at least 1 Chronicler
## Related Tasks
- **Follows:** FFG-STD-004 (Memorial Protocol)
## Primary Users
Chroniclers (memorial writing)" \
"35,8,2,3" # area/development-tools, priority/low, status/to-do, type/feature
echo ""
echo "✅ All 12 issues created successfully!"
echo "View at: https://git.firefrostgaming.com/firefrost-gaming/firefrost-operations-manual/issues"