tractatus/docs/PHASE-2-KICKOFF-CHECKLIST.md
TheFlow 19473fdbb6 docs: Phase 2 kickoff materials & domain migration to agenticgovernance.digital
This commit completes Phase 2 preparation with comprehensive kickoff materials
and migrates all domain references from mysy.digital to agenticgovernance.digital.

New Phase 2 Documents:
- PHASE-2-PRESENTATION.md: 20-slide stakeholder presentation deck
- PHASE-2-EMAIL-TEMPLATES.md: Invitation templates for 20-50 soft launch users
- PHASE-2-KICKOFF-CHECKLIST.md: Comprehensive 12-week deployment checklist (200+ tasks)
- PHASE-2-PREPARATION-ADVISORY.md: Advisory on achieving world-class UI/UX

Domain Migration (mysy.digital → agenticgovernance.digital):
- Updated CLAUDE.md project instructions
- Updated README.md
- Updated all Phase 2 planning documents (ROADMAP, COST-ESTIMATES, INFRASTRUCTURE)
- Updated governance policies (TRA-OPS-0002, TRA-OPS-0003)
- Updated framework documentation (introduction.md)
- Updated implementation progress report

Phase 2 Status:
 Budget approved: $550 USD for 3 months, $100-150/month ongoing
 Timeline confirmed: Starting NOW
 All 5 TRA-OPS-* governance policies approved
 Infrastructure decisions finalized (OVHCloud VPS Essential)
 Domain registered: agenticgovernance.digital

Ready to Begin:
- Week 1: Infrastructure deployment (VPS, DNS, SSL)
- Week 5-8: AI features (Claude API, blog, media, case studies)
- Week 9-12: Testing, governance audit, soft launch (20-50 users)

Next Steps:
1. Provision OVHCloud VPS Essential (Singapore/Australia)
2. Configure DNS for agenticgovernance.digital
3. Generate secrets (JWT, MongoDB passwords)
4. Draft 3-5 initial blog posts (human-written)
5. Begin Week 1 infrastructure deployment

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-07 13:17:42 +13:00

25 KiB

Phase 2 Kickoff Checklist

Project: Tractatus AI Safety Framework Phase: 2 - Production Deployment & AI Features Duration: 2-3 months (12 weeks) Status: APPROVED - Ready to Execute Domain: agenticgovernance.digital


Overview

This checklist provides a step-by-step guide for executing Phase 2 deployment. Complete each section sequentially to ensure smooth deployment and avoid missing critical steps.

Color Coding:

  • Complete
  • 🔄 In Progress
  • Pending (blocked or scheduled for later)
  • Not Started

Pre-Kickoff (Week 0)

Administrative Setup

  • Sign TRA-OPS- Governance Documents*

    • TRA-OPS-0001: AI Content Generation Policy
    • TRA-OPS-0002: Blog Editorial Guidelines
    • TRA-OPS-0003: Media Inquiry Response Protocol
    • TRA-OPS-0004: Case Study Moderation Standards
    • TRA-OPS-0005: Human Oversight Requirements
    • Action: Add digital signature or email confirmation to John Stroh
  • Budget Approval Documentation

    • Phase 2 total: $550 USD (~$900 NZD)
    • Monthly ongoing: $100-150 USD
    • Action: Document approval (email, spreadsheet, or formal doc)
  • Payment Methods Setup

    • OVHCloud account created
    • Payment method added (credit card or PayPal)
    • Anthropic account created (for Claude API)
    • Payment method added to Anthropic
    • Action: Verify both accounts have valid payment methods

Account Creation

  • OVHCloud Account

    • Account created: ___________
    • Email verified: ___________
    • 2FA enabled: ___________
    • Login: Save credentials securely (password manager)
  • Anthropic Claude API Account

    • Account created: ___________
    • Email verified: ___________
    • Production API key generated: ___________
    • Security: Store API key in password manager (NEVER commit to Git)
  • Domain Configuration

    • Domain: agenticgovernance.digital (already registered)
    • Registrar: OVHCloud
    • Auto-renewal enabled: ___________
    • Registrar lock enabled: ___________

Security Preparation

  • SSH Key Generation

    • Generate ED25519 key: ssh-keygen -t ed25519 -C "tractatus-deploy"
    • Key location: ~/.ssh/tractatus_ed25519
    • Public key copied: ~/.ssh/tractatus_ed25519.pub
    • Action: Save private key securely, NEVER share
  • Secret Generation

    • JWT_SECRET (64 chars): node -e "console.log(require('crypto').randomBytes(64).toString('hex'))"
    • MongoDB password (32 chars): node -e "console.log(require('crypto').randomBytes(32).toString('base64'))"
    • Action: Store in password manager, ready for .env.production
  • Email Configuration

    • ProtonMail account: john.stroh.nz@pm.me (existing)
    • ProtonBridge installed: ___________
    • SMTP credentials ready: ___________

Week 1: Infrastructure Setup

Day 1-2: Server Provisioning

  • Provision OVHCloud VPS

    • Login to OVHCloud control panel
    • Select: VPS Essential (2 vCore, 4GB RAM, 80GB SSD)
    • Region: Singapore or Australia (preferred)
    • OS: Ubuntu 22.04 LTS
    • Generate root password (save securely)
    • Provision server (5-10 minutes)
    • Server IP: ...
  • Initial Server Access

    • SSH to server as root: ssh root@<server_ip>
    • Update system: apt update && apt upgrade -y
    • Verify Ubuntu version: lsb_release -a (should be 22.04)
  • Create Non-Root User

    • Create user: adduser tractatus
    • Add to sudo: usermod -aG sudo tractatus
    • Set up SSH dir: mkdir -p /home/tractatus/.ssh && chmod 700 /home/tractatus/.ssh
    • Copy public key: ssh-copy-id tractatus@<server_ip>
    • Test login: ssh tractatus@<server_ip>
    • Verify: Can login as tractatus with SSH key

Day 3: Security Hardening

  • SSH Hardening

    • Edit config: sudo nano /etc/ssh/sshd_config
    • Set: PermitRootLogin no
    • Set: PasswordAuthentication no
    • Set: PubkeyAuthentication yes
    • Set: AllowUsers tractatus
    • Restart SSH: sudo systemctl restart sshd
    • Test: Try SSH as root (should FAIL)
  • Firewall Setup (UFW)

    • Allow SSH from your IP: sudo ufw allow from <your_ip> to any port 22
    • Allow HTTP: sudo ufw allow 80/tcp
    • Allow HTTPS: sudo ufw allow 443/tcp
    • Enable: sudo ufw enable
    • Verify: sudo ufw status verbose
    • Check: Port 22 restricted, 80/443 open
  • Fail2ban Installation

    • Install: sudo apt install -y fail2ban
    • Copy config: sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
    • Enable SSH jail: Edit /etc/fail2ban/jail.local, set [sshd] enabled = true
    • Restart: sudo systemctl restart fail2ban
    • Verify: sudo fail2ban-client status
  • Automatic Security Updates

    • Install: sudo apt install -y unattended-upgrades
    • Configure: sudo dpkg-reconfigure -plow unattended-upgrades (select Yes)
    • Verify: cat /etc/apt/apt.conf.d/20auto-upgrades

Day 4-5: Application Stack Installation

  • Install Node.js 18 LTS

    • Add repository: curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
    • Install: sudo apt install -y nodejs
    • Verify: node --version (should be v18.x.x)
    • Verify: npm --version (should be 9.x.x or higher)
  • Install MongoDB 7.x

    • Add GPG key: curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/mongodb-server-7.0.gpg
    • Add repository: echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list
    • Update: sudo apt update
    • Install: sudo apt install -y mongodb-org
    • Start: sudo systemctl start mongod
    • Enable: sudo systemctl enable mongod
    • Verify: mongosh --eval 'db.version()' (should be 7.0.x)
  • Install Nginx

    • Install: sudo apt install -y nginx
    • Start: sudo systemctl start nginx
    • Enable: sudo systemctl enable nginx
    • Verify: curl http://<server_ip> (should see "Welcome to nginx")
  • Install Additional Tools

    • Install: sudo apt install -y git curl wget vim htop certbot python3-certbot-nginx
    • Verify Git: git --version
    • Verify Certbot: certbot --version

Week 2: Application Deployment

Day 6-7: DNS Configuration

  • Configure OVHCloud DNS

    • Login to OVHCloud control panel
    • Navigate to: Domains → agenticgovernance.digital → DNS Zone
    • Add A record:
      • Type: A
      • Subdomain: @ (root)
      • Target: <server_ip>
      • TTL: 3600
    • Add A record for www:
      • Type: A
      • Subdomain: www
      • Target: <server_ip>
      • TTL: 3600
    • Add AAAA record (IPv6, if available):
      • Type: AAAA
      • Subdomain: @
      • Target: <server_ipv6>
    • Wait: DNS propagation (24-48 hours max, usually <2 hours)
  • Verify DNS Propagation

    • Check A record: dig agenticgovernance.digital +short
    • Check www: dig www.agenticgovernance.digital +short
    • Online check: https://dnschecker.org
    • Confirm: Both @ and www resolve to server IP

Day 8-9: Application Code Deployment

  • Create Application Directory

    • Create: sudo mkdir -p /var/www/tractatus
    • Ownership: sudo chown tractatus:tractatus /var/www/tractatus
    • Permissions: sudo chmod 755 /var/www/tractatus
  • Clone Repository

    • Navigate: cd /var/www/tractatus
    • Clone: git clone https://github.com/your-org/tractatus.git .
    • If private repo: Set up deploy key first
    • Verify: ls -la (should see package.json, src/, public/, etc.)
  • Install Dependencies

    • Install production: npm install --production
    • Wait: 2-5 minutes for npm install
    • Verify: ls -la node_modules/ (should have packages)
  • Configure Environment

    • Copy template: cp .env.example .env.production
    • Edit: nano .env.production
    • Set variables:
      NODE_ENV=production
      PORT=9000
      MONGODB_URI=mongodb://localhost:27017/tractatus_prod
      JWT_SECRET=<generated_64_char_secret>
      JWT_EXPIRY=7d
      CLAUDE_API_KEY=<anthropic_api_key>
      CLAUDE_MODEL=claude-sonnet-4-5-20250929
      ADMIN_EMAIL=john.stroh.nz@pm.me
      
    • Secure permissions: chmod 600 .env.production
    • Verify: cat .env.production (secrets present, file readable only by owner)
  • Build Assets

    • Build Tailwind CSS: npm run build:css
    • Verify: ls -lh public/css/tailwind.css (should be ~24KB)

Day 10: Database Initialization

  • Configure MongoDB Authentication

    • Edit config: sudo nano /etc/mongod.conf
    • Set:
      security:
        authorization: enabled
      net:
        bindIp: 127.0.0.1
        port: 27017
      
    • Restart: sudo systemctl restart mongod
    • Verify: sudo systemctl status mongod (should be running)
  • Create Database & User

    • Connect: mongosh
    • Create user:
      use tractatus_prod
      db.createUser({
        user: 'tractatus',
        pwd: '<secure_mongodb_password>',
        roles: [{ role: 'readWrite', db: 'tractatus_prod' }]
      })
      
    • Exit: exit
  • Initialize Database

    • Run migration: npm run init:db
    • Seed admin user: npm run seed:admin
    • Verify: mongosh tractatus_prod -u tractatus -p (should connect)

Week 3: Service Configuration

Day 11-12: Systemd Service

  • Create Systemd Service File

    • Create: sudo nano /etc/systemd/system/tractatus.service
    • Content:
      [Unit]
      Description=Tractatus AI Safety Framework
      After=network.target mongod.service
      
      [Service]
      Type=simple
      User=tractatus
      WorkingDirectory=/var/www/tractatus
      Environment=NODE_ENV=production
      EnvironmentFile=/var/www/tractatus/.env.production
      ExecStart=/usr/bin/node src/server.js
      Restart=on-failure
      RestartSec=10
      
      [Install]
      WantedBy=multi-user.target
      
    • Reload: sudo systemctl daemon-reload
  • Enable & Start Service

    • Enable: sudo systemctl enable tractatus.service
    • Start: sudo systemctl start tractatus.service
    • Check status: sudo systemctl status tractatus.service
    • View logs: sudo journalctl -u tractatus.service -f
    • Verify: Service running, no errors in logs
  • Test Application

    • Test locally: curl http://localhost:9000/health
    • Expected: {"status":"healthy","database":"connected"}

Day 13-14: Nginx Configuration

  • Create Nginx Site Config

    • Create: sudo nano /etc/nginx/sites-available/tractatus
    • Content: (Use configuration from PHASE-2-INFRASTRUCTURE-PLAN.md)
    • Enable site: sudo ln -s /etc/nginx/sites-available/tractatus /etc/nginx/sites-enabled/
    • Remove default: sudo rm /etc/nginx/sites-enabled/default
  • Test Nginx Configuration

    • Test config: sudo nginx -t
    • Expected: "syntax is ok", "test is successful"
  • Reload Nginx

    • Reload: sudo systemctl reload nginx
    • Check status: sudo systemctl status nginx
    • Verify: Nginx running, no errors

Day 15: SSL/TLS Setup

  • Obtain Let's Encrypt Certificate

    • Run Certbot: sudo certbot --nginx -d agenticgovernance.digital -d www.agenticgovernance.digital
    • Enter email: john.stroh.nz@pm.me
    • Agree to terms: Y
    • Share email: N (optional)
    • Redirect HTTP to HTTPS: Y (option 2)
    • Wait: Certificate issuance (30-60 seconds)
  • Verify SSL Certificate

  • Test Auto-Renewal

    • Dry run: sudo certbot renew --dry-run
    • Expected: "Congratulations, all renewals succeeded"
    • Verify timer: sudo systemctl list-timers | grep certbot

Week 4: Monitoring & Testing

Day 16-17: Logging & Monitoring

  • Configure Log Rotation

    • Create: sudo nano /etc/logrotate.d/tractatus
    • Content:
      /var/log/tractatus/*.log {
          daily
          rotate 7
          compress
          delaycompress
          missingok
          notifempty
          create 0640 tractatus tractatus
      }
      
    • Test: sudo logrotate -f /etc/logrotate.d/tractatus
  • Create Healthcheck Script

    • Create: sudo nano /usr/local/bin/tractatus-healthcheck.sh
    • Content: (Use script from PHASE-2-INFRASTRUCTURE-PLAN.md)
    • Make executable: sudo chmod +x /usr/local/bin/tractatus-healthcheck.sh
    • Test: /usr/local/bin/tractatus-healthcheck.sh
  • Configure Cron for Monitoring

    • Edit crontab: sudo crontab -e
    • Add: */5 * * * * /usr/local/bin/tractatus-healthcheck.sh
    • Verify: sudo crontab -l

Day 18-19: Backup Configuration

  • Create Backup Script

    • Create: nano ~/backup-mongodb.sh
    • Content: (Use script from PHASE-2-INFRASTRUCTURE-PLAN.md)
    • Make executable: chmod +x ~/backup-mongodb.sh
    • Test: ./backup-mongodb.sh
    • Verify: ls -lh /var/backups/tractatus/mongodb/
  • Schedule Daily Backups

    • Edit crontab: crontab -e
    • Add: 0 2 * * * /home/tractatus/backup-mongodb.sh >> /var/log/tractatus/backup.log 2>&1
    • Verify: crontab -l

Day 20-21: Production Testing

Milestone 1 Complete: Infrastructure deployed, site live at https://agenticgovernance.digital


Week 5-8: AI Features Implementation

Week 5: Claude API Integration

  • API Key Configuration

    • Add to .env.production: CLAUDE_API_KEY=<key>
    • Restart service: sudo systemctl restart tractatus.service
    • Verify: No errors in logs
  • Rate Limiting Setup

    • Configure in ClaudeAPI.service.js:
      • Requests/minute: 60
      • Tokens/day: 500,000
      • Monthly budget: $200
    • Test limits: (unit test)
  • Cost Monitoring

    • Create dashboard view: /admin/api-usage
    • Show: tokens used today, cost estimate, budget remaining
    • Alert threshold: 80% of monthly budget
    • Test: View dashboard, verify metrics

Week 6: Blog Curation System

  • Blog Database Schema

    • Create BlogPost model: src/models/BlogPost.model.js
    • Fields: title, slug, content, author, published_at, ai_assisted, etc.
    • Indexes: slug (unique), published_at, category
  • Topic Suggestion Pipeline

    • Implement: src/services/BlogCuration.service.js
    • Method: suggestTopics(newsFeeds) → topics[]
    • Test: Generate 5-10 topics from mock data
  • Outline Generation

    • Method: generateOutline(topic) → outline
    • Test: Generate outline for approved topic
  • Blog UI

    • Create: public/blog/index.html (list view)
    • Create: public/blog/[slug].html (single post view)
    • Create: public/blog/feed.xml (RSS)
    • Test: View blog list, single post, RSS feed
  • Seed Content (3-5 posts)

    • Post 1: "Introducing the Tractatus Framework"
    • Post 2: "The 27027 Incident: A Case Study"
    • Post 3: "Why AI Safety Needs Architecture"
    • Post 4: "Boundary Enforcement in Practice"
    • Post 5: "Human Oversight: Not Optional"
    • Publish: All posts live on blog

Week 7: Media Inquiry Triage

  • Media Inquiry Form

    • Create: public/contact.html
    • Fields: name, email, organization, message, type (press/academic/commercial)
    • Validation: Required fields, email format
  • AI Classification

    • Implement: src/services/MediaTriage.service.js
    • Method: classifyInquiry(text) → {category, priority, confidence}
    • Test: Classify sample inquiries
  • Priority Scoring

    • Method: calculatePriority(inquiry) → score (0.0-1.0)
    • Factors: reach, relevance, urgency, alignment
    • Test: Verify scores for sample inquiries
  • Draft Response Generation

    • Method: generateDraft(inquiry, category) → draft
    • Templates: Press, Academic, Commercial, Community
    • Test: Generate drafts for each category
  • Admin Triage Dashboard

    • View: /admin/media-triage
    • Features: List inquiries, view AI analysis, approve/edit/reject drafts
    • Test: Submit inquiry, review in dashboard

Week 8: Case Study Portal

  • Case Study Form

    • Create: public/submit-case-study.html
    • Fields: title, summary, date, AI system, source URL, failure mode, description, consent
    • Validation: Required fields, URL format, consent checkbox
  • AI Relevance Analysis

    • Implement: src/services/CaseStudyAnalysis.service.js
    • Method: assessRelevance(submission) → {relevant, confidence, reasoning}
    • Test: Analyze sample submissions
  • Tractatus Mapping

    • Method: mapToFramework(submission) → {components[], prevention_strategy}
    • Test: Map sample failures to framework components
  • Moderation Queue

    • View: /admin/case-studies
    • Features: List submissions, view AI analysis, approve/reject/request changes
    • Test: Submit case study, review in queue
  • Public Case Study Viewer

    • Create: public/case-studies/index.html (list)
    • Create: public/case-studies/[slug].html (single)
    • Test: View published case studies
  • Seed Case Studies (3-5 examples)

    • Case 1: "The 27027 Incident" (instruction override)
    • Case 2: "ChatGPT Medical Hallucination" (boundary violation)
    • Case 3: "GitHub Copilot Code Injection" (context pressure)
    • Case 4: "Bing Chat Sydney Persona" (metacognitive failure)
    • Case 5: "Jasper AI Copyright Violation" (boundary violation)
    • Publish: All case studies live

Milestone 2 Complete: All AI features operational, human oversight enforced


Week 9-10: Polish & Testing

Week 9: Governance Audit

  • Review All AI Prompts

    • Blog topic suggestion prompt: Aligned with TRA-OPS-0002? ___
    • Blog outline prompt: Aligned with TRA-OPS-0002? ___
    • Media classification prompt: Aligned with TRA-OPS-0003? ___
    • Case study analysis prompt: Aligned with TRA-OPS-0004? ___
    • Action: Update prompts if needed
  • Test Boundary Enforcement

    • Attempt to auto-publish blog post (should FAIL) ___
    • Attempt to auto-send media response (should FAIL) ___
    • Attempt to auto-publish case study (should FAIL) ___
    • Verify: All blocked by BoundaryEnforcer
  • Audit Trail Verification

    • Check database: All AI decisions logged? ___
    • Fields present: input, output, human_decision, reviewer, timestamp? ___
    • Retention: 2-year policy documented? ___

Week 10: End-to-End Testing

  • User Journey Testing

    • Journey 1: Researcher explores docs, views demos, submits feedback
    • Journey 2: Implementer reviews API docs, tests integration, submits case study
    • Journey 3: Advocate reads blog, understands principles, shares on social media
    • Verify: All journeys complete without errors
  • Mobile Testing

    • Test on iPhone (Safari)
    • Test on Android (Chrome)
    • Verify: Responsive design, readable text, functional buttons
    • Target: All pages usable on mobile
  • Browser Compatibility

    • Test on Chrome (latest)
    • Test on Firefox (latest)
    • Test on Safari (latest)
    • Test on Edge (latest)
    • Verify: No console errors, all features work
  • Accessibility Re-Audit

    • Run WAVE: https://wave.webaim.org
    • Run Lighthouse: Accessibility score 100
    • Manual keyboard navigation: All interactive elements accessible
    • Screen reader test: NVDA or VoiceOver
    • Target: WCAG AA compliant
  • Load Testing

    • Tool: k6 or Artillery
    • Scenario: 100 concurrent users, 5-minute test
    • Metrics: Response time <3s, error rate <1%
    • Verify: System handles load without degradation

Week 11-12: Soft Launch

Week 11: Launch Preparation

  • Finalize Soft Launch List

    • Identify 8-12 researchers (names + emails)
    • Identify 8-12 implementers (names + emails)
    • Identify 4-6 advocates (names + emails)
    • Total: 20-30 users
  • Create Feedback Survey

    • Tool: Google Forms or TypeForm
    • Questions: (Use template from PHASE-2-EMAIL-TEMPLATES.md)
    • Test: Complete survey yourself, verify all questions work
    • Link: _________________________
  • Prepare Invitation Emails

    • Personalize Template A (Researcher) for each researcher
    • Personalize Template B (Implementer) for each implementer
    • Personalize Template C (Advocate) for each advocate
    • Review: All names correct, specific reasons included
  • Platform Final Check

    • All blog posts published? ___
    • All case studies published? ___
    • All demos working? ___
    • Feedback form linked? ___
    • No broken links? ___
    • Status: Ready for users

Week 12: Launch & Feedback

  • Send Invitations

    • Send all emails (BCC for privacy)
    • Track: Spreadsheet with sent date, opened (if tracked), responded
    • Date sent: _____________
  • Monitor Platform

    • Daily: Check server logs for errors
    • Daily: Review uptime monitoring (target: 99%+)
    • Daily: Check feedback form responses
    • Action: Respond to issues within 24 hours
  • Respond to Feedback

    • Thank all respondents within 48 hours
    • Address critical issues immediately
    • Log all feedback themes in spreadsheet
    • Target: >30% response rate (9+ responses from 30 invitations)
  • Follow-Up Reminders

    • Week 1: Send reminder (Template E)
    • Week 2: Send final reminder (Template G)
    • Track: Response rate after each reminder
  • Compile Feedback Report

    • Themes: What users liked, what confused them, what's missing
    • Quantitative: Satisfaction scores, recommendation rate
    • Action items: Prioritized list of improvements
    • Share: Email summary to all participants

Milestone 3 Complete: Soft launch complete, feedback collected


Post-Phase 2: Transition to Phase 3

Evaluation

  • Review Success Criteria

    • Technical success: Uptime 99%+, performance <3s, zero vulnerabilities ___
    • Governance success: 100% human approval, zero violations ___
    • User success: 20-50 users, 4+/5 rating, 50+ readers/post ___
    • Business success: Costs <$150/month, zero breaches ___
  • Decision: Proceed to Phase 3?

    • All criteria met? ___
    • Critical bugs resolved? ___
    • Positive user feedback? ___
    • John Stroh approval? ___
    • Decision: GO / NO-GO / EXTEND

Knowledge Transfer

  • Document Lessons Learned

    • What went well? ___
    • What didn't go well? ___
    • What would we do differently? ___
    • Action: Create Phase 2 retrospective document
  • Update Documentation

    • Update CLAUDE.md with Phase 2 completion
    • Update README.md if needed
    • Archive planning documents
    • Status: Documentation current

Handoff (if hiring admin reviewer)

  • Admin Onboarding
    • Share TRA-OPS-* governance documents
    • Train on moderation workflows
    • Grant access to admin dashboard
    • Shadow for 2 weeks
    • Status: Admin ready for independent work

Emergency Contacts

Server Issues:

  • OVHCloud Support: support.ovh.com
  • Server IP: ...
  • SSH: ssh tractatus@<server_ip>

API Issues:

Domain/DNS Issues:

Security Incidents:

  • Immediate: sudo systemctl stop tractatus.service (shut down application)
  • Review logs: sudo journalctl -u tractatus.service -n 1000
  • Contact: John Stroh (john.stroh.nz@pm.me)

Progress Tracking

Week-by-Week Summary:

Week Focus Status Notes
0 Pre-Kickoff Administrative setup, accounts
1 Infrastructure Server provisioning, security
2 Deployment DNS, app code, database
3 Services Systemd, Nginx, SSL
4 Monitoring Logs, backups, testing
5 Claude API Integration, rate limits
6 Blog System Curation pipeline, seed content
7 Media Triage Forms, classification, dashboard
8 Case Studies Submissions, analysis, moderation
9 Governance Audit, boundary tests
10 Testing E2E, mobile, accessibility
11 Prep Launch User list, survey, emails
12 Soft Launch Send invitations, collect feedback

Completion Percentage: ___% (update weekly)


Revision History

Date Version Changes
2025-10-07 1.0 Initial Phase 2 kickoff checklist

Checklist Owner: John Stroh Last Updated: 2025-10-07 Next Review: Weekly during Phase 2 execution