Compare commits

..

9 Commits

Author SHA1 Message Date
Timmy (STEP35 FREE BURN)
1dcdafbb51 docs(memory-providers): add lock-in analysis & vendor evaluation for issue #419
Some checks failed
Architecture Lint / Linter Tests (pull_request) Successful in 31s
Smoke Test / smoke (pull_request) Failing after 30s
Validate Config / YAML Lint (pull_request) Failing after 21s
Validate Config / JSON Validate (pull_request) Successful in 27s
Validate Config / Python Syntax & Import Check (pull_request) Failing after 1m11s
Validate Config / Python Test Suite (pull_request) Has been skipped
Validate Config / Shell Script Lint (pull_request) Failing after 1m17s
Validate Config / Cron Syntax Check (pull_request) Successful in 12s
Validate Config / Deploy Script Dry Run (pull_request) Successful in 11s
Validate Config / Playbook Schema Validation (pull_request) Successful in 31s
PR Checklist / pr-checklist (pull_request) Failing after 5m26s
Architecture Lint / Lint Repository (pull_request) Failing after 26s
Research spike: compare Hermes Agent's 8 external memory providers
against the sovereign MemPalace implementation (Epic #367, PR #374).

Deliverables:
  • MEMORY_PROVIDERS_EVALUATION.md — full overlap analysis,
    vendor lock-in tiering (zero/partial/full), gap assessment
    vs MemPalace, and go/no-go recommendations per provider.
  • docs/memory-providers-lockin.md — concise guardrail for
    future PRs, referencing #419 as the governing decision.

Verdict: MemPalace is sufficient. External cloud-only providers
(Supermemory, RetainDB) are categorically rejected. Self-hosted
options (Hindsight, OpenViking, Mem0) may be trialed but are
not needed unless a proven feature gap emerges.

Closes #419
2026-04-30 20:04:17 -04:00
Rockachopa
b565db6d07 Revert 'feat(training): add prompt-enhancement generator (step35 #575)' — undone for proper branch flow 2026-04-30 20:04:17 -04:00
Rockachopa
ef38028ce7 feat(training): add prompt-enhancement generator for 3K terse→rich pairs (step35 #575) 2026-04-30 20:04:17 -04:00
Rockachopa
3a0b185333 STEP35-476 patch: use scripts/ path for dispatch_router
- dispatch_router.py resides in scripts/ (existing dir)
- Updated orchestrator to call ../scripts/dispatch_router.py
2026-04-30 20:04:17 -04:00
Rockachopa
5ac944c5e2 STEP35-476: Integrate dispatch_router into orchestrator triage loop
- Added dispatch_router.py call for agent assignment routing
- Added dispatch decision logging to $LOG_DIR/dispatch_decisions.log
- Fall back to 'claude' if router fails
- Logs agent, score, category, reason per dispatch
2026-04-30 20:04:17 -04:00
Rockachopa
fb36197e8c feat(backup): add automated Gitea daily backup and recovery runbook
- Add bin/gitea-backup.sh: daily backup script using gitea dump
- Add cron/vps/gitea-daily-backup.yml: Hermes cron job (2 AM daily)
- Add docs/backup-recovery-runbook.md: complete recovery procedures

Addresses [AUDIT][RISK] Single-node VPS is a single point of failure.
Closes #481
2026-04-30 20:04:17 -04:00
514583ea03 feat(wizards): resurrect Timmy, Ezra, Allegro from golden state configs
Remove MiMo V2 Pro (nous) provider from all wizard configs — it was added
during the evaluation attempt (#447) and "config-murdered" the fleet.
Restore the canonical golden state provider chain:
  Kimi K2.5 → Gemini 2.5 Pro (OpenRouter) → Ollama gemma4

Changes:
- Create wizards/timmy/config.yaml (was missing — Timmy resurrected)
- Update wizards/allegro/config.yaml: strip nous, normalize to golden state
- Update wizards/ezra/config.yaml: strip nous, preserve max_turns: 90
- Update wizards/bezalel/config.yaml: strip nous, add openrouter+ollama,
  preserve custom telegram/webhook, personality kawaii, and session_reset
- All wizards now have no Anthropic references and correct provider chain

Acceptance criteria met:
- [x] All wizards resurrected from checked-in configs (Timmy created, others cleaned)
- [x] Provider chain verified: Kimi K2.5 → Gemini 2.5 Pro → Ollama gemma4
- [x] No Anthropic/nous/mimo references in any running config
- [ ] request_log telemetry (handled by thin_config Ansible, blocking dep done)
- [ ] Ezra Telegram token propagation (infrastructure, out of scope for this PR)
- [ ] Duplicate agents resolution (separate fleet audit issue, explicitly non-blocking)

Closes #448
2026-04-30 20:04:17 -04:00
8421351bfe fix: [CONTRACTION] Skills and memory hygiene pass — collapse duplicates (#881) (#958)
Co-authored-by: Timmy Time <timmy@alexanderwhitestone.ai>
Co-committed-by: Timmy Time <timmy@alexanderwhitestone.ai>
2026-04-30 20:04:17 -04:00
STEP35 Burn Bot
4426cfcbfa docs(research): add MemPalace vs Hermes memory providers overlap analysis
Some checks failed
Validate Config / Cron Syntax Check (pull_request) Successful in 14s
Validate Config / Deploy Script Dry Run (pull_request) Successful in 11s
Validate Config / Playbook Schema Validation (pull_request) Successful in 23s
Architecture Lint / Lint Repository (pull_request) Failing after 18s
PR Checklist / pr-checklist (pull_request) Successful in 2m50s
Architecture Lint / Linter Tests (pull_request) Successful in 17s
Smoke Test / smoke (pull_request) Failing after 19s
Validate Config / YAML Lint (pull_request) Failing after 17s
Validate Config / JSON Validate (pull_request) Successful in 16s
Validate Config / Python Syntax & Import Check (pull_request) Failing after 54s
Validate Config / Python Test Suite (pull_request) Has been skipped
Validate Config / Shell Script Lint (pull_request) Failing after 1m0s
- Assesses all 8 Hermes external memory plugins (vendor lock-in tiers)
- Documents MemPalace capabilities already in main (sovereign_store + enforcer)
- Identifies overlap gaps: trust scoring, entity resolution, cross-synthesis
- Recommends short-term: enable Holographic provider wired to retrieval enforcer
- Recommends medium-term: Hindsight local as backend for knowledge-graph features
- Clarifies MemPalace as orchestration layer, not just storage

Refs: #419
Closes #419
2026-04-29 03:15:04 -04:00
13 changed files with 1072 additions and 628 deletions

87
bin/gitea-backup.sh Normal file
View File

@@ -0,0 +1,87 @@
#!/bin/bash
# Gitea Daily Backup Script
# Uses Gitea's native dump command to create automated backups of repositories and SQLite databases.
# Designed to run on the VPS (Ezra) as part of a daily cron job.
#
# Configuration via environment variables:
# GITEA_BIN Path to gitea binary (default: auto-detect)
# GITEA_BACKUP_DIR Directory for backup archives (default: /var/backups/gitea)
# GITEA_BACKUP_RETENTION Days to retain backups (default: 7)
# GITEA_BACKUP_LOG Log file path (default: /var/log/gitea-backup.log)
set -euo pipefail
GITEA_BIN="${GITEA_BIN:-$(command -v gitea 2>/dev/null || echo "/usr/local/bin/gitea")}"
BACKUP_DIR="${GITEA_BACKUP_DIR:-/var/backups/gitea}"
RETENTION_DAYS="${GITEA_BACKUP_RETENTION:-7}"
DATE="$(date +%Y-%m-%d_%H%M%S)"
BACKUP_FILE="${BACKUP_DIR}/gitea-backup-${DATE}.tar.gz"
LOG_FILE="${GITEA_BACKUP_LOG:-/var/log/gitea-backup.log}"
mkdir -p "${BACKUP_DIR}"
log() {
echo "[$(date '+%Y-%m-%d %H:%M:%S')] $*" | tee -a "${LOG_FILE}"
}
log "=== Starting Gitea daily backup ==="
# Verify gitea binary exists
if [ ! -x "${GITEA_BIN}" ]; then
log "ERROR: Gitea binary not found at ${GITEA_BIN}"
log "Set GITEA_BIN environment variable to the gitea binary path (e.g., /usr/bin/gitea)"
exit 1
fi
# Detect Gitea WORK_PATH
WORK_PATH=""
APP_INI=""
for path in /etc/gitea/app.ini /home/git/gitea/custom/conf/app.ini ~/gitea/custom/conf/app.ini; do
if [ -f "$path" ]; then
APP_INI="$path"
break
fi
done
if [ -n "$APP_INI" ]; then
# Parse [app] WORK_PATH = /var/lib/gitea
WORK_PATH=$(sed -n 's/^[[:space:]]*WORK_PATH[[:space:]]*=[[:space:]]*//p' "$APP_INI" | head -1)
log "Detected WORK_PATH from app.ini: ${WORK_PATH}"
fi
# Fallback detection
if [ -z "$WORK_PATH" ]; then
for d in /var/lib/gitea /home/git/gitea /srv/gitea /opt/gitea; do
if [ -d "$d" ]; then
WORK_PATH="$d"
break
fi
done
log "Inferred WORK_PATH: ${WORK_PATH:-not found}"
fi
if [ -z "$WORK_PATH" ]; then
log "ERROR: Could not determine Gitea WORK_PATH. Set GITEA_WORK_PATH manually."
exit 1
fi
# Perform gitea dump
# Flags: --work-path sets the Gitea working directory, --file writes dump to tar.gz
log "Running: gitea dump --work-path ${WORK_PATH} --file ${BACKUP_FILE}"
"${GITEA_BIN}" dump --work-path "${WORK_PATH}" --file "${BACKUP_FILE}" 2>>"${LOG_FILE}"
if [ $? -ne 0 ]; then
log "ERROR: gitea dump failed — check ${LOG_FILE} for details"
exit 1
fi
FILE_SIZE=$(du -h "${BACKUP_FILE}" | cut -f1)
log "Backup created: ${BACKUP_FILE} (${FILE_SIZE})"
# Prune old backups (keep last N days)
find "${BACKUP_DIR}" -name "gitea-backup-*.tar.gz" -type f -mtime +$((${RETENTION_DAYS}-1)) -delete 2>/dev/null || true
log "Pruned backups older than ${RETENTION_DAYS} days"
log "=== Backup completed successfully ==="
exit 0

View File

@@ -129,20 +129,42 @@ Preserved by timmy-orchestrator to prevent loss." 2>/dev/null && git p
# Auto-assignment is opt-in because silent queue mutation resurrects old state.
if [ "$unassigned_count" -gt 0 ]; then
if [ "$AUTO_ASSIGN_UNASSIGNED" = "1" ]; then
log "Assigning $unassigned_count issues to claude..."
log "Assigning $unassigned_count issues via dispatch router..."
DISPATCH_LOG="$LOG_DIR/dispatch_decisions.log"
while IFS= read -r line; do
local repo=$(echo "$line" | sed 's/.*REPO=\([^ ]*\).*/\1/')
local num=$(echo "$line" | sed 's/.*NUM=\([^ ]*\).*/\1/')
curl -sf -X PATCH "$GITEA_URL/api/v1/repos/$repo/issues/$num" \
-H "Authorization: token $GITEA_TOKEN" \
-H "Content-Type: application/json" \
-d '{"assignees":["claude"]}' >/dev/null 2>&1 && \
log " Assigned #$num ($repo) to claude"
local repo=$(echo "$line" | sed 's/.*REPO=\([^ ]*\).*//')
local num=$(echo "$line" | sed 's/.*NUM=\([^ ]*\).*//')
local title=$(echo "$line" | sed 's/.*TITLE=//')
# Call dispatch_router to pick best agent
local route_json
route_json=$(python3 "$SCRIPT_DIR/../scripts/dispatch_router.py" "$title" "$repo" 2>/dev/null) || route_json=""
local recommended_agent="claude" # fallback
local route_category="unknown"
local route_score="0"
local route_reason="fallback"
if [ -n "$route_json" ]; then
recommended_agent=$(echo "$route_json" | python3 -c "import sys,json; print(json.load(sys.stdin).get('recommended_agent','claude'))" 2>/dev/null || echo "claude")
route_score=$(echo "$route_json" | python3 -c "import sys,json; print(json.load(sys.stdin).get('score',0))" 2>/dev/null || echo "0")
route_category=$(echo "$route_json" | python3 -c "import sys,json; print(json.load(sys.stdin).get('category','unknown'))" 2>/dev/null || echo "unknown")
route_reason=$(echo "$route_json" | python3 -c "import sys,json; print(json.load(sys.stdin).get('reason',''))" 2>/dev/null || echo "")
fi
# Assign via API
curl -sf -X PATCH "$GITEA_URL/api/v1/repos/$repo/issues/$num" \\
-H "Authorization: token $GITEA_TOKEN" \\
-H "Content-Type: application/json" \\
-d "{\"assignees\":[\"$recommended_agent\"]}" >/dev/null 2>&1 && \\
log " Assigned #$num ($repo) to $recommended_agent [score=$route_score cat=$route_category]"
# Log dispatch decision for audit (RFC3339 timestamp)
printf '%s\t%s\t%s\t%s\t%s\t%s\t%s\n' \
"$(date -u +"%Y-%m-%dT%H:%M:%SZ")" "$num" "$repo" "$title" "$recommended_agent" "$route_score" "$route_category|$route_reason" \
>> "$DISPATCH_LOG"
done < "$state_dir/unassigned.txt"
else
log "Auto-assign disabled: leaving $unassigned_count unassigned issues untouched"
fi
fi
else fi
# Phase 2: PR review via Timmy (LLM)
if [ "$pr_count" -gt 0 ]; then

View File

@@ -0,0 +1,9 @@
- name: Daily Gitea Backup
schedule: '0 2 * * *' # 2:00 AM daily
tasks:
- name: Run Gitea daily backup
shell: bash ~/.hermes/bin/gitea-backup.sh
env:
GITEA_BIN: /usr/local/bin/gitea
GITEA_BACKUP_DIR: /var/backups/gitea
GITEA_BACKUP_RETENTION: "7"

View File

@@ -0,0 +1,155 @@
# Gitea Backup & Recovery Runbook
**Last updated:** 2026-04-30
**Scope:** Single-node VPS (Ezra, 143.198.27.163) running Gitea
**Backup Strategy:** Automated daily full dumps via `gitea dump`
---
## What Gets Backed Up
| Component | Method | Frequency | Retention |
|-----------|--------|-----------|-----------|
| All Gitea repositories (bare git dirs) | `gitea dump --file` | Daily at 2:00 AM | 7 days |
| SQLite databases (gitea.db, indexer.db, etc.) | Included in dump | Daily | 7 days |
| Attachments, avatars, hooks | Included in dump | Daily | 7 days |
**Backup location:** `/var/backups/gitea/gitea-backup-YYYY-MM-DD_HHMMSS.tar.gz`
**Log file:** `/var/log/gitea-backup.log`
---
## Backup Architecture
The backup script `bin/gitea-backup.sh` runs daily via Hermes cron (`cron/vps/gitea-daily-backup.yml`). It:
1. Locates the Gitea `WORK_PATH` by reading `/etc/gitea/app.ini` or falling back to common locations (`/var/lib/gitea`, `/home/git/gitea`)
2. Invokes `gitea dump --work-path <path> --file <backup-tar.gz>` — Gitea's native, consistent snapshot mechanism
3. Prunes archives older than 7 days
4. Logs all operations to `/var/log/gitea-backup.log`
**Prerequisites on the VPS:**
- Gitea binary available at `/usr/local/bin/gitea` (or set `GITEA_BIN` env var)
- `gitea dump` command must be available (Gitea ≥ 1.12)
- SSH access to the VPS for manual recovery operations
- Sufficient disk space in `/var/backups/gitea` (typical dump: ~210 GB depending on repo count/size)
---
## Recovery Time Objective (RTO) & Recovery Point Objective (RPO)
| Metric | Estimate |
|--------|----------|
| **RPO** (data loss window) | ≤ 24 hours (last daily backup) |
| **RTO** (time to restore) | **~45 minutes** (cold restore from backup tarball) |
| **Downtime impact** | Gitea offline during restore (~20 min) |
---
## Step-by-Step Recovery Procedure
### Phase 1 — Assess & Prepare (5 min)
1. SSH into Ezra VPS: `ssh root@143.198.27.163`
2. Stop Gitea so files are quiescent:
```bash
systemctl stop gitea
```
3. Confirm current Gitea data directory (for reference):
```bash
gitea --work-path /var/lib/gitea --config /etc/gitea/app.ini dump --help 2>&1
# Or check app.ini for WORK_PATH
cat /etc/gitea/app.ini | grep '^WORK_PATH'
```
### Phase 2 — Restore from Backup (20 min)
4. Choose the backup tarball to restore from:
```bash
ls -lh /var/backups/gitea/
# Pick the most recent: gitea-backup-2026-04-29_020001.tar.gz
```
5. **Optional: Move current data aside** (safety copy):
```bash
mv /var/lib/gitea /var/lib/gitea.bak-$(date +%s)
```
6. Extract the backup in place:
```bash
mkdir -p /var/lib/gitea
tar -xzf /var/backups/gitea/gitea-backup-YYYY-MM-DD_HHMMSS.tar.gz -C /var/lib/gitea --strip-components=1
```
*Note:* `gitea dump` archives contain a single top-level directory `gitea-dump-<timestamp>`. The `--strip-components=1` puts its contents directly into `/var/lib/gitea`.
7. Set correct ownership (typically `git:git`):
```bash
chown -R git:git /var/lib/gitea
```
### Phase 3 — Restart & Validate (15 min)
8. Start Gitea:
```bash
systemctl start gitea
```
9. Wait 30 seconds, then verify:
```bash
systemctl status gitea
# Check HTTP endpoint
curl -s -o /dev/null -w '%{http_code}' http://localhost:3000/ # Should be 200
```
10. Log into Gitea UI and spot-check:
- Home page loads
- A few repositories are accessible
- Attachments (avatars) render
- Recent commits visible
11. If the web UI works but indices are stale, rebuild them (wait for background jobs to process):
```bash
gitea admin index rebuild-repo --all
```
### Post-Restore Checklist
- [ ] Admin UI reachable at `https://forge.alexanderwhitestone.com`
- [ ] Sample PRs/milestones/labels present
- [ ] Repository clone via SSH works: `git clone git@forge.alexanderwhitestone.com:Timmy_Foundation/timmy-config.git`
- [ ] Check backup script health: `cat /var/log/gitea-backup.log | tail -20`
- [ ] Re-enable any disabled integrations (webhooks, CI/CD runners)
- [ ] Notify the fleet: post to relevant channels confirming operational status
---
## Known Issues & Workarounds
| Symptom | Likely cause | Fix |
|---------|--------------|-----|
| `gitea: command not found` | Binary at non-standard path | Set `GITEA_BIN=/path/to/gitea` in cron env |
| `Permission denied` on backup dir | Cron user lacks write access to `/var/backups` | `mkdir /var/backups/gitea && chown root:root /var/backups/gitea` |
| Restore fails: `"database or disk is full"` | Insufficient space on `/var/lib/gitea` | Expand disk or clean up old data first; backups require ~1.5x live data size |
| Old backup tarballs not deleting | Retention cron not firing | Check `systemctl status hermes-cron` and cron logs |
---
## Off-Site Replication (Future Work)
This backup is **on-site only** (same VPS). For true resilience, replicating to a secondary location is recommended:
- **Option A — rsync to second VPS** (Push nightly to `backup@backup-alexanderwhitestone.com:/backups/gitea/`)
- **Option B — S3-compatible bucket** with lifecycle policy
- **Option C — GitHub mirror of each repo** using `git push --mirror` (already considered in issue #481 broader work)
Current scope: single-VPS backup only (single point of failure mitigated but not eliminated).
---
## Related Documentation
- `bin/gitea-backup.sh` — backup script source
- `cron/vps/gitea-daily-backup.yml` — Hermes cron definition
- Gitea official docs: <https://docs.gitea.com/administration/backup-and-restore>
- Hermes cron: <https://hermes-agent.nousresearch.com/docs>

View File

@@ -0,0 +1,204 @@
# Hermes Memory Providers vs MemPalace — Overlap Analysis & Vendor Lock-in Report
**Issue:** [#419](https://forge.alexanderwhitestone.com/Timmy_Foundation/timmy-config/issues/419)
**Created:** 2026-04-29
**Status:** Draft
**Author:** STEP35 Research Spike
---
## Executive Summary
Hermes Agent ships with **8 external memory provider plugins**. We already have a custom **MemPalace** system (via `sovereign_store.py`, PR #374) that provides SQLite + FTS5 + HRR vector storage with retrieval-order enforcement.
**Core question:** Do we need an external provider, or does MemPalace cover our needs? Are we creating confusion by running multiple memory systems?
**Recommendation (short term):** Enable **Holographic** as the Hermes provider, then wire the retrieval enforcer to use it. Same tech stack (SQLite + HRR), zero new dependencies, adds trust scoring + contradiction detection.
**Recommendation (medium term):** Integrate **Hindsight (local)** as backend when knowledge-graph capabilities are needed (entity resolution, cross-memory synthesis). MIT license, Docker self-hosted, Ollama-compatible.
**MemPalace is not irrelevant** — its retrieval-order enforcement, wake-up protocol, spatial metaphor, and promotion filters are *orchestration logic* that no external provider supplies. The providers are *storage backends*. MemPalace is the *discipline layer* on top.
---
## Background
- **MemPalace Epic:** #367
- **Sovereign Store PR:** #380 (merged to main)
- **Hermes Memory Providers Docs:** https://hermes-agent.nousresearch.com/docs/user-guide/features/memory-providers
### Current Memory Stack (Hermes built-in)
1. `MEMORY.md` — flat file, always active
2. `USER.md` — user profile, always active
3. External provider plugin (user's choice, one at a time)
### What MemPalace Adds
- `sovereign_store.py`: SQLite + FTS5 + HRR vectors
- `retrieval_enforcer.py`: L0→L1→L2→L3→L4 retrieval order
- `wakeup.py`: Palace-first boot (identity + top rooms in 238 tokens)
- `promotion.py`: Quality gates before writing to durable memory
- `scratchpad.py`: Ephemeral session context
- `identity.txt` + `mempalace.yaml`: Persistent identity + spatial rooms
- Nightly re-mine cron (Bezalel pattern)
---
## The 8 Hermes Memory Providers — Vendor Lock-in Assessment
### Zero Lock-in (fully self-hosted, open source)
| Provider | License | Storage | Cost | Dependencies | Unique Capability |
|----------|---------|---------|------|--------------|-------------------|
| **Holographic** | Ships w/ Hermes (MIT) | Local SQLite | Free | None | HRR algebra, trust scoring, contradiction detection |
| **Hindsight (local)** | MIT | Embedded PostgreSQL (Docker) | Free | Docker + LLM (Ollama ok) | Knowledge graph, 4-network memory, `reflect` synthesis |
| **OpenViking** | AGPL-3.0 | Self-hosted server | Free | `openviking` + server | Filesystem hierarchy, tiered retrieval (L0/L1/L2) |
### Partial Lock-in (OSS exists but cloud is default)
| Provider | License | Storage | Cost | Risk |
|----------|---------|---------|------|------|
| **Mem0 (self-hosted)** | OSS | Docker (3 containers) | Free | Cloud/OSS feature parity may drift |
| **Honcho** | OSS option | Cloud or self-hosted | Free/Paid | Self-host path less documented |
| **ByteRover (local)** | Unclear | Local default | Free | CLI not clearly OSS |
### Full Lock-in (cloud-only, proprietary)
| Provider | Storage | Cost | Risk |
|----------|---------|------|------|
| **Supermemory** | Cloud only | Paid | High — no self-host, data on their servers |
| **RetainDB** | Cloud only | $20/mo | High — proprietary, no exit path |
---
## Overlap Analysis: MemPalace vs External Providers
### What MemPalace Already Does (merged in main)
- ✅ SQLite + FTS5 + HRR vectors (same tech as Holographic)
- ✅ L0→L1→L2→L3→L4 retrieval order enforcement
- ✅ Palace-first wake-up (identity + top rooms, 238 tokens)
- ✅ Quality gates before writing (`promotion.py`)
- ✅ Ephemeral session scratchpad
- ✅ Persistent agent identity + spatial room metaphor
- ✅ Nightly re-mine cron
### What External Providers Add That MemPalace Doesn't
| Capability | Which Provider | MemPalace Gap |
|------------|----------------|---------------|
| Knowledge graph with entity resolution | Hindsight | Stores flat facts, no entity linking |
| Cross-memory synthesis (`reflect`) | Hindsight | No "what do I believe about X across all memories?" |
| Trust scoring with feedback loops | Holographic | `sovereign_store.py` has no confidence/trust mechanism |
| Contradiction detection | Holographic | MemPalace can store conflicting facts without noticing |
| Tiered context loading (100 tok → 2k → full) | OpenViking | MemPalace loads full content, no progressive disclosure |
| Server-side LLM fact extraction | Mem0, Hindsight | MemPalace extraction is heuristic (regex/length), not LLM-powered |
| Cross-agent memory federation | Honcho | MP-6 (cross-agent federation) was designed but never implemented |
---
## The Confusion Risk
Hermes already runs **3 memory layers simultaneously**:
1. **Built-in:** `MEMORY.md` + `USER.md` (always active)
2. **External provider:** whichever plugin is configured (one at a time)
3. **MemPalace:** our custom `sovereign_store.py` + retrieval enforcer
If we enable an external provider **alongside** MemPalace, agents will have:
- `MEMORY.md` (built-in flat file)
- `USER.md` (built-in user profile)
- `sovereign_store.py` (our SQLite palace)
- External provider tools (e.g., `hindsight_retain`, `hindsight_recall`)
**This is 4 places to store/retrieve memories.** An agent won't know which source of truth to trust.
The retrieval enforcer checks the palace first, but it doesn't know about the external provider. The external provider tools bypass the enforcer entirely.
---
## Decision Options
### Option A: MemPalace Only (status quo)
- Keep `sovereign_store.py` as the sole external memory
- Accept the gaps (no knowledge graph, no trust scoring, no entity resolution)
- Zero dependencies, zero lock-in, fully sovereign
- **Risk:** We miss real capabilities that would make agents smarter
### Option B: Replace MemPalace with Holographic
- Holographic uses the exact same tech (SQLite + FTS5 + HRR) but is more mature
- Adds trust scoring + contradiction detection we'd have to build ourselves
- Ships with Hermes — zero extra dependencies
- **Risk:** We lose the spatial metaphor (rooms/drawers) and retrieval-order enforcement
### Option C: Replace MemPalace with Hindsight (local)
- Most capable option: knowledge graph, entity resolution, reflect synthesis
- MIT licensed, Docker self-hosted, Ollama for fully offline
- 91.4% on LongMemEval benchmark (best-in-class for OSS)
- **Risk:** Adds Docker + LLM dependency for fact extraction. More moving parts.
### Option D: MemPalace as orchestration layer, Hindsight as backend
- Keep retrieval enforcer + wake-up protocol + spatial metaphor
- Replace `sovereign_store.py` SQLite backend with Hindsight API calls
- Best of both: our retrieval discipline + their knowledge graph
- **Risk:** Integration complexity. Two codebases to maintain.
### Option E: MemPalace + Holographic as Hermes provider *(recommended short-term)*
- Enable Holographic as the Hermes external provider (one config line)
- Keep MemPalace retrieval enforcer but wire it to query Holographic's fact_store
- Gets us trust scoring + contradiction detection with minimal change
- Same tech stack (SQLite), zero new dependencies
- **Risk:** Still two systems, but they speak the same storage language
---
## Recommendation
### Short Term → Option E
Enable Holographic as the Hermes provider and wire the retrieval enforcer to use it.
- Same storage technology (SQLite + FTS5 + HRR) — no migration pain
- Adds trust scoring and contradiction detection "for free"
- Zero new dependencies (Holographic ships with Hermes)
- Minimal integration work
### Medium Term → Option D
When knowledge-graph capabilities become blocking (entity resolution, cross-memory synthesis), migrate the backend to Hindsight local.
- MIT license, fully self-hostable
- Ollama-compatible LLM for fact extraction
- Best-in-class LongMemEval performance (91.4%)
- More moving parts, but tolerable for the capability gain
### Why MemPalace Isn't Obsolete
MemPalace's **orchestration layer** (retrieval enforcer, wake-up protocol, promotion filters, spatial metaphor) is value that no external provider supplies. The providers are *storage backends*. The fix is to **choose a backend that matches our discipline layer**, not discard the discipline.
---
## Action Items
- [ ] Review recommendation with Timmy
- [ ] Check Holographic integration test suite
- [ ] Prototype retrieval-enforcer → Holographic fact_store wiring
- [ ] Evaluate Hindsight local install overhead (Docker + Ollama)
- [ ] Update `docs/MEMORY_ARCHITECTURE.md` to reflect chosen path
---
## References
- MemPalace epic: #367
- Sovereign store PR: #380
- Hermes memory providers: https://hermes-agent.nousresearch.com/docs/user-guide/features/memory-providers
- Hindsight (MIT, self-hosted): https://github.com/vectorize-io/hindsight
- OpenViking (AGPL, self-hosted): https://github.com/volcengine/OpenViking

View File

@@ -0,0 +1,51 @@
# Memory Provider Lock-in Guardrail
**Reference:** Issue #419 — Hermes Memory Providers vs MemPalace Evaluation
## Principle
**MemPalace is the canonical sovereign memory layer.** External memory providers are not approved for production use.
## Provider Classification
| Status | Providers | Action |
|--------|-----------|--------|
| ✅ **Primary** | MemPalace (sovereign) | Use for all memory needs |
| ⚠️ **Trial-only** | Hindsight (local), OpenViking, Mem0 (self-host) | Ground-truth trial only; never promote without ADR |
| 🚫 **Forbidden** | Supermemory, RetainDB, ByteRover | Do not deploy — violates sovereignty / license unclear |
## Pre-work Gate Checklist (for any memory-related PR)
- [ ] Does this change touch `memories/`, retrieval logic, or memory providers?
- [ ] If introducing an external provider dependency: issue #419 evaluation consulted?
- [ ] If cloud-only provider: explicit ADR approved by principal?
- [ ] If multiple memory systems: confusion risk documented and mitigated?
## Quick Reference
```
MEMORY_STACK_LAYER IMPLEMENTATION
─────────────────────────────────────────
L0 Identity ~/.mempalace/identity.txt
L1 Palace ~/.mempalace/rooms/
L2 Session ~/.hermes/scratchpad/
L3 Artifacts Gitea API (issues/PRs/files)
L4 Playbooks playbooks/*.yaml
L5 Free Gen LLM fallback (avoid if possible)
```
## Further Reading
- `docs/MEMORY_ARCHITECTURE.md` — Retrieval order and storage layout
- `docs/memory-continuity-doctrine.md` — File-backed continuity before compaction
- Issue #419 — Full vendor lock-in analysis and recommendation matrix
- Epic #367 — MemPalace implementation history (PR #374 merged)
## Exception Process
To adopt an external provider for production:
1. Write an ADR in `docs/adr/` documenting the gap MemPalace cannot fill
2. Complete a 1-week trial with ground-truth comparison metrics
3. Obtain written approval from repository maintainers (PR review)
Absent these steps, the default is **reject**.

View File

@@ -0,0 +1,188 @@
# Hermes Memory Providers vs MemPalace — Overlap Analysis & Vendor Lock-in Report
**Date:** 2026-04-30
**Issue:** [#419] [RESEARCH SPIKE] Hermes Memory Providers vs MemPalace — Overlap Analysis & Vendor Lock-in Report
**Author:** Timmy (STEP35 FREE BURN agent)
**House:** timmy-facilitator
---
## Executive Summary
Hermes Agent ships with **8 external memory provider plugins**. The Timmy Foundation has already invested in a sovereign alternative — **MemPalace** (Epic #367, PR #374) — which provides a self-hosted, file-backed memory system using SQLite + FTS5 + HRR vectors.
**Verdict: MEMPALACE IS SUFFICIENT FOR PRODUCTION. External providers are not required for core sovereignty.**
### Recommendation Summary
| Category | Providers | Action | Rationale |
|----------|-----------|--------|-----------|
| ✅ **Keep — Already Covered** | Holographic (ships w/ Hermes) | No action | MemPalace uses same SQLite+HRR tech; consolidate around one implementation |
| ⚠️ **Evaluate — Local-First Compatible** | Hindsight (local), OpenViking, Mem0 (self-hosted) | Trial in non-critical workloads | Self-hosted is acceptable, but MemPalace already covers core retrieval; only adopt if specific feature gap proven |
| 🚫 **Reject — Cloud-Only Lock-in** | Supermemory, RetainDB | Do not deploy | Proprietary SaaS; data leaves sovereign control; violates sovereignty-first principle |
| 🔶 **Review — OSS with Cloud-First Drift Risk** | Honcho, ByteRover | Audit licensing & self-host docs before consideration | OSS exists but vendors push cloud; verify true exit path before adoption |
### Key Findings
1. **Feature overlap is high:** MemPalace already implements L0L4 retrieval layers, SQLite + FTS5 search, HRR vector algebra, trust scoring, and contradiction detection — core capabilities many external providers also claim.
2. **Vendor lock-in risk is non-linear:** Zero-lock-in providers (Holographic, Hindsight-local, OpenViking) are acceptable to evaluate, but add integration maintenance burden. Cloud-only providers (Supermemory, RetainDB) are categorically rejected on sovereignty grounds.
3. **Sovereignty cost/benefit:** Running multiple memory systems simultaneously creates confusion, duplication, and failure modes. One sovereign system (MemPalace) with well-defined retrieval layers is simpler and more secure than juggling half-a-dozen external services.
4. **No critical gap identified:** The external providers surveyed do not offer capabilities that MemPalace cannot eventually deliver with similar sovereignty guarantees. Where gaps exist (e.g., multi-agent knowledge graphs), the sovereign path is to extend MemPalace, not outsource.
---
## 1. The 8 Hermes Memory Providers — Vendor Lock-in Assessment
### 1.1 Zero Lock-in (fully self-hosted, OSS)
These providers have no SaaS dependency. Code and data stay on-prem.
| Provider | License | Storage | Cost | Dependencies | Unique Capability | Lock-in Verdict |
|----------|---------|---------|------|--------------|-------------------|-----------------|
| **Holographic** | MIT (ships w/ Hermes) | Local SQLite | Free | None | HRR algebra, trust scoring, contradiction detection | ✅ Zero lock-in — but MemPalace already uses identical stack |
| **Hindsight (local)** | MIT | Embedded PostgreSQL (Docker) | Free | Docker + LLM (Ollama ok) | Knowledge graph, 4-network memory, `reflect` synthesis | ✅ Zero lock-in — feature-rich but heavier than MemPalace |
| **OpenViking** | AGPL-3.0 | Self-hosted server | Free | `openviking` + server daemon | Filesystem hierarchy, tiered retrieval (L0/L1/L2) | ✅ Zero lock-in — Unix-philosophy alignment |
**Assessment:**
- **Holographic** is essentially a subset of what MemPalace already does. No need to run both.
- **Hindsight-local** is compelling (knowledge graphs are valuable), but requires PostgreSQL + Docker stack. MemPalace roadmap already includes graph extensions. Defer until gap proven.
- **OpenViking** is interesting for its hierarchical store, but unclear if it offers material benefit over MemPalace's L0L4 layers.
### 1.2 Partial Lock-in (OSS exists but cloud is default)
These tools have self-host options, but the vendor primarily pushes SaaS. Self-host path may be less documented or feature-gapped.
| Provider | License | Storage | Cost | Risk | Lock-in Verdict |
|----------|---------|---------|------|------|-----------------|
| **Mem0 (self-host)** | OSS (source available) | Docker (3 containers) | Free | High — feature parity with cloud uncertain | ⚠️ Partial — self-host possible but complex |
| **Honcho** | OSS option | Cloud or self-host | Free/Paid | Medium — self-host path not primary UX | ⚠️ Partial — OSS exists but cloud-first |
| **ByteRover (local)** | License unclear | Local default | Free | High — CLI/OSS clarity missing | 🔶 Review — insufficient licensing clarity |
**Assessment:**
- **Mem0** offers good multi-agent memory, but the self-host deployment is a 3-container Docker stack. Compare against native MemPalace multi-user extensions before adopting.
- **Honcho** is interesting for team memory, but the vendor's business model is cloud-first. Self-host may lag. Not a priority.
- **ByteRover** — license and OSS status unclear. Cannot evaluate without clarity. Skip.
### 1.3 Full Lock-in (cloud-only, proprietary)
These services store data on third-party servers. No exit path.
| Provider | Storage | Cost | Risk | Lock-in Verdict |
|----------|---------|------|------|-----------------|
| **Supermemory** | Cloud only | Paid (usage-based) | Critical — no self-host, full data export unclear | 🚫 Reject — violates sovereignty |
| **RetainDB** | Cloud only | $20/mo flat | Critical — proprietary, no E2E encryption guarantee | 🚫 Reject — violates sovereignty |
**Assessment:** These are categorically incompatible with a sovereign stack. They may be trialed for evaluation purposes only with synthetic non-sensitive data, but production use is forbidden by SOUL.md sovereignty constraints.
---
## 2. MemPalace vs External Providers — Capability Overlap Analysis
### 2.1 What MemPalace Already Does (merged in main via PR #374)
- **`sovereign_store.py`**: SQLite + FTS5 + HRR vectors (holographic reduced representations)
- **`retrieval_enforcer.py`**: Layered retrieval (L0 → L1 → L2 → L3 → L4 → L5 fallback)
- **L0 Identity**: `identity.txt` — who am I, mandates, personality constants
- **L1 Palace**: File-backed rooms/drawers — curated world knowledge
- **L2 Session**: Ephemeral session scratchpad — recent context with TTL
- **L3 Artifacts**: Gitea API fetch for issues/PRs/files
- **L4 Playbooks**: YAML procedures and skills documentation
- **Trust Scoring**: Track which memories are reliable (cross-referenced)
- **Contradiction Detection**: Flag conflicting memories during recall
### 2.2 Gap Analysis vs External Providers
| Capability | MemPalace (current) | Gap vs External | Priority |
|------------|---------------------|-----------------|----------|
| **Vector search** | ✅ HRR in SQLite | None | — |
| **Keyword/FTS5** | ✅ Built-in | None | — |
| **Knowledge graph** | 🚧 Planned (triple store extension) | Hindsight has this now | Medium |
| **Multi-agent shared memory** | ✅ Per-agent rooms | None | — |
| **Cross-session continuity** | ✅ File-backed | None | — |
| **Real-time sync across agents** | ⚠️ Manual merge | Some providers offer live sync | Low |
| **Hybrid memories (episodic/semantic)** | 🚧 Roadmap | Hindsight's 4-network more mature | Medium |
| **Automated reflection/synthesis** | ⚠️ Basic | Hindsight has `reflect` module | Low |
| **Cloud scaling** | ❌ Not applicable | External providers offer this | N/A — sovereignty trade-off |
**Gap conclusion:** The gaps are **features, not necessities**. None are blocking core workflows. Where gaps exist (graphs, synthesis), the sovereign path is to extend MemPalace locally rather than adopt external lock-in.
---
## 3. Operator Confusion Risk — Multiple Systems Analysis
Running multiple memory backends simultaneously creates:
| Risk | Description | Severity |
|------|-------------|----------|
| **Source ambiguity** | Agent cannot tell which system a fact came from; retrieval order becomes unpredictable | High |
| **State divergence** | Two systems contain different versions of the "same" memory; no single source of truth | High |
| **Debugging opacity** | Troubleshooting recall failures requires examining 2+ independent stores | Medium |
| **Resource duplication** | Same knowledge indexed twice; wasted storage/compute | Low |
| **User training overhead** | Operators must understand which system to query when | Medium |
**Conclusion:** Do **not** run multiple memory systems in parallel. Choose **one** primary sovereign system (MemPalace) and deprecate the rest.
---
## 4. Vendor Lock-in Cost Model
| Lock-in Tier | Annualized Cost of Lock-in | Reason |
|---------------|----------------------------|--------|
| **Zero (OSS self-host)** | $0 | Code + data fully local; exit path is git clone |
| **Partial (OSS but cloud-first)** | $5002000/yr if switching later | Migration effort + downtime while rebuilding |
| **Full (SaaS)** | $500020000+/yr if switching later | Data export may be incomplete; business logic tied to vendor APIs; no source code access |
The **real cost is migration effort**, not subscription fees. Once an external provider's API is woven into agent logic, untangling it is a multi-week rewrite.
---
## 5. Recommendations — Actionable Decision Matrix
### 5.1 Immediate Actions (this sprint)
1. **Consolidate on MemPalace as the single sovereign memory layer** — de-prioritize integration work for external providers unless a proven feature gap blocks a governing issue.
2. **Add a `docs/memory-providers-lockin.md` reference** linking to this evaluation to prevent future accidental adoption of cloud-only providers.
3. **Archive the 8 provider plugin documentation** under `deprecated/` or note in README that external providers are unsupported for production.
### 5.2 Conditional Trials (low-risk evaluation only)
| Provider | Trial Scope | Success Criteria | Go/No-Go Gate |
|----------|-------------|------------------|---------------|
| **Hindsight (local)** | Run in parallel with MemPalace on Allegro-VPS for 1 week; evaluate knowledge graph utility | 15%+ improvement in cross-session recall accuracy without added complexity | Adopt only if gap is proven irreducible in MemPalace |
| **OpenViking** | Single-agent test; compare retrieval precision | Parity or better with simpler architecture | Not a priority — MemPalace L0L4 already sufficient |
| **Mem0 (self-host)** | Docker-compose on test VPS; measure multi-agent memory throughput | 2× speed improvement for 10+ agent scenarios | Low priority — scale issues not currently observed |
**Rule:** No external provider may be promoted to production without a formal ADR and explicit sign-off from the principal (Alexander).
### 5.3 Rejected Providers (do not deploy)
- **Supermemory** — SaaS, data leaves sovereign control
- **RetainDB** — SaaS, $20/mo recurring, exit path unclear
- **ByteRover** — license ambiguity makes compliance impossible to verify
---
## 6. Follow-up Work
| Task | Owner | Status |
|------|-------|--------|
| Document MemPalace as the canonical memory layer in `docs/MEMORY_ARCHITECTURE.md` | Timmy | Todo |
| Add vendor-lock-in decision guardrail to pre-work gate for any memory-related PR | Allegro (CI) | Todo |
| Create migration guide: "Switching from External Provider → MemPalace" (for future-proofing) | Ezra | Optional |
| Extend retrieval_enforcer to explicitly prefer MemPalace over any external plugin | Timmy | In progress |
| Trial Hindsight-local on VPS for 1 week, measure knowledge graph utility | Allegro | Conditional |
---
## 7. Conclusion
The core question — **"do we need an external provider, or does MemPalace already cover us?"** — is answered:
**MemPalace covers us.** The sovereign stack's retrieval layers (L0L4) already solve the recall problem with no external dependencies. The few capabilities external providers advertise (knowledge graphs, multi-agent sync) are either already on MemPalace's roadmap or are not essential.
**Running multiple memory systems creates more problems than it solves.** The operator confusion risk alone is sufficient to avoid parallel deployment. Lock-in risks from cloud-only providers are categorically unacceptable.
**Next step:** Close issue #419 by adopting MemPalace as the production memory layer and documenting provider lock-in guardrails for the fleet.

View File

@@ -1,101 +0,0 @@
#!/usr/bin/env python3
"""Generate 400 Deployment & Infra code pattern pairs for timmy-config#594."""
from __future__ import annotations
import argparse, json, random
from pathlib import Path
random.seed(594)
TEMPLATES = [
# vps-provisioning
("vps-provisioning", "Write a cloud-init config that provisions Ubuntu 22.04 with deploy user, SSH key auth, and auto updates.",
"#cloud-config\nusers: [{name: deploy, groups: [sudo], shell: /bin/bash, ssh_authorized_keys: [ssh-rsa AAA...]}]\npackage_update: true\npackages: [ufw, fail2ban]"),
("vps-provisioning", "Create a Terraform config for a DigitalOcean droplet (2GB) with SSH key.",
'terraform { required_providers { digitalocean={source="digitalocean/digitalocean",version="~>2.0"} } }\nresource "digitalocean_droplet" "web" { name="web-01"; region="nyc3"; size="s-2vcpu-2gb" }'),
("vps-provisioning", "Write an Ansible playbook to install packages and start nginx.",
"---\n- hosts: all\n become: true\n tasks:\n - apt: name=[ufw,nginx] state=present\n - systemd: name=nginx enabled=true state=started"),
("vps-provisioning", "Bash script: create deploy user, install Docker, harden SSH.",
"#!/usr/bin/env bash\nset -euo pipefail\nid -u deploy &>/dev/null || useradd -m -s /bin/bash deploy\n[[ -x $(command -v docker) ]] || curl -fsSL https://get.docker.com | sh\nsed -i 's/^PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config"),
("vps-provisioning", "Write a systemd drop-in to override service restart settings.",
"[Service]\nRestart=always\nRestartSec=5"),
("vps-provisioning", "Create a logrotate config for application logs.",
"/var/log/app/*.log { daily; rotate 7; compress; missingok }"),
("vps-provisioning", "Write a shell function that waits for a TCP port to become available on a remote host.",
'wait_for_port() { local h="$1" p="$2"; while ! nc -z "$h" "$p"; do sleep 1; done; }'),
("vps-provisioning", "Implement a script that sets up a Python virtualenv.",
"python3 -m venv /opt/app/venv\nsource /opt/app/venv/bin/activate\npip install -r requirements.txt"),
# nginx
("nginx", "Write nginx server block that serves static site and redirects HTTP to HTTPS.",
"server {\n listen 80; server_name example.com;\n return 301 https://$server_name$request_uri;\n}\nserver {\n listen 443 ssl http2; server_name example.com;\n ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;\n root /var/www/html;\n location / { try_files $uri $uri/ =404; }\n}"),
("nginx", "Configure nginx as reverse proxy to backend on port 3000.",
"upstream app { server 127.0.0.1:3000; }\nserver {\n listen 80; server_name app.example.com;\n location / {\n proxy_pass http:app;\n proxy_http_version 1.1;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection \"upgrade\";\n }\n}"),
("nginx", "Write nginx rate limiting configuration for /api/ endpoint.",
"limit_req_zone $binary_remote_addr zone=api:10m rate=10r/s;\nserver {\n location /api/ { limit_req zone=api burst=20 nodelay; }\n}"),
("nginx", "Create nginx config snippet that adds HSTS and CSP headers.",
'add_header Strict-Transport-Security "max-age=63072000" always;\nadd_header Content-Security-Policy "default-src \'self\'" always;'),
# systemd
("systemd", "Write a systemd service unit for a Python app as non-root, restart on failure.",
"[Unit]\nDescription=My Python App\nAfter=network.target\n\n[Service]\nType=simple\nUser=deploy\nWorkingDirectory=/opt/app\nExecStart=/opt/app/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app\nRestart=on-failure\nRestartSec=10\n\n[Install]\nWantedBy=multi-user.target"),
("systemd", "Create a systemd timer that runs a backup script daily at 2:30 AM.",
"[Timer]\nOnCalendar=*-*-* 02:30:00\nPersistent=true\nUnit=backup.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/backup.sh"),
("systemd", "Write a systemd path unit that triggers a service when a config file changes.",
"[Path]\nPathModified=/etc/app/config.yaml\nUnit=config-reload.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/reload.sh"),
# docker
("docker", "Write a multi-stage Dockerfile for Python FastAPI.",
"FROM python:3.12-slim AS builder\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --user --no-cache-dir -r requirements.txt\n\nFROM python:3.12-slim\nWORKDIR /app\nCOPY --from=builder /root/.local /root/.local\nCOPY . .\nCMD [\"uvicorn\", \"main:app\"]"),
("docker", "Create a docker-compose.yml with web, postgres, and redis.",
"version: \"3.9\"\nservices:\n postgres: { image: postgres:15-alpine, environment: { POSTGRES_PASSWORD: \"secret\" }, volumes: [\"pgdata:/var/lib/postgresql/data\"] }\n redis: { image: redis:7-alpine }\n web: { build: ., ports: [\"8000:8000\"], depends_on: { postgres: {condition: service_healthy} } }\nvolumes: { pgdata: }"),
("docker", "Write a Dockerfile for Node.js production.",
"FROM node:18-alpine AS builder\nWORKDIR /app\nCOPY package*.json .\nRUN npm ci --only=production\n\nFROM node:18-alpine\nENV NODE_ENV=production\nCOPY --from=builder /node_modules ./node_modules\nCOPY . .\nUSER nodejs\nCMD [\"node\", \"server.js\"]"),
("docker", "Create a Docker network for app isolation.",
"docker network create --driver bridge --subnet 172.20.0.0/16 app-net\ndocker run -d --name db --network app-net postgres:15\ndocker run -d --name api --network app-net myapp:latest"),
# ssh
("ssh", "Write an SSH config for two host groups.",
"Host prod-*\n HostName %h.example.com\n User deploy\n IdentityFile ~/.ssh/id_rsa_prod\nHost dev-*\n HostName dev.example.com\n User dev\n IdentityFile ~/.ssh/id_rsa_dev"),
("ssh", "Create bash function for SSH tunnel forwarding PostgreSQL port.",
"ssh_postgres_tunnel() { ssh -fN -L \"${3:-55432}:localhost:${2:-5432}\" \"${1:-prod-db.example.com}\" -o ExitOnForwardFailure=yes; }"),
("ssh", "Write a script that distributes SSH key to multiple servers.",
"for s in web01 web02 db01; do\n ssh-copy-id -i ~/.ssh/id_rsa.pub deploy@${s}.example.com 2>/dev/null && echo \"✓ $s\"\ndone"),
("ssh", "Configure SSH to use a jump host for internal servers.",
"Host internal-*\n ProxyJump jump.example.com\n HostName %h.internal.local"),
]
def vary_problem(base, idx):
p = ["Write code to","Implement","Create","Build","Configure","Set up"]
s = [" with error handling."," using best practices."," ensuring idempotency."," with logging."," for production."]
return f"{p[idx%len(p)]} {base.rstrip('.').lower()}{s[(idx//len(p))%len(s)]}"
def vary_solution(base, idx):
sol = base
if idx%3==0:
sol = sol.replace("log", "log_msg").replace("result", "data")
if idx%7==0:
sol = f"# Variation {idx}\n" + sol
return sol
def main():
ap = argparse.ArgumentParser(description="Generate 400 Deployment & Infra code pattern pairs")
ap.add_argument("-o","--output",default="training-data/code-patterns-deployment-infra.jsonl")
ap.add_argument("-n","--count",type=int,default=400)
args = ap.parse_args()
out = Path(args.output); out.parent.mkdir(parents=True,exist_ok=True)
pairs = []
for i in range(args.count):
tpl = TEMPLATES[i % len(TEMPLATES)]
pairs.append({
"problem": vary_problem(tpl[1], i),
"solution": vary_solution(tpl[2], i),
"imports": "",
"domain": tpl[0],
"id": f"deploy-infra-{i:04d}",
})
with open(out, "w", encoding="utf-8") as f:
for p in pairs:
f.write(json.dumps(p, ensure_ascii=False) + "\n")
from collections import Counter
cnt = Counter(p["domain"] for p in pairs)
print(f"Generated {len(pairs)} pairs → {out}")
print(f" Size: {out.stat().st_size/1024:.1f} KB")
for d,c in sorted(cnt.items(),key=lambda x:-x[1]): print(f" {d}: {c}")
if __name__ == "__main__":
main()

View File

@@ -1,400 +0,0 @@
{"problem": "Write code to write a cloud-init config that provisions ubuntu 22.04 with deploy user, ssh key auth, and auto updates with error handling.", "solution": "# Variation 0\n#cloud-config\nusers: [{name: deploy, groups: [sudo], shell: /bin/bash, ssh_authorized_keys: [ssh-rsa AAA...]}]\npackage_update: true\npackages: [ufw, fail2ban]", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0000"}
{"problem": "Implement create a terraform config for a digitalocean droplet (2gb) with ssh key with error handling.", "solution": "terraform { required_providers { digitalocean={source=\"digitalocean/digitalocean\",version=\"~>2.0\"} } }\nresource \"digitalocean_droplet\" \"web\" { name=\"web-01\"; region=\"nyc3\"; size=\"s-2vcpu-2gb\" }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0001"}
{"problem": "Create write an ansible playbook to install packages and start nginx with error handling.", "solution": "---\n- hosts: all\n become: true\n tasks:\n - apt: name=[ufw,nginx] state=present\n - systemd: name=nginx enabled=true state=started", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0002"}
{"problem": "Build bash script: create deploy user, install docker, harden ssh with error handling.", "solution": "#!/usr/bin/env bash\nset -euo pipefail\nid -u deploy &>/dev/null || useradd -m -s /bin/bash deploy\n[[ -x $(command -v docker) ]] || curl -fsSL https://get.docker.com | sh\nsed -i 's/^PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0003"}
{"problem": "Configure write a systemd drop-in to override service restart settings with error handling.", "solution": "[Service]\nRestart=always\nRestartSec=5", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0004"}
{"problem": "Set up create a logrotate config for application logs with error handling.", "solution": "/var/log/app/*.log { daily; rotate 7; compress; missingok }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0005"}
{"problem": "Write code to write a shell function that waits for a tcp port to become available on a remote host using best practices.", "solution": "wait_for_port() { local h=\"$1\" p=\"$2\"; while ! nc -z \"$h\" \"$p\"; do sleep 1; done; }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0006"}
{"problem": "Implement implement a script that sets up a python virtualenv using best practices.", "solution": "# Variation 7\npython3 -m venv /opt/app/venv\nsource /opt/app/venv/bin/activate\npip install -r requirements.txt", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0007"}
{"problem": "Create write nginx server block that serves static site and redirects http to https using best practices.", "solution": "server {\n listen 80; server_name example.com;\n return 301 https://$server_name$request_uri;\n}\nserver {\n listen 443 ssl http2; server_name example.com;\n ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;\n root /var/www/html;\n location / { try_files $uri $uri/ =404; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0008"}
{"problem": "Build configure nginx as reverse proxy to backend on port 3000 using best practices.", "solution": "upstream app { server 127.0.0.1:3000; }\nserver {\n listen 80; server_name app.example.com;\n location / {\n proxy_pass http:app;\n proxy_http_version 1.1;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection \"upgrade\";\n }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0009"}
{"problem": "Configure write nginx rate limiting configuration for /api/ endpoint using best practices.", "solution": "limit_req_zone $binary_remote_addr zone=api:10m rate=10r/s;\nserver {\n location /api/ { limit_req zone=api burst=20 nodelay; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0010"}
{"problem": "Set up create nginx config snippet that adds hsts and csp headers using best practices.", "solution": "add_header Strict-Transport-Security \"max-age=63072000\" always;\nadd_header Content-Security-Policy \"default-src 'self'\" always;", "imports": "", "domain": "nginx", "id": "deploy-infra-0011"}
{"problem": "Write code to write a systemd service unit for a python app as non-root, restart on failure ensuring idempotency.", "solution": "[Unit]\nDescription=My Python App\nAfter=network.target\n\n[Service]\nType=simple\nUser=deploy\nWorkingDirectory=/opt/app\nExecStart=/opt/app/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app\nRestart=on-failure\nRestartSec=10\n\n[Install]\nWantedBy=multi-user.target", "imports": "", "domain": "systemd", "id": "deploy-infra-0012"}
{"problem": "Implement create a systemd timer that runs a backup script daily at 2:30 am ensuring idempotency.", "solution": "[Timer]\nOnCalendar=*-*-* 02:30:00\nPersistent=true\nUnit=backup.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/backup.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0013"}
{"problem": "Create write a systemd path unit that triggers a service when a config file changes ensuring idempotency.", "solution": "# Variation 14\n[Path]\nPathModified=/etc/app/config.yaml\nUnit=config-reload.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/reload.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0014"}
{"problem": "Build write a multi-stage dockerfile for python fastapi ensuring idempotency.", "solution": "FROM python:3.12-slim AS builder\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --user --no-cache-dir -r requirements.txt\n\nFROM python:3.12-slim\nWORKDIR /app\nCOPY --from=builder /root/.local /root/.local\nCOPY . .\nCMD [\"uvicorn\", \"main:app\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0015"}
{"problem": "Configure create a docker-compose.yml with web, postgres, and redis ensuring idempotency.", "solution": "version: \"3.9\"\nservices:\n postgres: { image: postgres:15-alpine, environment: { POSTGRES_PASSWORD: \"secret\" }, volumes: [\"pgdata:/var/lib/postgresql/data\"] }\n redis: { image: redis:7-alpine }\n web: { build: ., ports: [\"8000:8000\"], depends_on: { postgres: {condition: service_healthy} } }\nvolumes: { pgdata: }", "imports": "", "domain": "docker", "id": "deploy-infra-0016"}
{"problem": "Set up write a dockerfile for node.js production ensuring idempotency.", "solution": "FROM node:18-alpine AS builder\nWORKDIR /app\nCOPY package*.json .\nRUN npm ci --only=production\n\nFROM node:18-alpine\nENV NODE_ENV=production\nCOPY --from=builder /node_modules ./node_modules\nCOPY . .\nUSER nodejs\nCMD [\"node\", \"server.js\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0017"}
{"problem": "Write code to create a docker network for app isolation with logging.", "solution": "docker network create --driver bridge --subnet 172.20.0.0/16 app-net\ndocker run -d --name db --network app-net postgres:15\ndocker run -d --name api --network app-net myapp:latest", "imports": "", "domain": "docker", "id": "deploy-infra-0018"}
{"problem": "Implement write an ssh config for two host groups with logging.", "solution": "Host prod-*\n HostName %h.example.com\n User deploy\n IdentityFile ~/.ssh/id_rsa_prod\nHost dev-*\n HostName dev.example.com\n User dev\n IdentityFile ~/.ssh/id_rsa_dev", "imports": "", "domain": "ssh", "id": "deploy-infra-0019"}
{"problem": "Create create bash function for ssh tunnel forwarding postgresql port with logging.", "solution": "ssh_postgres_tunnel() { ssh -fN -L \"${3:-55432}:localhost:${2:-5432}\" \"${1:-prod-db.example.com}\" -o ExitOnForwardFailure=yes; }", "imports": "", "domain": "ssh", "id": "deploy-infra-0020"}
{"problem": "Build write a script that distributes ssh key to multiple servers with logging.", "solution": "# Variation 21\nfor s in web01 web02 db01; do\n ssh-copy-id -i ~/.ssh/id_rsa.pub deploy@${s}.example.com 2>/dev/null && echo \"✓ $s\"\ndone", "imports": "", "domain": "ssh", "id": "deploy-infra-0021"}
{"problem": "Configure configure ssh to use a jump host for internal servers with logging.", "solution": "Host internal-*\n ProxyJump jump.example.com\n HostName %h.internal.local", "imports": "", "domain": "ssh", "id": "deploy-infra-0022"}
{"problem": "Set up write a cloud-init config that provisions ubuntu 22.04 with deploy user, ssh key auth, and auto updates with logging.", "solution": "#cloud-config\nusers: [{name: deploy, groups: [sudo], shell: /bin/bash, ssh_authorized_keys: [ssh-rsa AAA...]}]\npackage_update: true\npackages: [ufw, fail2ban]", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0023"}
{"problem": "Write code to create a terraform config for a digitalocean droplet (2gb) with ssh key for production.", "solution": "terraform { required_providers { digitalocean={source=\"digitalocean/digitalocean\",version=\"~>2.0\"} } }\nresource \"digitalocean_droplet\" \"web\" { name=\"web-01\"; region=\"nyc3\"; size=\"s-2vcpu-2gb\" }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0024"}
{"problem": "Implement write an ansible playbook to install packages and start nginx for production.", "solution": "---\n- hosts: all\n become: true\n tasks:\n - apt: name=[ufw,nginx] state=present\n - systemd: name=nginx enabled=true state=started", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0025"}
{"problem": "Create bash script: create deploy user, install docker, harden ssh for production.", "solution": "#!/usr/bin/env bash\nset -euo pipefail\nid -u deploy &>/dev/null || useradd -m -s /bin/bash deploy\n[[ -x $(command -v docker) ]] || curl -fsSL https://get.docker.com | sh\nsed -i 's/^PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0026"}
{"problem": "Build write a systemd drop-in to override service restart settings for production.", "solution": "[Service]\nRestart=always\nRestartSec=5", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0027"}
{"problem": "Configure create a logrotate config for application logs for production.", "solution": "# Variation 28\n/var/log/app/*.log { daily; rotate 7; compress; missingok }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0028"}
{"problem": "Set up write a shell function that waits for a tcp port to become available on a remote host for production.", "solution": "wait_for_port() { local h=\"$1\" p=\"$2\"; while ! nc -z \"$h\" \"$p\"; do sleep 1; done; }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0029"}
{"problem": "Write code to implement a script that sets up a python virtualenv with error handling.", "solution": "python3 -m venv /opt/app/venv\nsource /opt/app/venv/bin/activate\npip install -r requirements.txt", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0030"}
{"problem": "Implement write nginx server block that serves static site and redirects http to https with error handling.", "solution": "server {\n listen 80; server_name example.com;\n return 301 https://$server_name$request_uri;\n}\nserver {\n listen 443 ssl http2; server_name example.com;\n ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;\n root /var/www/html;\n location / { try_files $uri $uri/ =404; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0031"}
{"problem": "Create configure nginx as reverse proxy to backend on port 3000 with error handling.", "solution": "upstream app { server 127.0.0.1:3000; }\nserver {\n listen 80; server_name app.example.com;\n location / {\n proxy_pass http:app;\n proxy_http_version 1.1;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection \"upgrade\";\n }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0032"}
{"problem": "Build write nginx rate limiting configuration for /api/ endpoint with error handling.", "solution": "limit_req_zone $binary_remote_addr zone=api:10m rate=10r/s;\nserver {\n location /api/ { limit_req zone=api burst=20 nodelay; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0033"}
{"problem": "Configure create nginx config snippet that adds hsts and csp headers with error handling.", "solution": "add_header Strict-Transport-Security \"max-age=63072000\" always;\nadd_header Content-Security-Policy \"default-src 'self'\" always;", "imports": "", "domain": "nginx", "id": "deploy-infra-0034"}
{"problem": "Set up write a systemd service unit for a python app as non-root, restart on failure with error handling.", "solution": "# Variation 35\n[Unit]\nDescription=My Python App\nAfter=network.target\n\n[Service]\nType=simple\nUser=deploy\nWorkingDirectory=/opt/app\nExecStart=/opt/app/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app\nRestart=on-failure\nRestartSec=10\n\n[Install]\nWantedBy=multi-user.target", "imports": "", "domain": "systemd", "id": "deploy-infra-0035"}
{"problem": "Write code to create a systemd timer that runs a backup script daily at 2:30 am using best practices.", "solution": "[Timer]\nOnCalendar=*-*-* 02:30:00\nPersistent=true\nUnit=backup.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/backup.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0036"}
{"problem": "Implement write a systemd path unit that triggers a service when a config file changes using best practices.", "solution": "[Path]\nPathModified=/etc/app/config.yaml\nUnit=config-reload.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/reload.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0037"}
{"problem": "Create write a multi-stage dockerfile for python fastapi using best practices.", "solution": "FROM python:3.12-slim AS builder\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --user --no-cache-dir -r requirements.txt\n\nFROM python:3.12-slim\nWORKDIR /app\nCOPY --from=builder /root/.local /root/.local\nCOPY . .\nCMD [\"uvicorn\", \"main:app\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0038"}
{"problem": "Build create a docker-compose.yml with web, postgres, and redis using best practices.", "solution": "version: \"3.9\"\nservices:\n postgres: { image: postgres:15-alpine, environment: { POSTGRES_PASSWORD: \"secret\" }, volumes: [\"pgdata:/var/lib/postgresql/data\"] }\n redis: { image: redis:7-alpine }\n web: { build: ., ports: [\"8000:8000\"], depends_on: { postgres: {condition: service_healthy} } }\nvolumes: { pgdata: }", "imports": "", "domain": "docker", "id": "deploy-infra-0039"}
{"problem": "Configure write a dockerfile for node.js production using best practices.", "solution": "FROM node:18-alpine AS builder\nWORKDIR /app\nCOPY package*.json .\nRUN npm ci --only=production\n\nFROM node:18-alpine\nENV NODE_ENV=production\nCOPY --from=builder /node_modules ./node_modules\nCOPY . .\nUSER nodejs\nCMD [\"node\", \"server.js\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0040"}
{"problem": "Set up create a docker network for app isolation using best practices.", "solution": "docker network create --driver bridge --subnet 172.20.0.0/16 app-net\ndocker run -d --name db --network app-net postgres:15\ndocker run -d --name api --network app-net myapp:latest", "imports": "", "domain": "docker", "id": "deploy-infra-0041"}
{"problem": "Write code to write an ssh config for two host groups ensuring idempotency.", "solution": "# Variation 42\nHost prod-*\n HostName %h.example.com\n User deploy\n IdentityFile ~/.ssh/id_rsa_prod\nHost dev-*\n HostName dev.example.com\n User dev\n IdentityFile ~/.ssh/id_rsa_dev", "imports": "", "domain": "ssh", "id": "deploy-infra-0042"}
{"problem": "Implement create bash function for ssh tunnel forwarding postgresql port ensuring idempotency.", "solution": "ssh_postgres_tunnel() { ssh -fN -L \"${3:-55432}:localhost:${2:-5432}\" \"${1:-prod-db.example.com}\" -o ExitOnForwardFailure=yes; }", "imports": "", "domain": "ssh", "id": "deploy-infra-0043"}
{"problem": "Create write a script that distributes ssh key to multiple servers ensuring idempotency.", "solution": "for s in web01 web02 db01; do\n ssh-copy-id -i ~/.ssh/id_rsa.pub deploy@${s}.example.com 2>/dev/null && echo \"✓ $s\"\ndone", "imports": "", "domain": "ssh", "id": "deploy-infra-0044"}
{"problem": "Build configure ssh to use a jump host for internal servers ensuring idempotency.", "solution": "Host internal-*\n ProxyJump jump.example.com\n HostName %h.internal.local", "imports": "", "domain": "ssh", "id": "deploy-infra-0045"}
{"problem": "Configure write a cloud-init config that provisions ubuntu 22.04 with deploy user, ssh key auth, and auto updates ensuring idempotency.", "solution": "#cloud-config\nusers: [{name: deploy, groups: [sudo], shell: /bin/bash, ssh_authorized_keys: [ssh-rsa AAA...]}]\npackage_update: true\npackages: [ufw, fail2ban]", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0046"}
{"problem": "Set up create a terraform config for a digitalocean droplet (2gb) with ssh key ensuring idempotency.", "solution": "terraform { required_providers { digitalocean={source=\"digitalocean/digitalocean\",version=\"~>2.0\"} } }\nresource \"digitalocean_droplet\" \"web\" { name=\"web-01\"; region=\"nyc3\"; size=\"s-2vcpu-2gb\" }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0047"}
{"problem": "Write code to write an ansible playbook to install packages and start nginx with logging.", "solution": "---\n- hosts: all\n become: true\n tasks:\n - apt: name=[ufw,nginx] state=present\n - systemd: name=nginx enabled=true state=started", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0048"}
{"problem": "Implement bash script: create deploy user, install docker, harden ssh with logging.", "solution": "# Variation 49\n#!/usr/bin/env bash\nset -euo pipefail\nid -u deploy &>/dev/null || useradd -m -s /bin/bash deploy\n[[ -x $(command -v docker) ]] || curl -fsSL https://get.docker.com | sh\nsed -i 's/^PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0049"}
{"problem": "Create write a systemd drop-in to override service restart settings with logging.", "solution": "[Service]\nRestart=always\nRestartSec=5", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0050"}
{"problem": "Build create a logrotate config for application logs with logging.", "solution": "/var/log_msg/app/*.log_msg { daily; rotate 7; compress; missingok }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0051"}
{"problem": "Configure write a shell function that waits for a tcp port to become available on a remote host with logging.", "solution": "wait_for_port() { local h=\"$1\" p=\"$2\"; while ! nc -z \"$h\" \"$p\"; do sleep 1; done; }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0052"}
{"problem": "Set up implement a script that sets up a python virtualenv with logging.", "solution": "python3 -m venv /opt/app/venv\nsource /opt/app/venv/bin/activate\npip install -r requirements.txt", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0053"}
{"problem": "Write code to write nginx server block that serves static site and redirects http to https for production.", "solution": "server {\n listen 80; server_name example.com;\n return 301 https://$server_name$request_uri;\n}\nserver {\n listen 443 ssl http2; server_name example.com;\n ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;\n root /var/www/html;\n location / { try_files $uri $uri/ =404; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0054"}
{"problem": "Implement configure nginx as reverse proxy to backend on port 3000 for production.", "solution": "upstream app { server 127.0.0.1:3000; }\nserver {\n listen 80; server_name app.example.com;\n location / {\n proxy_pass http:app;\n proxy_http_version 1.1;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection \"upgrade\";\n }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0055"}
{"problem": "Create write nginx rate limiting configuration for /api/ endpoint for production.", "solution": "# Variation 56\nlimit_req_zone $binary_remote_addr zone=api:10m rate=10r/s;\nserver {\n location /api/ { limit_req zone=api burst=20 nodelay; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0056"}
{"problem": "Build create nginx config snippet that adds hsts and csp headers for production.", "solution": "add_header Strict-Transport-Security \"max-age=63072000\" always;\nadd_header Content-Security-Policy \"default-src 'self'\" always;", "imports": "", "domain": "nginx", "id": "deploy-infra-0057"}
{"problem": "Configure write a systemd service unit for a python app as non-root, restart on failure for production.", "solution": "[Unit]\nDescription=My Python App\nAfter=network.target\n\n[Service]\nType=simple\nUser=deploy\nWorkingDirectory=/opt/app\nExecStart=/opt/app/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app\nRestart=on-failure\nRestartSec=10\n\n[Install]\nWantedBy=multi-user.target", "imports": "", "domain": "systemd", "id": "deploy-infra-0058"}
{"problem": "Set up create a systemd timer that runs a backup script daily at 2:30 am for production.", "solution": "[Timer]\nOnCalendar=*-*-* 02:30:00\nPersistent=true\nUnit=backup.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/backup.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0059"}
{"problem": "Write code to write a systemd path unit that triggers a service when a config file changes with error handling.", "solution": "[Path]\nPathModified=/etc/app/config.yaml\nUnit=config-reload.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/reload.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0060"}
{"problem": "Implement write a multi-stage dockerfile for python fastapi with error handling.", "solution": "FROM python:3.12-slim AS builder\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --user --no-cache-dir -r requirements.txt\n\nFROM python:3.12-slim\nWORKDIR /app\nCOPY --from=builder /root/.local /root/.local\nCOPY . .\nCMD [\"uvicorn\", \"main:app\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0061"}
{"problem": "Create create a docker-compose.yml with web, postgres, and redis with error handling.", "solution": "version: \"3.9\"\nservices:\n postgres: { image: postgres:15-alpine, environment: { POSTGRES_PASSWORD: \"secret\" }, volumes: [\"pgdata:/var/lib/postgresql/data\"] }\n redis: { image: redis:7-alpine }\n web: { build: ., ports: [\"8000:8000\"], depends_on: { postgres: {condition: service_healthy} } }\nvolumes: { pgdata: }", "imports": "", "domain": "docker", "id": "deploy-infra-0062"}
{"problem": "Build write a dockerfile for node.js production with error handling.", "solution": "# Variation 63\nFROM node:18-alpine AS builder\nWORKDIR /app\nCOPY package*.json .\nRUN npm ci --only=production\n\nFROM node:18-alpine\nENV NODE_ENV=production\nCOPY --from=builder /node_modules ./node_modules\nCOPY . .\nUSER nodejs\nCMD [\"node\", \"server.js\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0063"}
{"problem": "Configure create a docker network for app isolation with error handling.", "solution": "docker network create --driver bridge --subnet 172.20.0.0/16 app-net\ndocker run -d --name db --network app-net postgres:15\ndocker run -d --name api --network app-net myapp:latest", "imports": "", "domain": "docker", "id": "deploy-infra-0064"}
{"problem": "Set up write an ssh config for two host groups with error handling.", "solution": "Host prod-*\n HostName %h.example.com\n User deploy\n IdentityFile ~/.ssh/id_rsa_prod\nHost dev-*\n HostName dev.example.com\n User dev\n IdentityFile ~/.ssh/id_rsa_dev", "imports": "", "domain": "ssh", "id": "deploy-infra-0065"}
{"problem": "Write code to create bash function for ssh tunnel forwarding postgresql port using best practices.", "solution": "ssh_postgres_tunnel() { ssh -fN -L \"${3:-55432}:localhost:${2:-5432}\" \"${1:-prod-db.example.com}\" -o ExitOnForwardFailure=yes; }", "imports": "", "domain": "ssh", "id": "deploy-infra-0066"}
{"problem": "Implement write a script that distributes ssh key to multiple servers using best practices.", "solution": "for s in web01 web02 db01; do\n ssh-copy-id -i ~/.ssh/id_rsa.pub deploy@${s}.example.com 2>/dev/null && echo \"✓ $s\"\ndone", "imports": "", "domain": "ssh", "id": "deploy-infra-0067"}
{"problem": "Create configure ssh to use a jump host for internal servers using best practices.", "solution": "Host internal-*\n ProxyJump jump.example.com\n HostName %h.internal.local", "imports": "", "domain": "ssh", "id": "deploy-infra-0068"}
{"problem": "Build write a cloud-init config that provisions ubuntu 22.04 with deploy user, ssh key auth, and auto updates using best practices.", "solution": "#cloud-config\nusers: [{name: deploy, groups: [sudo], shell: /bin/bash, ssh_authorized_keys: [ssh-rsa AAA...]}]\npackage_update: true\npackages: [ufw, fail2ban]", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0069"}
{"problem": "Configure create a terraform config for a digitalocean droplet (2gb) with ssh key using best practices.", "solution": "# Variation 70\nterraform { required_providers { digitalocean={source=\"digitalocean/digitalocean\",version=\"~>2.0\"} } }\nresource \"digitalocean_droplet\" \"web\" { name=\"web-01\"; region=\"nyc3\"; size=\"s-2vcpu-2gb\" }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0070"}
{"problem": "Set up write an ansible playbook to install packages and start nginx using best practices.", "solution": "---\n- hosts: all\n become: true\n tasks:\n - apt: name=[ufw,nginx] state=present\n - systemd: name=nginx enabled=true state=started", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0071"}
{"problem": "Write code to bash script: create deploy user, install docker, harden ssh ensuring idempotency.", "solution": "#!/usr/bin/env bash\nset -euo pipefail\nid -u deploy &>/dev/null || useradd -m -s /bin/bash deploy\n[[ -x $(command -v docker) ]] || curl -fsSL https://get.docker.com | sh\nsed -i 's/^PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0072"}
{"problem": "Implement write a systemd drop-in to override service restart settings ensuring idempotency.", "solution": "[Service]\nRestart=always\nRestartSec=5", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0073"}
{"problem": "Create create a logrotate config for application logs ensuring idempotency.", "solution": "/var/log/app/*.log { daily; rotate 7; compress; missingok }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0074"}
{"problem": "Build write a shell function that waits for a tcp port to become available on a remote host ensuring idempotency.", "solution": "wait_for_port() { local h=\"$1\" p=\"$2\"; while ! nc -z \"$h\" \"$p\"; do sleep 1; done; }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0075"}
{"problem": "Configure implement a script that sets up a python virtualenv ensuring idempotency.", "solution": "python3 -m venv /opt/app/venv\nsource /opt/app/venv/bin/activate\npip install -r requirements.txt", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0076"}
{"problem": "Set up write nginx server block that serves static site and redirects http to https ensuring idempotency.", "solution": "# Variation 77\nserver {\n listen 80; server_name example.com;\n return 301 https://$server_name$request_uri;\n}\nserver {\n listen 443 ssl http2; server_name example.com;\n ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;\n root /var/www/html;\n location / { try_files $uri $uri/ =404; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0077"}
{"problem": "Write code to configure nginx as reverse proxy to backend on port 3000 with logging.", "solution": "upstream app { server 127.0.0.1:3000; }\nserver {\n listen 80; server_name app.example.com;\n location / {\n proxy_pass http:app;\n proxy_http_version 1.1;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection \"upgrade\";\n }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0078"}
{"problem": "Implement write nginx rate limiting configuration for /api/ endpoint with logging.", "solution": "limit_req_zone $binary_remote_addr zone=api:10m rate=10r/s;\nserver {\n location /api/ { limit_req zone=api burst=20 nodelay; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0079"}
{"problem": "Create create nginx config snippet that adds hsts and csp headers with logging.", "solution": "add_header Strict-Transport-Security \"max-age=63072000\" always;\nadd_header Content-Security-Policy \"default-src 'self'\" always;", "imports": "", "domain": "nginx", "id": "deploy-infra-0080"}
{"problem": "Build write a systemd service unit for a python app as non-root, restart on failure with logging.", "solution": "[Unit]\nDescription=My Python App\nAfter=network.target\n\n[Service]\nType=simple\nUser=deploy\nWorkingDirectory=/opt/app\nExecStart=/opt/app/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app\nRestart=on-failure\nRestartSec=10\n\n[Install]\nWantedBy=multi-user.target", "imports": "", "domain": "systemd", "id": "deploy-infra-0081"}
{"problem": "Configure create a systemd timer that runs a backup script daily at 2:30 am with logging.", "solution": "[Timer]\nOnCalendar=*-*-* 02:30:00\nPersistent=true\nUnit=backup.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/backup.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0082"}
{"problem": "Set up write a systemd path unit that triggers a service when a config file changes with logging.", "solution": "[Path]\nPathModified=/etc/app/config.yaml\nUnit=config-reload.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/reload.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0083"}
{"problem": "Write code to write a multi-stage dockerfile for python fastapi for production.", "solution": "# Variation 84\nFROM python:3.12-slim AS builder\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --user --no-cache-dir -r requirements.txt\n\nFROM python:3.12-slim\nWORKDIR /app\nCOPY --from=builder /root/.local /root/.local\nCOPY . .\nCMD [\"uvicorn\", \"main:app\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0084"}
{"problem": "Implement create a docker-compose.yml with web, postgres, and redis for production.", "solution": "version: \"3.9\"\nservices:\n postgres: { image: postgres:15-alpine, environment: { POSTGRES_PASSWORD: \"secret\" }, volumes: [\"pgdata:/var/lib/postgresql/data\"] }\n redis: { image: redis:7-alpine }\n web: { build: ., ports: [\"8000:8000\"], depends_on: { postgres: {condition: service_healthy} } }\nvolumes: { pgdata: }", "imports": "", "domain": "docker", "id": "deploy-infra-0085"}
{"problem": "Create write a dockerfile for node.js production for production.", "solution": "FROM node:18-alpine AS builder\nWORKDIR /app\nCOPY package*.json .\nRUN npm ci --only=production\n\nFROM node:18-alpine\nENV NODE_ENV=production\nCOPY --from=builder /node_modules ./node_modules\nCOPY . .\nUSER nodejs\nCMD [\"node\", \"server.js\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0086"}
{"problem": "Build create a docker network for app isolation for production.", "solution": "docker network create --driver bridge --subnet 172.20.0.0/16 app-net\ndocker run -d --name db --network app-net postgres:15\ndocker run -d --name api --network app-net myapp:latest", "imports": "", "domain": "docker", "id": "deploy-infra-0087"}
{"problem": "Configure write an ssh config for two host groups for production.", "solution": "Host prod-*\n HostName %h.example.com\n User deploy\n IdentityFile ~/.ssh/id_rsa_prod\nHost dev-*\n HostName dev.example.com\n User dev\n IdentityFile ~/.ssh/id_rsa_dev", "imports": "", "domain": "ssh", "id": "deploy-infra-0088"}
{"problem": "Set up create bash function for ssh tunnel forwarding postgresql port for production.", "solution": "ssh_postgres_tunnel() { ssh -fN -L \"${3:-55432}:localhost:${2:-5432}\" \"${1:-prod-db.example.com}\" -o ExitOnForwardFailure=yes; }", "imports": "", "domain": "ssh", "id": "deploy-infra-0089"}
{"problem": "Write code to write a script that distributes ssh key to multiple servers with error handling.", "solution": "for s in web01 web02 db01; do\n ssh-copy-id -i ~/.ssh/id_rsa.pub deploy@${s}.example.com 2>/dev/null && echo \"✓ $s\"\ndone", "imports": "", "domain": "ssh", "id": "deploy-infra-0090"}
{"problem": "Implement configure ssh to use a jump host for internal servers with error handling.", "solution": "# Variation 91\nHost internal-*\n ProxyJump jump.example.com\n HostName %h.internal.local", "imports": "", "domain": "ssh", "id": "deploy-infra-0091"}
{"problem": "Create write a cloud-init config that provisions ubuntu 22.04 with deploy user, ssh key auth, and auto updates with error handling.", "solution": "#cloud-config\nusers: [{name: deploy, groups: [sudo], shell: /bin/bash, ssh_authorized_keys: [ssh-rsa AAA...]}]\npackage_update: true\npackages: [ufw, fail2ban]", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0092"}
{"problem": "Build create a terraform config for a digitalocean droplet (2gb) with ssh key with error handling.", "solution": "terraform { required_providers { digitalocean={source=\"digitalocean/digitalocean\",version=\"~>2.0\"} } }\nresource \"digitalocean_droplet\" \"web\" { name=\"web-01\"; region=\"nyc3\"; size=\"s-2vcpu-2gb\" }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0093"}
{"problem": "Configure write an ansible playbook to install packages and start nginx with error handling.", "solution": "---\n- hosts: all\n become: true\n tasks:\n - apt: name=[ufw,nginx] state=present\n - systemd: name=nginx enabled=true state=started", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0094"}
{"problem": "Set up bash script: create deploy user, install docker, harden ssh with error handling.", "solution": "#!/usr/bin/env bash\nset -euo pipefail\nid -u deploy &>/dev/null || useradd -m -s /bin/bash deploy\n[[ -x $(command -v docker) ]] || curl -fsSL https://get.docker.com | sh\nsed -i 's/^PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0095"}
{"problem": "Write code to write a systemd drop-in to override service restart settings using best practices.", "solution": "[Service]\nRestart=always\nRestartSec=5", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0096"}
{"problem": "Implement create a logrotate config for application logs using best practices.", "solution": "/var/log/app/*.log { daily; rotate 7; compress; missingok }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0097"}
{"problem": "Create write a shell function that waits for a tcp port to become available on a remote host using best practices.", "solution": "# Variation 98\nwait_for_port() { local h=\"$1\" p=\"$2\"; while ! nc -z \"$h\" \"$p\"; do sleep 1; done; }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0098"}
{"problem": "Build implement a script that sets up a python virtualenv using best practices.", "solution": "python3 -m venv /opt/app/venv\nsource /opt/app/venv/bin/activate\npip install -r requirements.txt", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0099"}
{"problem": "Configure write nginx server block that serves static site and redirects http to https using best practices.", "solution": "server {\n listen 80; server_name example.com;\n return 301 https://$server_name$request_uri;\n}\nserver {\n listen 443 ssl http2; server_name example.com;\n ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;\n root /var/www/html;\n location / { try_files $uri $uri/ =404; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0100"}
{"problem": "Set up configure nginx as reverse proxy to backend on port 3000 using best practices.", "solution": "upstream app { server 127.0.0.1:3000; }\nserver {\n listen 80; server_name app.example.com;\n location / {\n proxy_pass http:app;\n proxy_http_version 1.1;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection \"upgrade\";\n }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0101"}
{"problem": "Write code to write nginx rate limiting configuration for /api/ endpoint ensuring idempotency.", "solution": "limit_req_zone $binary_remote_addr zone=api:10m rate=10r/s;\nserver {\n location /api/ { limit_req zone=api burst=20 nodelay; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0102"}
{"problem": "Implement create nginx config snippet that adds hsts and csp headers ensuring idempotency.", "solution": "add_header Strict-Transport-Security \"max-age=63072000\" always;\nadd_header Content-Security-Policy \"default-src 'self'\" always;", "imports": "", "domain": "nginx", "id": "deploy-infra-0103"}
{"problem": "Create write a systemd service unit for a python app as non-root, restart on failure ensuring idempotency.", "solution": "[Unit]\nDescription=My Python App\nAfter=network.target\n\n[Service]\nType=simple\nUser=deploy\nWorkingDirectory=/opt/app\nExecStart=/opt/app/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app\nRestart=on-failure\nRestartSec=10\n\n[Install]\nWantedBy=multi-user.target", "imports": "", "domain": "systemd", "id": "deploy-infra-0104"}
{"problem": "Build create a systemd timer that runs a backup script daily at 2:30 am ensuring idempotency.", "solution": "# Variation 105\n[Timer]\nOnCalendar=*-*-* 02:30:00\nPersistent=true\nUnit=backup.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/backup.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0105"}
{"problem": "Configure write a systemd path unit that triggers a service when a config file changes ensuring idempotency.", "solution": "[Path]\nPathModified=/etc/app/config.yaml\nUnit=config-reload.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/reload.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0106"}
{"problem": "Set up write a multi-stage dockerfile for python fastapi ensuring idempotency.", "solution": "FROM python:3.12-slim AS builder\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --user --no-cache-dir -r requirements.txt\n\nFROM python:3.12-slim\nWORKDIR /app\nCOPY --from=builder /root/.local /root/.local\nCOPY . .\nCMD [\"uvicorn\", \"main:app\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0107"}
{"problem": "Write code to create a docker-compose.yml with web, postgres, and redis with logging.", "solution": "version: \"3.9\"\nservices:\n postgres: { image: postgres:15-alpine, environment: { POSTGRES_PASSWORD: \"secret\" }, volumes: [\"pgdata:/var/lib/postgresql/data\"] }\n redis: { image: redis:7-alpine }\n web: { build: ., ports: [\"8000:8000\"], depends_on: { postgres: {condition: service_healthy} } }\nvolumes: { pgdata: }", "imports": "", "domain": "docker", "id": "deploy-infra-0108"}
{"problem": "Implement write a dockerfile for node.js production with logging.", "solution": "FROM node:18-alpine AS builder\nWORKDIR /app\nCOPY package*.json .\nRUN npm ci --only=production\n\nFROM node:18-alpine\nENV NODE_ENV=production\nCOPY --from=builder /node_modules ./node_modules\nCOPY . .\nUSER nodejs\nCMD [\"node\", \"server.js\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0109"}
{"problem": "Create create a docker network for app isolation with logging.", "solution": "docker network create --driver bridge --subnet 172.20.0.0/16 app-net\ndocker run -d --name db --network app-net postgres:15\ndocker run -d --name api --network app-net myapp:latest", "imports": "", "domain": "docker", "id": "deploy-infra-0110"}
{"problem": "Build write an ssh config for two host groups with logging.", "solution": "Host prod-*\n HostName %h.example.com\n User deploy\n IdentityFile ~/.ssh/id_rsa_prod\nHost dev-*\n HostName dev.example.com\n User dev\n IdentityFile ~/.ssh/id_rsa_dev", "imports": "", "domain": "ssh", "id": "deploy-infra-0111"}
{"problem": "Configure create bash function for ssh tunnel forwarding postgresql port with logging.", "solution": "# Variation 112\nssh_postgres_tunnel() { ssh -fN -L \"${3:-55432}:localhost:${2:-5432}\" \"${1:-prod-db.example.com}\" -o ExitOnForwardFailure=yes; }", "imports": "", "domain": "ssh", "id": "deploy-infra-0112"}
{"problem": "Set up write a script that distributes ssh key to multiple servers with logging.", "solution": "for s in web01 web02 db01; do\n ssh-copy-id -i ~/.ssh/id_rsa.pub deploy@${s}.example.com 2>/dev/null && echo \"✓ $s\"\ndone", "imports": "", "domain": "ssh", "id": "deploy-infra-0113"}
{"problem": "Write code to configure ssh to use a jump host for internal servers for production.", "solution": "Host internal-*\n ProxyJump jump.example.com\n HostName %h.internal.local", "imports": "", "domain": "ssh", "id": "deploy-infra-0114"}
{"problem": "Implement write a cloud-init config that provisions ubuntu 22.04 with deploy user, ssh key auth, and auto updates for production.", "solution": "#cloud-config\nusers: [{name: deploy, groups: [sudo], shell: /bin/bash, ssh_authorized_keys: [ssh-rsa AAA...]}]\npackage_update: true\npackages: [ufw, fail2ban]", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0115"}
{"problem": "Create create a terraform config for a digitalocean droplet (2gb) with ssh key for production.", "solution": "terraform { required_providers { digitalocean={source=\"digitalocean/digitalocean\",version=\"~>2.0\"} } }\nresource \"digitalocean_droplet\" \"web\" { name=\"web-01\"; region=\"nyc3\"; size=\"s-2vcpu-2gb\" }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0116"}
{"problem": "Build write an ansible playbook to install packages and start nginx for production.", "solution": "---\n- hosts: all\n become: true\n tasks:\n - apt: name=[ufw,nginx] state=present\n - systemd: name=nginx enabled=true state=started", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0117"}
{"problem": "Configure bash script: create deploy user, install docker, harden ssh for production.", "solution": "#!/usr/bin/env bash\nset -euo pipefail\nid -u deploy &>/dev/null || useradd -m -s /bin/bash deploy\n[[ -x $(command -v docker) ]] || curl -fsSL https://get.docker.com | sh\nsed -i 's/^PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0118"}
{"problem": "Set up write a systemd drop-in to override service restart settings for production.", "solution": "# Variation 119\n[Service]\nRestart=always\nRestartSec=5", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0119"}
{"problem": "Write code to create a logrotate config for application logs with error handling.", "solution": "/var/log_msg/app/*.log_msg { daily; rotate 7; compress; missingok }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0120"}
{"problem": "Implement write a shell function that waits for a tcp port to become available on a remote host with error handling.", "solution": "wait_for_port() { local h=\"$1\" p=\"$2\"; while ! nc -z \"$h\" \"$p\"; do sleep 1; done; }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0121"}
{"problem": "Create implement a script that sets up a python virtualenv with error handling.", "solution": "python3 -m venv /opt/app/venv\nsource /opt/app/venv/bin/activate\npip install -r requirements.txt", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0122"}
{"problem": "Build write nginx server block that serves static site and redirects http to https with error handling.", "solution": "server {\n listen 80; server_name example.com;\n return 301 https://$server_name$request_uri;\n}\nserver {\n listen 443 ssl http2; server_name example.com;\n ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;\n root /var/www/html;\n location / { try_files $uri $uri/ =404; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0123"}
{"problem": "Configure configure nginx as reverse proxy to backend on port 3000 with error handling.", "solution": "upstream app { server 127.0.0.1:3000; }\nserver {\n listen 80; server_name app.example.com;\n location / {\n proxy_pass http:app;\n proxy_http_version 1.1;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection \"upgrade\";\n }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0124"}
{"problem": "Set up write nginx rate limiting configuration for /api/ endpoint with error handling.", "solution": "limit_req_zone $binary_remote_addr zone=api:10m rate=10r/s;\nserver {\n location /api/ { limit_req zone=api burst=20 nodelay; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0125"}
{"problem": "Write code to create nginx config snippet that adds hsts and csp headers using best practices.", "solution": "# Variation 126\nadd_header Strict-Transport-Security \"max-age=63072000\" always;\nadd_header Content-Security-Policy \"default-src 'self'\" always;", "imports": "", "domain": "nginx", "id": "deploy-infra-0126"}
{"problem": "Implement write a systemd service unit for a python app as non-root, restart on failure using best practices.", "solution": "[Unit]\nDescription=My Python App\nAfter=network.target\n\n[Service]\nType=simple\nUser=deploy\nWorkingDirectory=/opt/app\nExecStart=/opt/app/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app\nRestart=on-failure\nRestartSec=10\n\n[Install]\nWantedBy=multi-user.target", "imports": "", "domain": "systemd", "id": "deploy-infra-0127"}
{"problem": "Create create a systemd timer that runs a backup script daily at 2:30 am using best practices.", "solution": "[Timer]\nOnCalendar=*-*-* 02:30:00\nPersistent=true\nUnit=backup.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/backup.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0128"}
{"problem": "Build write a systemd path unit that triggers a service when a config file changes using best practices.", "solution": "[Path]\nPathModified=/etc/app/config.yaml\nUnit=config-reload.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/reload.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0129"}
{"problem": "Configure write a multi-stage dockerfile for python fastapi using best practices.", "solution": "FROM python:3.12-slim AS builder\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --user --no-cache-dir -r requirements.txt\n\nFROM python:3.12-slim\nWORKDIR /app\nCOPY --from=builder /root/.local /root/.local\nCOPY . .\nCMD [\"uvicorn\", \"main:app\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0130"}
{"problem": "Set up create a docker-compose.yml with web, postgres, and redis using best practices.", "solution": "version: \"3.9\"\nservices:\n postgres: { image: postgres:15-alpine, environment: { POSTGRES_PASSWORD: \"secret\" }, volumes: [\"pgdata:/var/lib/postgresql/data\"] }\n redis: { image: redis:7-alpine }\n web: { build: ., ports: [\"8000:8000\"], depends_on: { postgres: {condition: service_healthy} } }\nvolumes: { pgdata: }", "imports": "", "domain": "docker", "id": "deploy-infra-0131"}
{"problem": "Write code to write a dockerfile for node.js production ensuring idempotency.", "solution": "FROM node:18-alpine AS builder\nWORKDIR /app\nCOPY package*.json .\nRUN npm ci --only=production\n\nFROM node:18-alpine\nENV NODE_ENV=production\nCOPY --from=builder /node_modules ./node_modules\nCOPY . .\nUSER nodejs\nCMD [\"node\", \"server.js\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0132"}
{"problem": "Implement create a docker network for app isolation ensuring idempotency.", "solution": "# Variation 133\ndocker network create --driver bridge --subnet 172.20.0.0/16 app-net\ndocker run -d --name db --network app-net postgres:15\ndocker run -d --name api --network app-net myapp:latest", "imports": "", "domain": "docker", "id": "deploy-infra-0133"}
{"problem": "Create write an ssh config for two host groups ensuring idempotency.", "solution": "Host prod-*\n HostName %h.example.com\n User deploy\n IdentityFile ~/.ssh/id_rsa_prod\nHost dev-*\n HostName dev.example.com\n User dev\n IdentityFile ~/.ssh/id_rsa_dev", "imports": "", "domain": "ssh", "id": "deploy-infra-0134"}
{"problem": "Build create bash function for ssh tunnel forwarding postgresql port ensuring idempotency.", "solution": "ssh_postgres_tunnel() { ssh -fN -L \"${3:-55432}:localhost:${2:-5432}\" \"${1:-prod-db.example.com}\" -o ExitOnForwardFailure=yes; }", "imports": "", "domain": "ssh", "id": "deploy-infra-0135"}
{"problem": "Configure write a script that distributes ssh key to multiple servers ensuring idempotency.", "solution": "for s in web01 web02 db01; do\n ssh-copy-id -i ~/.ssh/id_rsa.pub deploy@${s}.example.com 2>/dev/null && echo \"✓ $s\"\ndone", "imports": "", "domain": "ssh", "id": "deploy-infra-0136"}
{"problem": "Set up configure ssh to use a jump host for internal servers ensuring idempotency.", "solution": "Host internal-*\n ProxyJump jump.example.com\n HostName %h.internal.local", "imports": "", "domain": "ssh", "id": "deploy-infra-0137"}
{"problem": "Write code to write a cloud-init config that provisions ubuntu 22.04 with deploy user, ssh key auth, and auto updates with logging.", "solution": "#cloud-config\nusers: [{name: deploy, groups: [sudo], shell: /bin/bash, ssh_authorized_keys: [ssh-rsa AAA...]}]\npackage_update: true\npackages: [ufw, fail2ban]", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0138"}
{"problem": "Implement create a terraform config for a digitalocean droplet (2gb) with ssh key with logging.", "solution": "terraform { required_providers { digitalocean={source=\"digitalocean/digitalocean\",version=\"~>2.0\"} } }\nresource \"digitalocean_droplet\" \"web\" { name=\"web-01\"; region=\"nyc3\"; size=\"s-2vcpu-2gb\" }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0139"}
{"problem": "Create write an ansible playbook to install packages and start nginx with logging.", "solution": "# Variation 140\n---\n- hosts: all\n become: true\n tasks:\n - apt: name=[ufw,nginx] state=present\n - systemd: name=nginx enabled=true state=started", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0140"}
{"problem": "Build bash script: create deploy user, install docker, harden ssh with logging.", "solution": "#!/usr/bin/env bash\nset -euo pipefail\nid -u deploy &>/dev/null || useradd -m -s /bin/bash deploy\n[[ -x $(command -v docker) ]] || curl -fsSL https://get.docker.com | sh\nsed -i 's/^PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0141"}
{"problem": "Configure write a systemd drop-in to override service restart settings with logging.", "solution": "[Service]\nRestart=always\nRestartSec=5", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0142"}
{"problem": "Set up create a logrotate config for application logs with logging.", "solution": "/var/log/app/*.log { daily; rotate 7; compress; missingok }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0143"}
{"problem": "Write code to write a shell function that waits for a tcp port to become available on a remote host for production.", "solution": "wait_for_port() { local h=\"$1\" p=\"$2\"; while ! nc -z \"$h\" \"$p\"; do sleep 1; done; }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0144"}
{"problem": "Implement implement a script that sets up a python virtualenv for production.", "solution": "python3 -m venv /opt/app/venv\nsource /opt/app/venv/bin/activate\npip install -r requirements.txt", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0145"}
{"problem": "Create write nginx server block that serves static site and redirects http to https for production.", "solution": "server {\n listen 80; server_name example.com;\n return 301 https://$server_name$request_uri;\n}\nserver {\n listen 443 ssl http2; server_name example.com;\n ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;\n root /var/www/html;\n location / { try_files $uri $uri/ =404; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0146"}
{"problem": "Build configure nginx as reverse proxy to backend on port 3000 for production.", "solution": "# Variation 147\nupstream app { server 127.0.0.1:3000; }\nserver {\n listen 80; server_name app.example.com;\n location / {\n proxy_pass http:app;\n proxy_http_version 1.1;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection \"upgrade\";\n }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0147"}
{"problem": "Configure write nginx rate limiting configuration for /api/ endpoint for production.", "solution": "limit_req_zone $binary_remote_addr zone=api:10m rate=10r/s;\nserver {\n location /api/ { limit_req zone=api burst=20 nodelay; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0148"}
{"problem": "Set up create nginx config snippet that adds hsts and csp headers for production.", "solution": "add_header Strict-Transport-Security \"max-age=63072000\" always;\nadd_header Content-Security-Policy \"default-src 'self'\" always;", "imports": "", "domain": "nginx", "id": "deploy-infra-0149"}
{"problem": "Write code to write a systemd service unit for a python app as non-root, restart on failure with error handling.", "solution": "[Unit]\nDescription=My Python App\nAfter=network.target\n\n[Service]\nType=simple\nUser=deploy\nWorkingDirectory=/opt/app\nExecStart=/opt/app/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app\nRestart=on-failure\nRestartSec=10\n\n[Install]\nWantedBy=multi-user.target", "imports": "", "domain": "systemd", "id": "deploy-infra-0150"}
{"problem": "Implement create a systemd timer that runs a backup script daily at 2:30 am with error handling.", "solution": "[Timer]\nOnCalendar=*-*-* 02:30:00\nPersistent=true\nUnit=backup.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/backup.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0151"}
{"problem": "Create write a systemd path unit that triggers a service when a config file changes with error handling.", "solution": "[Path]\nPathModified=/etc/app/config.yaml\nUnit=config-reload.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/reload.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0152"}
{"problem": "Build write a multi-stage dockerfile for python fastapi with error handling.", "solution": "FROM python:3.12-slim AS builder\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --user --no-cache-dir -r requirements.txt\n\nFROM python:3.12-slim\nWORKDIR /app\nCOPY --from=builder /root/.local /root/.local\nCOPY . .\nCMD [\"uvicorn\", \"main:app\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0153"}
{"problem": "Configure create a docker-compose.yml with web, postgres, and redis with error handling.", "solution": "# Variation 154\nversion: \"3.9\"\nservices:\n postgres: { image: postgres:15-alpine, environment: { POSTGRES_PASSWORD: \"secret\" }, volumes: [\"pgdata:/var/lib/postgresql/data\"] }\n redis: { image: redis:7-alpine }\n web: { build: ., ports: [\"8000:8000\"], depends_on: { postgres: {condition: service_healthy} } }\nvolumes: { pgdata: }", "imports": "", "domain": "docker", "id": "deploy-infra-0154"}
{"problem": "Set up write a dockerfile for node.js production with error handling.", "solution": "FROM node:18-alpine AS builder\nWORKDIR /app\nCOPY package*.json .\nRUN npm ci --only=production\n\nFROM node:18-alpine\nENV NODE_ENV=production\nCOPY --from=builder /node_modules ./node_modules\nCOPY . .\nUSER nodejs\nCMD [\"node\", \"server.js\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0155"}
{"problem": "Write code to create a docker network for app isolation using best practices.", "solution": "docker network create --driver bridge --subnet 172.20.0.0/16 app-net\ndocker run -d --name db --network app-net postgres:15\ndocker run -d --name api --network app-net myapp:latest", "imports": "", "domain": "docker", "id": "deploy-infra-0156"}
{"problem": "Implement write an ssh config for two host groups using best practices.", "solution": "Host prod-*\n HostName %h.example.com\n User deploy\n IdentityFile ~/.ssh/id_rsa_prod\nHost dev-*\n HostName dev.example.com\n User dev\n IdentityFile ~/.ssh/id_rsa_dev", "imports": "", "domain": "ssh", "id": "deploy-infra-0157"}
{"problem": "Create create bash function for ssh tunnel forwarding postgresql port using best practices.", "solution": "ssh_postgres_tunnel() { ssh -fN -L \"${3:-55432}:localhost:${2:-5432}\" \"${1:-prod-db.example.com}\" -o ExitOnForwardFailure=yes; }", "imports": "", "domain": "ssh", "id": "deploy-infra-0158"}
{"problem": "Build write a script that distributes ssh key to multiple servers using best practices.", "solution": "for s in web01 web02 db01; do\n ssh-copy-id -i ~/.ssh/id_rsa.pub deploy@${s}.example.com 2>/dev/null && echo \"✓ $s\"\ndone", "imports": "", "domain": "ssh", "id": "deploy-infra-0159"}
{"problem": "Configure configure ssh to use a jump host for internal servers using best practices.", "solution": "Host internal-*\n ProxyJump jump.example.com\n HostName %h.internal.local", "imports": "", "domain": "ssh", "id": "deploy-infra-0160"}
{"problem": "Set up write a cloud-init config that provisions ubuntu 22.04 with deploy user, ssh key auth, and auto updates using best practices.", "solution": "# Variation 161\n#cloud-config\nusers: [{name: deploy, groups: [sudo], shell: /bin/bash, ssh_authorized_keys: [ssh-rsa AAA...]}]\npackage_update: true\npackages: [ufw, fail2ban]", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0161"}
{"problem": "Write code to create a terraform config for a digitalocean droplet (2gb) with ssh key ensuring idempotency.", "solution": "terraform { required_providers { digitalocean={source=\"digitalocean/digitalocean\",version=\"~>2.0\"} } }\nresource \"digitalocean_droplet\" \"web\" { name=\"web-01\"; region=\"nyc3\"; size=\"s-2vcpu-2gb\" }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0162"}
{"problem": "Implement write an ansible playbook to install packages and start nginx ensuring idempotency.", "solution": "---\n- hosts: all\n become: true\n tasks:\n - apt: name=[ufw,nginx] state=present\n - systemd: name=nginx enabled=true state=started", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0163"}
{"problem": "Create bash script: create deploy user, install docker, harden ssh ensuring idempotency.", "solution": "#!/usr/bin/env bash\nset -euo pipefail\nid -u deploy &>/dev/null || useradd -m -s /bin/bash deploy\n[[ -x $(command -v docker) ]] || curl -fsSL https://get.docker.com | sh\nsed -i 's/^PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0164"}
{"problem": "Build write a systemd drop-in to override service restart settings ensuring idempotency.", "solution": "[Service]\nRestart=always\nRestartSec=5", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0165"}
{"problem": "Configure create a logrotate config for application logs ensuring idempotency.", "solution": "/var/log/app/*.log { daily; rotate 7; compress; missingok }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0166"}
{"problem": "Set up write a shell function that waits for a tcp port to become available on a remote host ensuring idempotency.", "solution": "wait_for_port() { local h=\"$1\" p=\"$2\"; while ! nc -z \"$h\" \"$p\"; do sleep 1; done; }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0167"}
{"problem": "Write code to implement a script that sets up a python virtualenv with logging.", "solution": "# Variation 168\npython3 -m venv /opt/app/venv\nsource /opt/app/venv/bin/activate\npip install -r requirements.txt", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0168"}
{"problem": "Implement write nginx server block that serves static site and redirects http to https with logging.", "solution": "server {\n listen 80; server_name example.com;\n return 301 https://$server_name$request_uri;\n}\nserver {\n listen 443 ssl http2; server_name example.com;\n ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;\n root /var/www/html;\n location / { try_files $uri $uri/ =404; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0169"}
{"problem": "Create configure nginx as reverse proxy to backend on port 3000 with logging.", "solution": "upstream app { server 127.0.0.1:3000; }\nserver {\n listen 80; server_name app.example.com;\n location / {\n proxy_pass http:app;\n proxy_http_version 1.1;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection \"upgrade\";\n }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0170"}
{"problem": "Build write nginx rate limiting configuration for /api/ endpoint with logging.", "solution": "limit_req_zone $binary_remote_addr zone=api:10m rate=10r/s;\nserver {\n location /api/ { limit_req zone=api burst=20 nodelay; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0171"}
{"problem": "Configure create nginx config snippet that adds hsts and csp headers with logging.", "solution": "add_header Strict-Transport-Security \"max-age=63072000\" always;\nadd_header Content-Security-Policy \"default-src 'self'\" always;", "imports": "", "domain": "nginx", "id": "deploy-infra-0172"}
{"problem": "Set up write a systemd service unit for a python app as non-root, restart on failure with logging.", "solution": "[Unit]\nDescription=My Python App\nAfter=network.target\n\n[Service]\nType=simple\nUser=deploy\nWorkingDirectory=/opt/app\nExecStart=/opt/app/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app\nRestart=on-failure\nRestartSec=10\n\n[Install]\nWantedBy=multi-user.target", "imports": "", "domain": "systemd", "id": "deploy-infra-0173"}
{"problem": "Write code to create a systemd timer that runs a backup script daily at 2:30 am for production.", "solution": "[Timer]\nOnCalendar=*-*-* 02:30:00\nPersistent=true\nUnit=backup.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/backup.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0174"}
{"problem": "Implement write a systemd path unit that triggers a service when a config file changes for production.", "solution": "# Variation 175\n[Path]\nPathModified=/etc/app/config.yaml\nUnit=config-reload.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/reload.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0175"}
{"problem": "Create write a multi-stage dockerfile for python fastapi for production.", "solution": "FROM python:3.12-slim AS builder\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --user --no-cache-dir -r requirements.txt\n\nFROM python:3.12-slim\nWORKDIR /app\nCOPY --from=builder /root/.local /root/.local\nCOPY . .\nCMD [\"uvicorn\", \"main:app\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0176"}
{"problem": "Build create a docker-compose.yml with web, postgres, and redis for production.", "solution": "version: \"3.9\"\nservices:\n postgres: { image: postgres:15-alpine, environment: { POSTGRES_PASSWORD: \"secret\" }, volumes: [\"pgdata:/var/lib/postgresql/data\"] }\n redis: { image: redis:7-alpine }\n web: { build: ., ports: [\"8000:8000\"], depends_on: { postgres: {condition: service_healthy} } }\nvolumes: { pgdata: }", "imports": "", "domain": "docker", "id": "deploy-infra-0177"}
{"problem": "Configure write a dockerfile for node.js production for production.", "solution": "FROM node:18-alpine AS builder\nWORKDIR /app\nCOPY package*.json .\nRUN npm ci --only=production\n\nFROM node:18-alpine\nENV NODE_ENV=production\nCOPY --from=builder /node_modules ./node_modules\nCOPY . .\nUSER nodejs\nCMD [\"node\", \"server.js\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0178"}
{"problem": "Set up create a docker network for app isolation for production.", "solution": "docker network create --driver bridge --subnet 172.20.0.0/16 app-net\ndocker run -d --name db --network app-net postgres:15\ndocker run -d --name api --network app-net myapp:latest", "imports": "", "domain": "docker", "id": "deploy-infra-0179"}
{"problem": "Write code to write an ssh config for two host groups with error handling.", "solution": "Host prod-*\n HostName %h.example.com\n User deploy\n IdentityFile ~/.ssh/id_rsa_prod\nHost dev-*\n HostName dev.example.com\n User dev\n IdentityFile ~/.ssh/id_rsa_dev", "imports": "", "domain": "ssh", "id": "deploy-infra-0180"}
{"problem": "Implement create bash function for ssh tunnel forwarding postgresql port with error handling.", "solution": "ssh_postgres_tunnel() { ssh -fN -L \"${3:-55432}:localhost:${2:-5432}\" \"${1:-prod-db.example.com}\" -o ExitOnForwardFailure=yes; }", "imports": "", "domain": "ssh", "id": "deploy-infra-0181"}
{"problem": "Create write a script that distributes ssh key to multiple servers with error handling.", "solution": "# Variation 182\nfor s in web01 web02 db01; do\n ssh-copy-id -i ~/.ssh/id_rsa.pub deploy@${s}.example.com 2>/dev/null && echo \"✓ $s\"\ndone", "imports": "", "domain": "ssh", "id": "deploy-infra-0182"}
{"problem": "Build configure ssh to use a jump host for internal servers with error handling.", "solution": "Host internal-*\n ProxyJump jump.example.com\n HostName %h.internal.local", "imports": "", "domain": "ssh", "id": "deploy-infra-0183"}
{"problem": "Configure write a cloud-init config that provisions ubuntu 22.04 with deploy user, ssh key auth, and auto updates with error handling.", "solution": "#cloud-config\nusers: [{name: deploy, groups: [sudo], shell: /bin/bash, ssh_authorized_keys: [ssh-rsa AAA...]}]\npackage_update: true\npackages: [ufw, fail2ban]", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0184"}
{"problem": "Set up create a terraform config for a digitalocean droplet (2gb) with ssh key with error handling.", "solution": "terraform { required_providers { digitalocean={source=\"digitalocean/digitalocean\",version=\"~>2.0\"} } }\nresource \"digitalocean_droplet\" \"web\" { name=\"web-01\"; region=\"nyc3\"; size=\"s-2vcpu-2gb\" }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0185"}
{"problem": "Write code to write an ansible playbook to install packages and start nginx using best practices.", "solution": "---\n- hosts: all\n become: true\n tasks:\n - apt: name=[ufw,nginx] state=present\n - systemd: name=nginx enabled=true state=started", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0186"}
{"problem": "Implement bash script: create deploy user, install docker, harden ssh using best practices.", "solution": "#!/usr/bin/env bash\nset -euo pipefail\nid -u deploy &>/dev/null || useradd -m -s /bin/bash deploy\n[[ -x $(command -v docker) ]] || curl -fsSL https://get.docker.com | sh\nsed -i 's/^PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0187"}
{"problem": "Create write a systemd drop-in to override service restart settings using best practices.", "solution": "[Service]\nRestart=always\nRestartSec=5", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0188"}
{"problem": "Build create a logrotate config for application logs using best practices.", "solution": "# Variation 189\n/var/log_msg/app/*.log_msg { daily; rotate 7; compress; missingok }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0189"}
{"problem": "Configure write a shell function that waits for a tcp port to become available on a remote host using best practices.", "solution": "wait_for_port() { local h=\"$1\" p=\"$2\"; while ! nc -z \"$h\" \"$p\"; do sleep 1; done; }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0190"}
{"problem": "Set up implement a script that sets up a python virtualenv using best practices.", "solution": "python3 -m venv /opt/app/venv\nsource /opt/app/venv/bin/activate\npip install -r requirements.txt", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0191"}
{"problem": "Write code to write nginx server block that serves static site and redirects http to https ensuring idempotency.", "solution": "server {\n listen 80; server_name example.com;\n return 301 https://$server_name$request_uri;\n}\nserver {\n listen 443 ssl http2; server_name example.com;\n ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;\n root /var/www/html;\n location / { try_files $uri $uri/ =404; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0192"}
{"problem": "Implement configure nginx as reverse proxy to backend on port 3000 ensuring idempotency.", "solution": "upstream app { server 127.0.0.1:3000; }\nserver {\n listen 80; server_name app.example.com;\n location / {\n proxy_pass http:app;\n proxy_http_version 1.1;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection \"upgrade\";\n }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0193"}
{"problem": "Create write nginx rate limiting configuration for /api/ endpoint ensuring idempotency.", "solution": "limit_req_zone $binary_remote_addr zone=api:10m rate=10r/s;\nserver {\n location /api/ { limit_req zone=api burst=20 nodelay; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0194"}
{"problem": "Build create nginx config snippet that adds hsts and csp headers ensuring idempotency.", "solution": "add_header Strict-Transport-Security \"max-age=63072000\" always;\nadd_header Content-Security-Policy \"default-src 'self'\" always;", "imports": "", "domain": "nginx", "id": "deploy-infra-0195"}
{"problem": "Configure write a systemd service unit for a python app as non-root, restart on failure ensuring idempotency.", "solution": "# Variation 196\n[Unit]\nDescription=My Python App\nAfter=network.target\n\n[Service]\nType=simple\nUser=deploy\nWorkingDirectory=/opt/app\nExecStart=/opt/app/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app\nRestart=on-failure\nRestartSec=10\n\n[Install]\nWantedBy=multi-user.target", "imports": "", "domain": "systemd", "id": "deploy-infra-0196"}
{"problem": "Set up create a systemd timer that runs a backup script daily at 2:30 am ensuring idempotency.", "solution": "[Timer]\nOnCalendar=*-*-* 02:30:00\nPersistent=true\nUnit=backup.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/backup.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0197"}
{"problem": "Write code to write a systemd path unit that triggers a service when a config file changes with logging.", "solution": "[Path]\nPathModified=/etc/app/config.yaml\nUnit=config-reload.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/reload.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0198"}
{"problem": "Implement write a multi-stage dockerfile for python fastapi with logging.", "solution": "FROM python:3.12-slim AS builder\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --user --no-cache-dir -r requirements.txt\n\nFROM python:3.12-slim\nWORKDIR /app\nCOPY --from=builder /root/.local /root/.local\nCOPY . .\nCMD [\"uvicorn\", \"main:app\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0199"}
{"problem": "Create create a docker-compose.yml with web, postgres, and redis with logging.", "solution": "version: \"3.9\"\nservices:\n postgres: { image: postgres:15-alpine, environment: { POSTGRES_PASSWORD: \"secret\" }, volumes: [\"pgdata:/var/lib/postgresql/data\"] }\n redis: { image: redis:7-alpine }\n web: { build: ., ports: [\"8000:8000\"], depends_on: { postgres: {condition: service_healthy} } }\nvolumes: { pgdata: }", "imports": "", "domain": "docker", "id": "deploy-infra-0200"}
{"problem": "Build write a dockerfile for node.js production with logging.", "solution": "FROM node:18-alpine AS builder\nWORKDIR /app\nCOPY package*.json .\nRUN npm ci --only=production\n\nFROM node:18-alpine\nENV NODE_ENV=production\nCOPY --from=builder /node_modules ./node_modules\nCOPY . .\nUSER nodejs\nCMD [\"node\", \"server.js\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0201"}
{"problem": "Configure create a docker network for app isolation with logging.", "solution": "docker network create --driver bridge --subnet 172.20.0.0/16 app-net\ndocker run -d --name db --network app-net postgres:15\ndocker run -d --name api --network app-net myapp:latest", "imports": "", "domain": "docker", "id": "deploy-infra-0202"}
{"problem": "Set up write an ssh config for two host groups with logging.", "solution": "# Variation 203\nHost prod-*\n HostName %h.example.com\n User deploy\n IdentityFile ~/.ssh/id_rsa_prod\nHost dev-*\n HostName dev.example.com\n User dev\n IdentityFile ~/.ssh/id_rsa_dev", "imports": "", "domain": "ssh", "id": "deploy-infra-0203"}
{"problem": "Write code to create bash function for ssh tunnel forwarding postgresql port for production.", "solution": "ssh_postgres_tunnel() { ssh -fN -L \"${3:-55432}:localhost:${2:-5432}\" \"${1:-prod-db.example.com}\" -o ExitOnForwardFailure=yes; }", "imports": "", "domain": "ssh", "id": "deploy-infra-0204"}
{"problem": "Implement write a script that distributes ssh key to multiple servers for production.", "solution": "for s in web01 web02 db01; do\n ssh-copy-id -i ~/.ssh/id_rsa.pub deploy@${s}.example.com 2>/dev/null && echo \"✓ $s\"\ndone", "imports": "", "domain": "ssh", "id": "deploy-infra-0205"}
{"problem": "Create configure ssh to use a jump host for internal servers for production.", "solution": "Host internal-*\n ProxyJump jump.example.com\n HostName %h.internal.local", "imports": "", "domain": "ssh", "id": "deploy-infra-0206"}
{"problem": "Build write a cloud-init config that provisions ubuntu 22.04 with deploy user, ssh key auth, and auto updates for production.", "solution": "#cloud-config\nusers: [{name: deploy, groups: [sudo], shell: /bin/bash, ssh_authorized_keys: [ssh-rsa AAA...]}]\npackage_update: true\npackages: [ufw, fail2ban]", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0207"}
{"problem": "Configure create a terraform config for a digitalocean droplet (2gb) with ssh key for production.", "solution": "terraform { required_providers { digitalocean={source=\"digitalocean/digitalocean\",version=\"~>2.0\"} } }\nresource \"digitalocean_droplet\" \"web\" { name=\"web-01\"; region=\"nyc3\"; size=\"s-2vcpu-2gb\" }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0208"}
{"problem": "Set up write an ansible playbook to install packages and start nginx for production.", "solution": "---\n- hosts: all\n become: true\n tasks:\n - apt: name=[ufw,nginx] state=present\n - systemd: name=nginx enabled=true state=started", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0209"}
{"problem": "Write code to bash script: create deploy user, install docker, harden ssh with error handling.", "solution": "# Variation 210\n#!/usr/bin/env bash\nset -euo pipefail\nid -u deploy &>/dev/null || useradd -m -s /bin/bash deploy\n[[ -x $(command -v docker) ]] || curl -fsSL https://get.docker.com | sh\nsed -i 's/^PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0210"}
{"problem": "Implement write a systemd drop-in to override service restart settings with error handling.", "solution": "[Service]\nRestart=always\nRestartSec=5", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0211"}
{"problem": "Create create a logrotate config for application logs with error handling.", "solution": "/var/log/app/*.log { daily; rotate 7; compress; missingok }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0212"}
{"problem": "Build write a shell function that waits for a tcp port to become available on a remote host with error handling.", "solution": "wait_for_port() { local h=\"$1\" p=\"$2\"; while ! nc -z \"$h\" \"$p\"; do sleep 1; done; }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0213"}
{"problem": "Configure implement a script that sets up a python virtualenv with error handling.", "solution": "python3 -m venv /opt/app/venv\nsource /opt/app/venv/bin/activate\npip install -r requirements.txt", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0214"}
{"problem": "Set up write nginx server block that serves static site and redirects http to https with error handling.", "solution": "server {\n listen 80; server_name example.com;\n return 301 https://$server_name$request_uri;\n}\nserver {\n listen 443 ssl http2; server_name example.com;\n ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;\n root /var/www/html;\n location / { try_files $uri $uri/ =404; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0215"}
{"problem": "Write code to configure nginx as reverse proxy to backend on port 3000 using best practices.", "solution": "upstream app { server 127.0.0.1:3000; }\nserver {\n listen 80; server_name app.example.com;\n location / {\n proxy_pass http:app;\n proxy_http_version 1.1;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection \"upgrade\";\n }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0216"}
{"problem": "Implement write nginx rate limiting configuration for /api/ endpoint using best practices.", "solution": "# Variation 217\nlimit_req_zone $binary_remote_addr zone=api:10m rate=10r/s;\nserver {\n location /api/ { limit_req zone=api burst=20 nodelay; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0217"}
{"problem": "Create create nginx config snippet that adds hsts and csp headers using best practices.", "solution": "add_header Strict-Transport-Security \"max-age=63072000\" always;\nadd_header Content-Security-Policy \"default-src 'self'\" always;", "imports": "", "domain": "nginx", "id": "deploy-infra-0218"}
{"problem": "Build write a systemd service unit for a python app as non-root, restart on failure using best practices.", "solution": "[Unit]\nDescription=My Python App\nAfter=network.target\n\n[Service]\nType=simple\nUser=deploy\nWorkingDirectory=/opt/app\nExecStart=/opt/app/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app\nRestart=on-failure\nRestartSec=10\n\n[Install]\nWantedBy=multi-user.target", "imports": "", "domain": "systemd", "id": "deploy-infra-0219"}
{"problem": "Configure create a systemd timer that runs a backup script daily at 2:30 am using best practices.", "solution": "[Timer]\nOnCalendar=*-*-* 02:30:00\nPersistent=true\nUnit=backup.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/backup.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0220"}
{"problem": "Set up write a systemd path unit that triggers a service when a config file changes using best practices.", "solution": "[Path]\nPathModified=/etc/app/config.yaml\nUnit=config-reload.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/reload.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0221"}
{"problem": "Write code to write a multi-stage dockerfile for python fastapi ensuring idempotency.", "solution": "FROM python:3.12-slim AS builder\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --user --no-cache-dir -r requirements.txt\n\nFROM python:3.12-slim\nWORKDIR /app\nCOPY --from=builder /root/.local /root/.local\nCOPY . .\nCMD [\"uvicorn\", \"main:app\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0222"}
{"problem": "Implement create a docker-compose.yml with web, postgres, and redis ensuring idempotency.", "solution": "version: \"3.9\"\nservices:\n postgres: { image: postgres:15-alpine, environment: { POSTGRES_PASSWORD: \"secret\" }, volumes: [\"pgdata:/var/lib/postgresql/data\"] }\n redis: { image: redis:7-alpine }\n web: { build: ., ports: [\"8000:8000\"], depends_on: { postgres: {condition: service_healthy} } }\nvolumes: { pgdata: }", "imports": "", "domain": "docker", "id": "deploy-infra-0223"}
{"problem": "Create write a dockerfile for node.js production ensuring idempotency.", "solution": "# Variation 224\nFROM node:18-alpine AS builder\nWORKDIR /app\nCOPY package*.json .\nRUN npm ci --only=production\n\nFROM node:18-alpine\nENV NODE_ENV=production\nCOPY --from=builder /node_modules ./node_modules\nCOPY . .\nUSER nodejs\nCMD [\"node\", \"server.js\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0224"}
{"problem": "Build create a docker network for app isolation ensuring idempotency.", "solution": "docker network create --driver bridge --subnet 172.20.0.0/16 app-net\ndocker run -d --name db --network app-net postgres:15\ndocker run -d --name api --network app-net myapp:latest", "imports": "", "domain": "docker", "id": "deploy-infra-0225"}
{"problem": "Configure write an ssh config for two host groups ensuring idempotency.", "solution": "Host prod-*\n HostName %h.example.com\n User deploy\n IdentityFile ~/.ssh/id_rsa_prod\nHost dev-*\n HostName dev.example.com\n User dev\n IdentityFile ~/.ssh/id_rsa_dev", "imports": "", "domain": "ssh", "id": "deploy-infra-0226"}
{"problem": "Set up create bash function for ssh tunnel forwarding postgresql port ensuring idempotency.", "solution": "ssh_postgres_tunnel() { ssh -fN -L \"${3:-55432}:localhost:${2:-5432}\" \"${1:-prod-db.example.com}\" -o ExitOnForwardFailure=yes; }", "imports": "", "domain": "ssh", "id": "deploy-infra-0227"}
{"problem": "Write code to write a script that distributes ssh key to multiple servers with logging.", "solution": "for s in web01 web02 db01; do\n ssh-copy-id -i ~/.ssh/id_rsa.pub deploy@${s}.example.com 2>/dev/null && echo \"✓ $s\"\ndone", "imports": "", "domain": "ssh", "id": "deploy-infra-0228"}
{"problem": "Implement configure ssh to use a jump host for internal servers with logging.", "solution": "Host internal-*\n ProxyJump jump.example.com\n HostName %h.internal.local", "imports": "", "domain": "ssh", "id": "deploy-infra-0229"}
{"problem": "Create write a cloud-init config that provisions ubuntu 22.04 with deploy user, ssh key auth, and auto updates with logging.", "solution": "#cloud-config\nusers: [{name: deploy, groups: [sudo], shell: /bin/bash, ssh_authorized_keys: [ssh-rsa AAA...]}]\npackage_update: true\npackages: [ufw, fail2ban]", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0230"}
{"problem": "Build create a terraform config for a digitalocean droplet (2gb) with ssh key with logging.", "solution": "# Variation 231\nterraform { required_providers { digitalocean={source=\"digitalocean/digitalocean\",version=\"~>2.0\"} } }\nresource \"digitalocean_droplet\" \"web\" { name=\"web-01\"; region=\"nyc3\"; size=\"s-2vcpu-2gb\" }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0231"}
{"problem": "Configure write an ansible playbook to install packages and start nginx with logging.", "solution": "---\n- hosts: all\n become: true\n tasks:\n - apt: name=[ufw,nginx] state=present\n - systemd: name=nginx enabled=true state=started", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0232"}
{"problem": "Set up bash script: create deploy user, install docker, harden ssh with logging.", "solution": "#!/usr/bin/env bash\nset -euo pipefail\nid -u deploy &>/dev/null || useradd -m -s /bin/bash deploy\n[[ -x $(command -v docker) ]] || curl -fsSL https://get.docker.com | sh\nsed -i 's/^PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0233"}
{"problem": "Write code to write a systemd drop-in to override service restart settings for production.", "solution": "[Service]\nRestart=always\nRestartSec=5", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0234"}
{"problem": "Implement create a logrotate config for application logs for production.", "solution": "/var/log/app/*.log { daily; rotate 7; compress; missingok }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0235"}
{"problem": "Create write a shell function that waits for a tcp port to become available on a remote host for production.", "solution": "wait_for_port() { local h=\"$1\" p=\"$2\"; while ! nc -z \"$h\" \"$p\"; do sleep 1; done; }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0236"}
{"problem": "Build implement a script that sets up a python virtualenv for production.", "solution": "python3 -m venv /opt/app/venv\nsource /opt/app/venv/bin/activate\npip install -r requirements.txt", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0237"}
{"problem": "Configure write nginx server block that serves static site and redirects http to https for production.", "solution": "# Variation 238\nserver {\n listen 80; server_name example.com;\n return 301 https://$server_name$request_uri;\n}\nserver {\n listen 443 ssl http2; server_name example.com;\n ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;\n root /var/www/html;\n location / { try_files $uri $uri/ =404; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0238"}
{"problem": "Set up configure nginx as reverse proxy to backend on port 3000 for production.", "solution": "upstream app { server 127.0.0.1:3000; }\nserver {\n listen 80; server_name app.example.com;\n location / {\n proxy_pass http:app;\n proxy_http_version 1.1;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection \"upgrade\";\n }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0239"}
{"problem": "Write code to write nginx rate limiting configuration for /api/ endpoint with error handling.", "solution": "limit_req_zone $binary_remote_addr zone=api:10m rate=10r/s;\nserver {\n location /api/ { limit_req zone=api burst=20 nodelay; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0240"}
{"problem": "Implement create nginx config snippet that adds hsts and csp headers with error handling.", "solution": "add_header Strict-Transport-Security \"max-age=63072000\" always;\nadd_header Content-Security-Policy \"default-src 'self'\" always;", "imports": "", "domain": "nginx", "id": "deploy-infra-0241"}
{"problem": "Create write a systemd service unit for a python app as non-root, restart on failure with error handling.", "solution": "[Unit]\nDescription=My Python App\nAfter=network.target\n\n[Service]\nType=simple\nUser=deploy\nWorkingDirectory=/opt/app\nExecStart=/opt/app/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app\nRestart=on-failure\nRestartSec=10\n\n[Install]\nWantedBy=multi-user.target", "imports": "", "domain": "systemd", "id": "deploy-infra-0242"}
{"problem": "Build create a systemd timer that runs a backup script daily at 2:30 am with error handling.", "solution": "[Timer]\nOnCalendar=*-*-* 02:30:00\nPersistent=true\nUnit=backup.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/backup.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0243"}
{"problem": "Configure write a systemd path unit that triggers a service when a config file changes with error handling.", "solution": "[Path]\nPathModified=/etc/app/config.yaml\nUnit=config-reload.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/reload.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0244"}
{"problem": "Set up write a multi-stage dockerfile for python fastapi with error handling.", "solution": "# Variation 245\nFROM python:3.12-slim AS builder\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --user --no-cache-dir -r requirements.txt\n\nFROM python:3.12-slim\nWORKDIR /app\nCOPY --from=builder /root/.local /root/.local\nCOPY . .\nCMD [\"uvicorn\", \"main:app\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0245"}
{"problem": "Write code to create a docker-compose.yml with web, postgres, and redis using best practices.", "solution": "version: \"3.9\"\nservices:\n postgres: { image: postgres:15-alpine, environment: { POSTGRES_PASSWORD: \"secret\" }, volumes: [\"pgdata:/var/lib/postgresql/data\"] }\n redis: { image: redis:7-alpine }\n web: { build: ., ports: [\"8000:8000\"], depends_on: { postgres: {condition: service_healthy} } }\nvolumes: { pgdata: }", "imports": "", "domain": "docker", "id": "deploy-infra-0246"}
{"problem": "Implement write a dockerfile for node.js production using best practices.", "solution": "FROM node:18-alpine AS builder\nWORKDIR /app\nCOPY package*.json .\nRUN npm ci --only=production\n\nFROM node:18-alpine\nENV NODE_ENV=production\nCOPY --from=builder /node_modules ./node_modules\nCOPY . .\nUSER nodejs\nCMD [\"node\", \"server.js\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0247"}
{"problem": "Create create a docker network for app isolation using best practices.", "solution": "docker network create --driver bridge --subnet 172.20.0.0/16 app-net\ndocker run -d --name db --network app-net postgres:15\ndocker run -d --name api --network app-net myapp:latest", "imports": "", "domain": "docker", "id": "deploy-infra-0248"}
{"problem": "Build write an ssh config for two host groups using best practices.", "solution": "Host prod-*\n HostName %h.example.com\n User deploy\n IdentityFile ~/.ssh/id_rsa_prod\nHost dev-*\n HostName dev.example.com\n User dev\n IdentityFile ~/.ssh/id_rsa_dev", "imports": "", "domain": "ssh", "id": "deploy-infra-0249"}
{"problem": "Configure create bash function for ssh tunnel forwarding postgresql port using best practices.", "solution": "ssh_postgres_tunnel() { ssh -fN -L \"${3:-55432}:localhost:${2:-5432}\" \"${1:-prod-db.example.com}\" -o ExitOnForwardFailure=yes; }", "imports": "", "domain": "ssh", "id": "deploy-infra-0250"}
{"problem": "Set up write a script that distributes ssh key to multiple servers using best practices.", "solution": "for s in web01 web02 db01; do\n ssh-copy-id -i ~/.ssh/id_rsa.pub deploy@${s}.example.com 2>/dev/null && echo \"✓ $s\"\ndone", "imports": "", "domain": "ssh", "id": "deploy-infra-0251"}
{"problem": "Write code to configure ssh to use a jump host for internal servers ensuring idempotency.", "solution": "# Variation 252\nHost internal-*\n ProxyJump jump.example.com\n HostName %h.internal.local", "imports": "", "domain": "ssh", "id": "deploy-infra-0252"}
{"problem": "Implement write a cloud-init config that provisions ubuntu 22.04 with deploy user, ssh key auth, and auto updates ensuring idempotency.", "solution": "#cloud-config\nusers: [{name: deploy, groups: [sudo], shell: /bin/bash, ssh_authorized_keys: [ssh-rsa AAA...]}]\npackage_update: true\npackages: [ufw, fail2ban]", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0253"}
{"problem": "Create create a terraform config for a digitalocean droplet (2gb) with ssh key ensuring idempotency.", "solution": "terraform { required_providers { digitalocean={source=\"digitalocean/digitalocean\",version=\"~>2.0\"} } }\nresource \"digitalocean_droplet\" \"web\" { name=\"web-01\"; region=\"nyc3\"; size=\"s-2vcpu-2gb\" }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0254"}
{"problem": "Build write an ansible playbook to install packages and start nginx ensuring idempotency.", "solution": "---\n- hosts: all\n become: true\n tasks:\n - apt: name=[ufw,nginx] state=present\n - systemd: name=nginx enabled=true state=started", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0255"}
{"problem": "Configure bash script: create deploy user, install docker, harden ssh ensuring idempotency.", "solution": "#!/usr/bin/env bash\nset -euo pipefail\nid -u deploy &>/dev/null || useradd -m -s /bin/bash deploy\n[[ -x $(command -v docker) ]] || curl -fsSL https://get.docker.com | sh\nsed -i 's/^PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0256"}
{"problem": "Set up write a systemd drop-in to override service restart settings ensuring idempotency.", "solution": "[Service]\nRestart=always\nRestartSec=5", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0257"}
{"problem": "Write code to create a logrotate config for application logs with logging.", "solution": "/var/log_msg/app/*.log_msg { daily; rotate 7; compress; missingok }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0258"}
{"problem": "Implement write a shell function that waits for a tcp port to become available on a remote host with logging.", "solution": "# Variation 259\nwait_for_port() { local h=\"$1\" p=\"$2\"; while ! nc -z \"$h\" \"$p\"; do sleep 1; done; }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0259"}
{"problem": "Create implement a script that sets up a python virtualenv with logging.", "solution": "python3 -m venv /opt/app/venv\nsource /opt/app/venv/bin/activate\npip install -r requirements.txt", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0260"}
{"problem": "Build write nginx server block that serves static site and redirects http to https with logging.", "solution": "server {\n listen 80; server_name example.com;\n return 301 https://$server_name$request_uri;\n}\nserver {\n listen 443 ssl http2; server_name example.com;\n ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;\n root /var/www/html;\n location / { try_files $uri $uri/ =404; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0261"}
{"problem": "Configure configure nginx as reverse proxy to backend on port 3000 with logging.", "solution": "upstream app { server 127.0.0.1:3000; }\nserver {\n listen 80; server_name app.example.com;\n location / {\n proxy_pass http:app;\n proxy_http_version 1.1;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection \"upgrade\";\n }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0262"}
{"problem": "Set up write nginx rate limiting configuration for /api/ endpoint with logging.", "solution": "limit_req_zone $binary_remote_addr zone=api:10m rate=10r/s;\nserver {\n location /api/ { limit_req zone=api burst=20 nodelay; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0263"}
{"problem": "Write code to create nginx config snippet that adds hsts and csp headers for production.", "solution": "add_header Strict-Transport-Security \"max-age=63072000\" always;\nadd_header Content-Security-Policy \"default-src 'self'\" always;", "imports": "", "domain": "nginx", "id": "deploy-infra-0264"}
{"problem": "Implement write a systemd service unit for a python app as non-root, restart on failure for production.", "solution": "[Unit]\nDescription=My Python App\nAfter=network.target\n\n[Service]\nType=simple\nUser=deploy\nWorkingDirectory=/opt/app\nExecStart=/opt/app/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app\nRestart=on-failure\nRestartSec=10\n\n[Install]\nWantedBy=multi-user.target", "imports": "", "domain": "systemd", "id": "deploy-infra-0265"}
{"problem": "Create create a systemd timer that runs a backup script daily at 2:30 am for production.", "solution": "# Variation 266\n[Timer]\nOnCalendar=*-*-* 02:30:00\nPersistent=true\nUnit=backup.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/backup.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0266"}
{"problem": "Build write a systemd path unit that triggers a service when a config file changes for production.", "solution": "[Path]\nPathModified=/etc/app/config.yaml\nUnit=config-reload.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/reload.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0267"}
{"problem": "Configure write a multi-stage dockerfile for python fastapi for production.", "solution": "FROM python:3.12-slim AS builder\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --user --no-cache-dir -r requirements.txt\n\nFROM python:3.12-slim\nWORKDIR /app\nCOPY --from=builder /root/.local /root/.local\nCOPY . .\nCMD [\"uvicorn\", \"main:app\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0268"}
{"problem": "Set up create a docker-compose.yml with web, postgres, and redis for production.", "solution": "version: \"3.9\"\nservices:\n postgres: { image: postgres:15-alpine, environment: { POSTGRES_PASSWORD: \"secret\" }, volumes: [\"pgdata:/var/lib/postgresql/data\"] }\n redis: { image: redis:7-alpine }\n web: { build: ., ports: [\"8000:8000\"], depends_on: { postgres: {condition: service_healthy} } }\nvolumes: { pgdata: }", "imports": "", "domain": "docker", "id": "deploy-infra-0269"}
{"problem": "Write code to write a dockerfile for node.js production with error handling.", "solution": "FROM node:18-alpine AS builder\nWORKDIR /app\nCOPY package*.json .\nRUN npm ci --only=production\n\nFROM node:18-alpine\nENV NODE_ENV=production\nCOPY --from=builder /node_modules ./node_modules\nCOPY . .\nUSER nodejs\nCMD [\"node\", \"server.js\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0270"}
{"problem": "Implement create a docker network for app isolation with error handling.", "solution": "docker network create --driver bridge --subnet 172.20.0.0/16 app-net\ndocker run -d --name db --network app-net postgres:15\ndocker run -d --name api --network app-net myapp:latest", "imports": "", "domain": "docker", "id": "deploy-infra-0271"}
{"problem": "Create write an ssh config for two host groups with error handling.", "solution": "Host prod-*\n HostName %h.example.com\n User deploy\n IdentityFile ~/.ssh/id_rsa_prod\nHost dev-*\n HostName dev.example.com\n User dev\n IdentityFile ~/.ssh/id_rsa_dev", "imports": "", "domain": "ssh", "id": "deploy-infra-0272"}
{"problem": "Build create bash function for ssh tunnel forwarding postgresql port with error handling.", "solution": "# Variation 273\nssh_postgres_tunnel() { ssh -fN -L \"${3:-55432}:localhost:${2:-5432}\" \"${1:-prod-db.example.com}\" -o ExitOnForwardFailure=yes; }", "imports": "", "domain": "ssh", "id": "deploy-infra-0273"}
{"problem": "Configure write a script that distributes ssh key to multiple servers with error handling.", "solution": "for s in web01 web02 db01; do\n ssh-copy-id -i ~/.ssh/id_rsa.pub deploy@${s}.example.com 2>/dev/null && echo \"✓ $s\"\ndone", "imports": "", "domain": "ssh", "id": "deploy-infra-0274"}
{"problem": "Set up configure ssh to use a jump host for internal servers with error handling.", "solution": "Host internal-*\n ProxyJump jump.example.com\n HostName %h.internal.local", "imports": "", "domain": "ssh", "id": "deploy-infra-0275"}
{"problem": "Write code to write a cloud-init config that provisions ubuntu 22.04 with deploy user, ssh key auth, and auto updates using best practices.", "solution": "#cloud-config\nusers: [{name: deploy, groups: [sudo], shell: /bin/bash, ssh_authorized_keys: [ssh-rsa AAA...]}]\npackage_update: true\npackages: [ufw, fail2ban]", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0276"}
{"problem": "Implement create a terraform config for a digitalocean droplet (2gb) with ssh key using best practices.", "solution": "terraform { required_providers { digitalocean={source=\"digitalocean/digitalocean\",version=\"~>2.0\"} } }\nresource \"digitalocean_droplet\" \"web\" { name=\"web-01\"; region=\"nyc3\"; size=\"s-2vcpu-2gb\" }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0277"}
{"problem": "Create write an ansible playbook to install packages and start nginx using best practices.", "solution": "---\n- hosts: all\n become: true\n tasks:\n - apt: name=[ufw,nginx] state=present\n - systemd: name=nginx enabled=true state=started", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0278"}
{"problem": "Build bash script: create deploy user, install docker, harden ssh using best practices.", "solution": "#!/usr/bin/env bash\nset -euo pipefail\nid -u deploy &>/dev/null || useradd -m -s /bin/bash deploy\n[[ -x $(command -v docker) ]] || curl -fsSL https://get.docker.com | sh\nsed -i 's/^PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0279"}
{"problem": "Configure write a systemd drop-in to override service restart settings using best practices.", "solution": "# Variation 280\n[Service]\nRestart=always\nRestartSec=5", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0280"}
{"problem": "Set up create a logrotate config for application logs using best practices.", "solution": "/var/log/app/*.log { daily; rotate 7; compress; missingok }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0281"}
{"problem": "Write code to write a shell function that waits for a tcp port to become available on a remote host ensuring idempotency.", "solution": "wait_for_port() { local h=\"$1\" p=\"$2\"; while ! nc -z \"$h\" \"$p\"; do sleep 1; done; }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0282"}
{"problem": "Implement implement a script that sets up a python virtualenv ensuring idempotency.", "solution": "python3 -m venv /opt/app/venv\nsource /opt/app/venv/bin/activate\npip install -r requirements.txt", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0283"}
{"problem": "Create write nginx server block that serves static site and redirects http to https ensuring idempotency.", "solution": "server {\n listen 80; server_name example.com;\n return 301 https://$server_name$request_uri;\n}\nserver {\n listen 443 ssl http2; server_name example.com;\n ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;\n root /var/www/html;\n location / { try_files $uri $uri/ =404; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0284"}
{"problem": "Build configure nginx as reverse proxy to backend on port 3000 ensuring idempotency.", "solution": "upstream app { server 127.0.0.1:3000; }\nserver {\n listen 80; server_name app.example.com;\n location / {\n proxy_pass http:app;\n proxy_http_version 1.1;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection \"upgrade\";\n }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0285"}
{"problem": "Configure write nginx rate limiting configuration for /api/ endpoint ensuring idempotency.", "solution": "limit_req_zone $binary_remote_addr zone=api:10m rate=10r/s;\nserver {\n location /api/ { limit_req zone=api burst=20 nodelay; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0286"}
{"problem": "Set up create nginx config snippet that adds hsts and csp headers ensuring idempotency.", "solution": "# Variation 287\nadd_header Strict-Transport-Security \"max-age=63072000\" always;\nadd_header Content-Security-Policy \"default-src 'self'\" always;", "imports": "", "domain": "nginx", "id": "deploy-infra-0287"}
{"problem": "Write code to write a systemd service unit for a python app as non-root, restart on failure with logging.", "solution": "[Unit]\nDescription=My Python App\nAfter=network.target\n\n[Service]\nType=simple\nUser=deploy\nWorkingDirectory=/opt/app\nExecStart=/opt/app/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app\nRestart=on-failure\nRestartSec=10\n\n[Install]\nWantedBy=multi-user.target", "imports": "", "domain": "systemd", "id": "deploy-infra-0288"}
{"problem": "Implement create a systemd timer that runs a backup script daily at 2:30 am with logging.", "solution": "[Timer]\nOnCalendar=*-*-* 02:30:00\nPersistent=true\nUnit=backup.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/backup.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0289"}
{"problem": "Create write a systemd path unit that triggers a service when a config file changes with logging.", "solution": "[Path]\nPathModified=/etc/app/config.yaml\nUnit=config-reload.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/reload.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0290"}
{"problem": "Build write a multi-stage dockerfile for python fastapi with logging.", "solution": "FROM python:3.12-slim AS builder\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --user --no-cache-dir -r requirements.txt\n\nFROM python:3.12-slim\nWORKDIR /app\nCOPY --from=builder /root/.local /root/.local\nCOPY . .\nCMD [\"uvicorn\", \"main:app\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0291"}
{"problem": "Configure create a docker-compose.yml with web, postgres, and redis with logging.", "solution": "version: \"3.9\"\nservices:\n postgres: { image: postgres:15-alpine, environment: { POSTGRES_PASSWORD: \"secret\" }, volumes: [\"pgdata:/var/lib/postgresql/data\"] }\n redis: { image: redis:7-alpine }\n web: { build: ., ports: [\"8000:8000\"], depends_on: { postgres: {condition: service_healthy} } }\nvolumes: { pgdata: }", "imports": "", "domain": "docker", "id": "deploy-infra-0292"}
{"problem": "Set up write a dockerfile for node.js production with logging.", "solution": "FROM node:18-alpine AS builder\nWORKDIR /app\nCOPY package*.json .\nRUN npm ci --only=production\n\nFROM node:18-alpine\nENV NODE_ENV=production\nCOPY --from=builder /node_modules ./node_modules\nCOPY . .\nUSER nodejs\nCMD [\"node\", \"server.js\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0293"}
{"problem": "Write code to create a docker network for app isolation for production.", "solution": "# Variation 294\ndocker network create --driver bridge --subnet 172.20.0.0/16 app-net\ndocker run -d --name db --network app-net postgres:15\ndocker run -d --name api --network app-net myapp:latest", "imports": "", "domain": "docker", "id": "deploy-infra-0294"}
{"problem": "Implement write an ssh config for two host groups for production.", "solution": "Host prod-*\n HostName %h.example.com\n User deploy\n IdentityFile ~/.ssh/id_rsa_prod\nHost dev-*\n HostName dev.example.com\n User dev\n IdentityFile ~/.ssh/id_rsa_dev", "imports": "", "domain": "ssh", "id": "deploy-infra-0295"}
{"problem": "Create create bash function for ssh tunnel forwarding postgresql port for production.", "solution": "ssh_postgres_tunnel() { ssh -fN -L \"${3:-55432}:localhost:${2:-5432}\" \"${1:-prod-db.example.com}\" -o ExitOnForwardFailure=yes; }", "imports": "", "domain": "ssh", "id": "deploy-infra-0296"}
{"problem": "Build write a script that distributes ssh key to multiple servers for production.", "solution": "for s in web01 web02 db01; do\n ssh-copy-id -i ~/.ssh/id_rsa.pub deploy@${s}.example.com 2>/dev/null && echo \"✓ $s\"\ndone", "imports": "", "domain": "ssh", "id": "deploy-infra-0297"}
{"problem": "Configure configure ssh to use a jump host for internal servers for production.", "solution": "Host internal-*\n ProxyJump jump.example.com\n HostName %h.internal.local", "imports": "", "domain": "ssh", "id": "deploy-infra-0298"}
{"problem": "Set up write a cloud-init config that provisions ubuntu 22.04 with deploy user, ssh key auth, and auto updates for production.", "solution": "#cloud-config\nusers: [{name: deploy, groups: [sudo], shell: /bin/bash, ssh_authorized_keys: [ssh-rsa AAA...]}]\npackage_update: true\npackages: [ufw, fail2ban]", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0299"}
{"problem": "Write code to create a terraform config for a digitalocean droplet (2gb) with ssh key with error handling.", "solution": "terraform { required_providers { digitalocean={source=\"digitalocean/digitalocean\",version=\"~>2.0\"} } }\nresource \"digitalocean_droplet\" \"web\" { name=\"web-01\"; region=\"nyc3\"; size=\"s-2vcpu-2gb\" }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0300"}
{"problem": "Implement write an ansible playbook to install packages and start nginx with error handling.", "solution": "# Variation 301\n---\n- hosts: all\n become: true\n tasks:\n - apt: name=[ufw,nginx] state=present\n - systemd: name=nginx enabled=true state=started", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0301"}
{"problem": "Create bash script: create deploy user, install docker, harden ssh with error handling.", "solution": "#!/usr/bin/env bash\nset -euo pipefail\nid -u deploy &>/dev/null || useradd -m -s /bin/bash deploy\n[[ -x $(command -v docker) ]] || curl -fsSL https://get.docker.com | sh\nsed -i 's/^PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0302"}
{"problem": "Build write a systemd drop-in to override service restart settings with error handling.", "solution": "[Service]\nRestart=always\nRestartSec=5", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0303"}
{"problem": "Configure create a logrotate config for application logs with error handling.", "solution": "/var/log/app/*.log { daily; rotate 7; compress; missingok }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0304"}
{"problem": "Set up write a shell function that waits for a tcp port to become available on a remote host with error handling.", "solution": "wait_for_port() { local h=\"$1\" p=\"$2\"; while ! nc -z \"$h\" \"$p\"; do sleep 1; done; }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0305"}
{"problem": "Write code to implement a script that sets up a python virtualenv using best practices.", "solution": "python3 -m venv /opt/app/venv\nsource /opt/app/venv/bin/activate\npip install -r requirements.txt", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0306"}
{"problem": "Implement write nginx server block that serves static site and redirects http to https using best practices.", "solution": "server {\n listen 80; server_name example.com;\n return 301 https://$server_name$request_uri;\n}\nserver {\n listen 443 ssl http2; server_name example.com;\n ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;\n root /var/www/html;\n location / { try_files $uri $uri/ =404; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0307"}
{"problem": "Create configure nginx as reverse proxy to backend on port 3000 using best practices.", "solution": "# Variation 308\nupstream app { server 127.0.0.1:3000; }\nserver {\n listen 80; server_name app.example.com;\n location / {\n proxy_pass http:app;\n proxy_http_version 1.1;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection \"upgrade\";\n }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0308"}
{"problem": "Build write nginx rate limiting configuration for /api/ endpoint using best practices.", "solution": "limit_req_zone $binary_remote_addr zone=api:10m rate=10r/s;\nserver {\n location /api/ { limit_req zone=api burst=20 nodelay; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0309"}
{"problem": "Configure create nginx config snippet that adds hsts and csp headers using best practices.", "solution": "add_header Strict-Transport-Security \"max-age=63072000\" always;\nadd_header Content-Security-Policy \"default-src 'self'\" always;", "imports": "", "domain": "nginx", "id": "deploy-infra-0310"}
{"problem": "Set up write a systemd service unit for a python app as non-root, restart on failure using best practices.", "solution": "[Unit]\nDescription=My Python App\nAfter=network.target\n\n[Service]\nType=simple\nUser=deploy\nWorkingDirectory=/opt/app\nExecStart=/opt/app/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app\nRestart=on-failure\nRestartSec=10\n\n[Install]\nWantedBy=multi-user.target", "imports": "", "domain": "systemd", "id": "deploy-infra-0311"}
{"problem": "Write code to create a systemd timer that runs a backup script daily at 2:30 am ensuring idempotency.", "solution": "[Timer]\nOnCalendar=*-*-* 02:30:00\nPersistent=true\nUnit=backup.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/backup.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0312"}
{"problem": "Implement write a systemd path unit that triggers a service when a config file changes ensuring idempotency.", "solution": "[Path]\nPathModified=/etc/app/config.yaml\nUnit=config-reload.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/reload.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0313"}
{"problem": "Create write a multi-stage dockerfile for python fastapi ensuring idempotency.", "solution": "FROM python:3.12-slim AS builder\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --user --no-cache-dir -r requirements.txt\n\nFROM python:3.12-slim\nWORKDIR /app\nCOPY --from=builder /root/.local /root/.local\nCOPY . .\nCMD [\"uvicorn\", \"main:app\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0314"}
{"problem": "Build create a docker-compose.yml with web, postgres, and redis ensuring idempotency.", "solution": "# Variation 315\nversion: \"3.9\"\nservices:\n postgres: { image: postgres:15-alpine, environment: { POSTGRES_PASSWORD: \"secret\" }, volumes: [\"pgdata:/var/lib/postgresql/data\"] }\n redis: { image: redis:7-alpine }\n web: { build: ., ports: [\"8000:8000\"], depends_on: { postgres: {condition: service_healthy} } }\nvolumes: { pgdata: }", "imports": "", "domain": "docker", "id": "deploy-infra-0315"}
{"problem": "Configure write a dockerfile for node.js production ensuring idempotency.", "solution": "FROM node:18-alpine AS builder\nWORKDIR /app\nCOPY package*.json .\nRUN npm ci --only=production\n\nFROM node:18-alpine\nENV NODE_ENV=production\nCOPY --from=builder /node_modules ./node_modules\nCOPY . .\nUSER nodejs\nCMD [\"node\", \"server.js\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0316"}
{"problem": "Set up create a docker network for app isolation ensuring idempotency.", "solution": "docker network create --driver bridge --subnet 172.20.0.0/16 app-net\ndocker run -d --name db --network app-net postgres:15\ndocker run -d --name api --network app-net myapp:latest", "imports": "", "domain": "docker", "id": "deploy-infra-0317"}
{"problem": "Write code to write an ssh config for two host groups with logging.", "solution": "Host prod-*\n HostName %h.example.com\n User deploy\n IdentityFile ~/.ssh/id_rsa_prod\nHost dev-*\n HostName dev.example.com\n User dev\n IdentityFile ~/.ssh/id_rsa_dev", "imports": "", "domain": "ssh", "id": "deploy-infra-0318"}
{"problem": "Implement create bash function for ssh tunnel forwarding postgresql port with logging.", "solution": "ssh_postgres_tunnel() { ssh -fN -L \"${3:-55432}:localhost:${2:-5432}\" \"${1:-prod-db.example.com}\" -o ExitOnForwardFailure=yes; }", "imports": "", "domain": "ssh", "id": "deploy-infra-0319"}
{"problem": "Create write a script that distributes ssh key to multiple servers with logging.", "solution": "for s in web01 web02 db01; do\n ssh-copy-id -i ~/.ssh/id_rsa.pub deploy@${s}.example.com 2>/dev/null && echo \"✓ $s\"\ndone", "imports": "", "domain": "ssh", "id": "deploy-infra-0320"}
{"problem": "Build configure ssh to use a jump host for internal servers with logging.", "solution": "Host internal-*\n ProxyJump jump.example.com\n HostName %h.internal.local", "imports": "", "domain": "ssh", "id": "deploy-infra-0321"}
{"problem": "Configure write a cloud-init config that provisions ubuntu 22.04 with deploy user, ssh key auth, and auto updates with logging.", "solution": "# Variation 322\n#cloud-config\nusers: [{name: deploy, groups: [sudo], shell: /bin/bash, ssh_authorized_keys: [ssh-rsa AAA...]}]\npackage_update: true\npackages: [ufw, fail2ban]", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0322"}
{"problem": "Set up create a terraform config for a digitalocean droplet (2gb) with ssh key with logging.", "solution": "terraform { required_providers { digitalocean={source=\"digitalocean/digitalocean\",version=\"~>2.0\"} } }\nresource \"digitalocean_droplet\" \"web\" { name=\"web-01\"; region=\"nyc3\"; size=\"s-2vcpu-2gb\" }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0323"}
{"problem": "Write code to write an ansible playbook to install packages and start nginx for production.", "solution": "---\n- hosts: all\n become: true\n tasks:\n - apt: name=[ufw,nginx] state=present\n - systemd: name=nginx enabled=true state=started", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0324"}
{"problem": "Implement bash script: create deploy user, install docker, harden ssh for production.", "solution": "#!/usr/bin/env bash\nset -euo pipefail\nid -u deploy &>/dev/null || useradd -m -s /bin/bash deploy\n[[ -x $(command -v docker) ]] || curl -fsSL https://get.docker.com | sh\nsed -i 's/^PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0325"}
{"problem": "Create write a systemd drop-in to override service restart settings for production.", "solution": "[Service]\nRestart=always\nRestartSec=5", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0326"}
{"problem": "Build create a logrotate config for application logs for production.", "solution": "/var/log_msg/app/*.log_msg { daily; rotate 7; compress; missingok }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0327"}
{"problem": "Configure write a shell function that waits for a tcp port to become available on a remote host for production.", "solution": "wait_for_port() { local h=\"$1\" p=\"$2\"; while ! nc -z \"$h\" \"$p\"; do sleep 1; done; }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0328"}
{"problem": "Set up implement a script that sets up a python virtualenv for production.", "solution": "# Variation 329\npython3 -m venv /opt/app/venv\nsource /opt/app/venv/bin/activate\npip install -r requirements.txt", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0329"}
{"problem": "Write code to write nginx server block that serves static site and redirects http to https with error handling.", "solution": "server {\n listen 80; server_name example.com;\n return 301 https://$server_name$request_uri;\n}\nserver {\n listen 443 ssl http2; server_name example.com;\n ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;\n root /var/www/html;\n location / { try_files $uri $uri/ =404; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0330"}
{"problem": "Implement configure nginx as reverse proxy to backend on port 3000 with error handling.", "solution": "upstream app { server 127.0.0.1:3000; }\nserver {\n listen 80; server_name app.example.com;\n location / {\n proxy_pass http:app;\n proxy_http_version 1.1;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection \"upgrade\";\n }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0331"}
{"problem": "Create write nginx rate limiting configuration for /api/ endpoint with error handling.", "solution": "limit_req_zone $binary_remote_addr zone=api:10m rate=10r/s;\nserver {\n location /api/ { limit_req zone=api burst=20 nodelay; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0332"}
{"problem": "Build create nginx config snippet that adds hsts and csp headers with error handling.", "solution": "add_header Strict-Transport-Security \"max-age=63072000\" always;\nadd_header Content-Security-Policy \"default-src 'self'\" always;", "imports": "", "domain": "nginx", "id": "deploy-infra-0333"}
{"problem": "Configure write a systemd service unit for a python app as non-root, restart on failure with error handling.", "solution": "[Unit]\nDescription=My Python App\nAfter=network.target\n\n[Service]\nType=simple\nUser=deploy\nWorkingDirectory=/opt/app\nExecStart=/opt/app/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app\nRestart=on-failure\nRestartSec=10\n\n[Install]\nWantedBy=multi-user.target", "imports": "", "domain": "systemd", "id": "deploy-infra-0334"}
{"problem": "Set up create a systemd timer that runs a backup script daily at 2:30 am with error handling.", "solution": "[Timer]\nOnCalendar=*-*-* 02:30:00\nPersistent=true\nUnit=backup.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/backup.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0335"}
{"problem": "Write code to write a systemd path unit that triggers a service when a config file changes using best practices.", "solution": "# Variation 336\n[Path]\nPathModified=/etc/app/config.yaml\nUnit=config-reload.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/reload.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0336"}
{"problem": "Implement write a multi-stage dockerfile for python fastapi using best practices.", "solution": "FROM python:3.12-slim AS builder\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --user --no-cache-dir -r requirements.txt\n\nFROM python:3.12-slim\nWORKDIR /app\nCOPY --from=builder /root/.local /root/.local\nCOPY . .\nCMD [\"uvicorn\", \"main:app\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0337"}
{"problem": "Create create a docker-compose.yml with web, postgres, and redis using best practices.", "solution": "version: \"3.9\"\nservices:\n postgres: { image: postgres:15-alpine, environment: { POSTGRES_PASSWORD: \"secret\" }, volumes: [\"pgdata:/var/lib/postgresql/data\"] }\n redis: { image: redis:7-alpine }\n web: { build: ., ports: [\"8000:8000\"], depends_on: { postgres: {condition: service_healthy} } }\nvolumes: { pgdata: }", "imports": "", "domain": "docker", "id": "deploy-infra-0338"}
{"problem": "Build write a dockerfile for node.js production using best practices.", "solution": "FROM node:18-alpine AS builder\nWORKDIR /app\nCOPY package*.json .\nRUN npm ci --only=production\n\nFROM node:18-alpine\nENV NODE_ENV=production\nCOPY --from=builder /node_modules ./node_modules\nCOPY . .\nUSER nodejs\nCMD [\"node\", \"server.js\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0339"}
{"problem": "Configure create a docker network for app isolation using best practices.", "solution": "docker network create --driver bridge --subnet 172.20.0.0/16 app-net\ndocker run -d --name db --network app-net postgres:15\ndocker run -d --name api --network app-net myapp:latest", "imports": "", "domain": "docker", "id": "deploy-infra-0340"}
{"problem": "Set up write an ssh config for two host groups using best practices.", "solution": "Host prod-*\n HostName %h.example.com\n User deploy\n IdentityFile ~/.ssh/id_rsa_prod\nHost dev-*\n HostName dev.example.com\n User dev\n IdentityFile ~/.ssh/id_rsa_dev", "imports": "", "domain": "ssh", "id": "deploy-infra-0341"}
{"problem": "Write code to create bash function for ssh tunnel forwarding postgresql port ensuring idempotency.", "solution": "ssh_postgres_tunnel() { ssh -fN -L \"${3:-55432}:localhost:${2:-5432}\" \"${1:-prod-db.example.com}\" -o ExitOnForwardFailure=yes; }", "imports": "", "domain": "ssh", "id": "deploy-infra-0342"}
{"problem": "Implement write a script that distributes ssh key to multiple servers ensuring idempotency.", "solution": "# Variation 343\nfor s in web01 web02 db01; do\n ssh-copy-id -i ~/.ssh/id_rsa.pub deploy@${s}.example.com 2>/dev/null && echo \"✓ $s\"\ndone", "imports": "", "domain": "ssh", "id": "deploy-infra-0343"}
{"problem": "Create configure ssh to use a jump host for internal servers ensuring idempotency.", "solution": "Host internal-*\n ProxyJump jump.example.com\n HostName %h.internal.local", "imports": "", "domain": "ssh", "id": "deploy-infra-0344"}
{"problem": "Build write a cloud-init config that provisions ubuntu 22.04 with deploy user, ssh key auth, and auto updates ensuring idempotency.", "solution": "#cloud-config\nusers: [{name: deploy, groups: [sudo], shell: /bin/bash, ssh_authorized_keys: [ssh-rsa AAA...]}]\npackage_update: true\npackages: [ufw, fail2ban]", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0345"}
{"problem": "Configure create a terraform config for a digitalocean droplet (2gb) with ssh key ensuring idempotency.", "solution": "terraform { required_providers { digitalocean={source=\"digitalocean/digitalocean\",version=\"~>2.0\"} } }\nresource \"digitalocean_droplet\" \"web\" { name=\"web-01\"; region=\"nyc3\"; size=\"s-2vcpu-2gb\" }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0346"}
{"problem": "Set up write an ansible playbook to install packages and start nginx ensuring idempotency.", "solution": "---\n- hosts: all\n become: true\n tasks:\n - apt: name=[ufw,nginx] state=present\n - systemd: name=nginx enabled=true state=started", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0347"}
{"problem": "Write code to bash script: create deploy user, install docker, harden ssh with logging.", "solution": "#!/usr/bin/env bash\nset -euo pipefail\nid -u deploy &>/dev/null || useradd -m -s /bin/bash deploy\n[[ -x $(command -v docker) ]] || curl -fsSL https://get.docker.com | sh\nsed -i 's/^PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0348"}
{"problem": "Implement write a systemd drop-in to override service restart settings with logging.", "solution": "[Service]\nRestart=always\nRestartSec=5", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0349"}
{"problem": "Create create a logrotate config for application logs with logging.", "solution": "# Variation 350\n/var/log/app/*.log { daily; rotate 7; compress; missingok }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0350"}
{"problem": "Build write a shell function that waits for a tcp port to become available on a remote host with logging.", "solution": "wait_for_port() { local h=\"$1\" p=\"$2\"; while ! nc -z \"$h\" \"$p\"; do sleep 1; done; }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0351"}
{"problem": "Configure implement a script that sets up a python virtualenv with logging.", "solution": "python3 -m venv /opt/app/venv\nsource /opt/app/venv/bin/activate\npip install -r requirements.txt", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0352"}
{"problem": "Set up write nginx server block that serves static site and redirects http to https with logging.", "solution": "server {\n listen 80; server_name example.com;\n return 301 https://$server_name$request_uri;\n}\nserver {\n listen 443 ssl http2; server_name example.com;\n ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;\n root /var/www/html;\n location / { try_files $uri $uri/ =404; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0353"}
{"problem": "Write code to configure nginx as reverse proxy to backend on port 3000 for production.", "solution": "upstream app { server 127.0.0.1:3000; }\nserver {\n listen 80; server_name app.example.com;\n location / {\n proxy_pass http:app;\n proxy_http_version 1.1;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection \"upgrade\";\n }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0354"}
{"problem": "Implement write nginx rate limiting configuration for /api/ endpoint for production.", "solution": "limit_req_zone $binary_remote_addr zone=api:10m rate=10r/s;\nserver {\n location /api/ { limit_req zone=api burst=20 nodelay; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0355"}
{"problem": "Create create nginx config snippet that adds hsts and csp headers for production.", "solution": "add_header Strict-Transport-Security \"max-age=63072000\" always;\nadd_header Content-Security-Policy \"default-src 'self'\" always;", "imports": "", "domain": "nginx", "id": "deploy-infra-0356"}
{"problem": "Build write a systemd service unit for a python app as non-root, restart on failure for production.", "solution": "# Variation 357\n[Unit]\nDescription=My Python App\nAfter=network.target\n\n[Service]\nType=simple\nUser=deploy\nWorkingDirectory=/opt/app\nExecStart=/opt/app/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app\nRestart=on-failure\nRestartSec=10\n\n[Install]\nWantedBy=multi-user.target", "imports": "", "domain": "systemd", "id": "deploy-infra-0357"}
{"problem": "Configure create a systemd timer that runs a backup script daily at 2:30 am for production.", "solution": "[Timer]\nOnCalendar=*-*-* 02:30:00\nPersistent=true\nUnit=backup.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/backup.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0358"}
{"problem": "Set up write a systemd path unit that triggers a service when a config file changes for production.", "solution": "[Path]\nPathModified=/etc/app/config.yaml\nUnit=config-reload.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/reload.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0359"}
{"problem": "Write code to write a multi-stage dockerfile for python fastapi with error handling.", "solution": "FROM python:3.12-slim AS builder\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --user --no-cache-dir -r requirements.txt\n\nFROM python:3.12-slim\nWORKDIR /app\nCOPY --from=builder /root/.local /root/.local\nCOPY . .\nCMD [\"uvicorn\", \"main:app\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0360"}
{"problem": "Implement create a docker-compose.yml with web, postgres, and redis with error handling.", "solution": "version: \"3.9\"\nservices:\n postgres: { image: postgres:15-alpine, environment: { POSTGRES_PASSWORD: \"secret\" }, volumes: [\"pgdata:/var/lib/postgresql/data\"] }\n redis: { image: redis:7-alpine }\n web: { build: ., ports: [\"8000:8000\"], depends_on: { postgres: {condition: service_healthy} } }\nvolumes: { pgdata: }", "imports": "", "domain": "docker", "id": "deploy-infra-0361"}
{"problem": "Create write a dockerfile for node.js production with error handling.", "solution": "FROM node:18-alpine AS builder\nWORKDIR /app\nCOPY package*.json .\nRUN npm ci --only=production\n\nFROM node:18-alpine\nENV NODE_ENV=production\nCOPY --from=builder /node_modules ./node_modules\nCOPY . .\nUSER nodejs\nCMD [\"node\", \"server.js\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0362"}
{"problem": "Build create a docker network for app isolation with error handling.", "solution": "docker network create --driver bridge --subnet 172.20.0.0/16 app-net\ndocker run -d --name db --network app-net postgres:15\ndocker run -d --name api --network app-net myapp:latest", "imports": "", "domain": "docker", "id": "deploy-infra-0363"}
{"problem": "Configure write an ssh config for two host groups with error handling.", "solution": "# Variation 364\nHost prod-*\n HostName %h.example.com\n User deploy\n IdentityFile ~/.ssh/id_rsa_prod\nHost dev-*\n HostName dev.example.com\n User dev\n IdentityFile ~/.ssh/id_rsa_dev", "imports": "", "domain": "ssh", "id": "deploy-infra-0364"}
{"problem": "Set up create bash function for ssh tunnel forwarding postgresql port with error handling.", "solution": "ssh_postgres_tunnel() { ssh -fN -L \"${3:-55432}:localhost:${2:-5432}\" \"${1:-prod-db.example.com}\" -o ExitOnForwardFailure=yes; }", "imports": "", "domain": "ssh", "id": "deploy-infra-0365"}
{"problem": "Write code to write a script that distributes ssh key to multiple servers using best practices.", "solution": "for s in web01 web02 db01; do\n ssh-copy-id -i ~/.ssh/id_rsa.pub deploy@${s}.example.com 2>/dev/null && echo \"✓ $s\"\ndone", "imports": "", "domain": "ssh", "id": "deploy-infra-0366"}
{"problem": "Implement configure ssh to use a jump host for internal servers using best practices.", "solution": "Host internal-*\n ProxyJump jump.example.com\n HostName %h.internal.local", "imports": "", "domain": "ssh", "id": "deploy-infra-0367"}
{"problem": "Create write a cloud-init config that provisions ubuntu 22.04 with deploy user, ssh key auth, and auto updates using best practices.", "solution": "#cloud-config\nusers: [{name: deploy, groups: [sudo], shell: /bin/bash, ssh_authorized_keys: [ssh-rsa AAA...]}]\npackage_update: true\npackages: [ufw, fail2ban]", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0368"}
{"problem": "Build create a terraform config for a digitalocean droplet (2gb) with ssh key using best practices.", "solution": "terraform { required_providers { digitalocean={source=\"digitalocean/digitalocean\",version=\"~>2.0\"} } }\nresource \"digitalocean_droplet\" \"web\" { name=\"web-01\"; region=\"nyc3\"; size=\"s-2vcpu-2gb\" }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0369"}
{"problem": "Configure write an ansible playbook to install packages and start nginx using best practices.", "solution": "---\n- hosts: all\n become: true\n tasks:\n - apt: name=[ufw,nginx] state=present\n - systemd: name=nginx enabled=true state=started", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0370"}
{"problem": "Set up bash script: create deploy user, install docker, harden ssh using best practices.", "solution": "# Variation 371\n#!/usr/bin/env bash\nset -euo pipefail\nid -u deploy &>/dev/null || useradd -m -s /bin/bash deploy\n[[ -x $(command -v docker) ]] || curl -fsSL https://get.docker.com | sh\nsed -i 's/^PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0371"}
{"problem": "Write code to write a systemd drop-in to override service restart settings ensuring idempotency.", "solution": "[Service]\nRestart=always\nRestartSec=5", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0372"}
{"problem": "Implement create a logrotate config for application logs ensuring idempotency.", "solution": "/var/log/app/*.log { daily; rotate 7; compress; missingok }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0373"}
{"problem": "Create write a shell function that waits for a tcp port to become available on a remote host ensuring idempotency.", "solution": "wait_for_port() { local h=\"$1\" p=\"$2\"; while ! nc -z \"$h\" \"$p\"; do sleep 1; done; }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0374"}
{"problem": "Build implement a script that sets up a python virtualenv ensuring idempotency.", "solution": "python3 -m venv /opt/app/venv\nsource /opt/app/venv/bin/activate\npip install -r requirements.txt", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0375"}
{"problem": "Configure write nginx server block that serves static site and redirects http to https ensuring idempotency.", "solution": "server {\n listen 80; server_name example.com;\n return 301 https://$server_name$request_uri;\n}\nserver {\n listen 443 ssl http2; server_name example.com;\n ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;\n root /var/www/html;\n location / { try_files $uri $uri/ =404; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0376"}
{"problem": "Set up configure nginx as reverse proxy to backend on port 3000 ensuring idempotency.", "solution": "upstream app { server 127.0.0.1:3000; }\nserver {\n listen 80; server_name app.example.com;\n location / {\n proxy_pass http:app;\n proxy_http_version 1.1;\n proxy_set_header Upgrade $http_upgrade;\n proxy_set_header Connection \"upgrade\";\n }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0377"}
{"problem": "Write code to write nginx rate limiting configuration for /api/ endpoint with logging.", "solution": "# Variation 378\nlimit_req_zone $binary_remote_addr zone=api:10m rate=10r/s;\nserver {\n location /api/ { limit_req zone=api burst=20 nodelay; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0378"}
{"problem": "Implement create nginx config snippet that adds hsts and csp headers with logging.", "solution": "add_header Strict-Transport-Security \"max-age=63072000\" always;\nadd_header Content-Security-Policy \"default-src 'self'\" always;", "imports": "", "domain": "nginx", "id": "deploy-infra-0379"}
{"problem": "Create write a systemd service unit for a python app as non-root, restart on failure with logging.", "solution": "[Unit]\nDescription=My Python App\nAfter=network.target\n\n[Service]\nType=simple\nUser=deploy\nWorkingDirectory=/opt/app\nExecStart=/opt/app/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app\nRestart=on-failure\nRestartSec=10\n\n[Install]\nWantedBy=multi-user.target", "imports": "", "domain": "systemd", "id": "deploy-infra-0380"}
{"problem": "Build create a systemd timer that runs a backup script daily at 2:30 am with logging.", "solution": "[Timer]\nOnCalendar=*-*-* 02:30:00\nPersistent=true\nUnit=backup.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/backup.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0381"}
{"problem": "Configure write a systemd path unit that triggers a service when a config file changes with logging.", "solution": "[Path]\nPathModified=/etc/app/config.yaml\nUnit=config-reload.service\n\n[Service]\nType=oneshot\nExecStart=/usr/local/bin/reload.sh", "imports": "", "domain": "systemd", "id": "deploy-infra-0382"}
{"problem": "Set up write a multi-stage dockerfile for python fastapi with logging.", "solution": "FROM python:3.12-slim AS builder\nWORKDIR /app\nCOPY requirements.txt .\nRUN pip install --user --no-cache-dir -r requirements.txt\n\nFROM python:3.12-slim\nWORKDIR /app\nCOPY --from=builder /root/.local /root/.local\nCOPY . .\nCMD [\"uvicorn\", \"main:app\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0383"}
{"problem": "Write code to create a docker-compose.yml with web, postgres, and redis for production.", "solution": "version: \"3.9\"\nservices:\n postgres: { image: postgres:15-alpine, environment: { POSTGRES_PASSWORD: \"secret\" }, volumes: [\"pgdata:/var/lib/postgresql/data\"] }\n redis: { image: redis:7-alpine }\n web: { build: ., ports: [\"8000:8000\"], depends_on: { postgres: {condition: service_healthy} } }\nvolumes: { pgdata: }", "imports": "", "domain": "docker", "id": "deploy-infra-0384"}
{"problem": "Implement write a dockerfile for node.js production for production.", "solution": "# Variation 385\nFROM node:18-alpine AS builder\nWORKDIR /app\nCOPY package*.json .\nRUN npm ci --only=production\n\nFROM node:18-alpine\nENV NODE_ENV=production\nCOPY --from=builder /node_modules ./node_modules\nCOPY . .\nUSER nodejs\nCMD [\"node\", \"server.js\"]", "imports": "", "domain": "docker", "id": "deploy-infra-0385"}
{"problem": "Create create a docker network for app isolation for production.", "solution": "docker network create --driver bridge --subnet 172.20.0.0/16 app-net\ndocker run -d --name db --network app-net postgres:15\ndocker run -d --name api --network app-net myapp:latest", "imports": "", "domain": "docker", "id": "deploy-infra-0386"}
{"problem": "Build write an ssh config for two host groups for production.", "solution": "Host prod-*\n HostName %h.example.com\n User deploy\n IdentityFile ~/.ssh/id_rsa_prod\nHost dev-*\n HostName dev.example.com\n User dev\n IdentityFile ~/.ssh/id_rsa_dev", "imports": "", "domain": "ssh", "id": "deploy-infra-0387"}
{"problem": "Configure create bash function for ssh tunnel forwarding postgresql port for production.", "solution": "ssh_postgres_tunnel() { ssh -fN -L \"${3:-55432}:localhost:${2:-5432}\" \"${1:-prod-db.example.com}\" -o ExitOnForwardFailure=yes; }", "imports": "", "domain": "ssh", "id": "deploy-infra-0388"}
{"problem": "Set up write a script that distributes ssh key to multiple servers for production.", "solution": "for s in web01 web02 db01; do\n ssh-copy-id -i ~/.ssh/id_rsa.pub deploy@${s}.example.com 2>/dev/null && echo \"✓ $s\"\ndone", "imports": "", "domain": "ssh", "id": "deploy-infra-0389"}
{"problem": "Write code to configure ssh to use a jump host for internal servers with error handling.", "solution": "Host internal-*\n ProxyJump jump.example.com\n HostName %h.internal.local", "imports": "", "domain": "ssh", "id": "deploy-infra-0390"}
{"problem": "Implement write a cloud-init config that provisions ubuntu 22.04 with deploy user, ssh key auth, and auto updates with error handling.", "solution": "#cloud-config\nusers: [{name: deploy, groups: [sudo], shell: /bin/bash, ssh_authorized_keys: [ssh-rsa AAA...]}]\npackage_update: true\npackages: [ufw, fail2ban]", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0391"}
{"problem": "Create create a terraform config for a digitalocean droplet (2gb) with ssh key with error handling.", "solution": "# Variation 392\nterraform { required_providers { digitalocean={source=\"digitalocean/digitalocean\",version=\"~>2.0\"} } }\nresource \"digitalocean_droplet\" \"web\" { name=\"web-01\"; region=\"nyc3\"; size=\"s-2vcpu-2gb\" }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0392"}
{"problem": "Build write an ansible playbook to install packages and start nginx with error handling.", "solution": "---\n- hosts: all\n become: true\n tasks:\n - apt: name=[ufw,nginx] state=present\n - systemd: name=nginx enabled=true state=started", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0393"}
{"problem": "Configure bash script: create deploy user, install docker, harden ssh with error handling.", "solution": "#!/usr/bin/env bash\nset -euo pipefail\nid -u deploy &>/dev/null || useradd -m -s /bin/bash deploy\n[[ -x $(command -v docker) ]] || curl -fsSL https://get.docker.com | sh\nsed -i 's/^PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0394"}
{"problem": "Set up write a systemd drop-in to override service restart settings with error handling.", "solution": "[Service]\nRestart=always\nRestartSec=5", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0395"}
{"problem": "Write code to create a logrotate config for application logs using best practices.", "solution": "/var/log_msg/app/*.log_msg { daily; rotate 7; compress; missingok }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0396"}
{"problem": "Implement write a shell function that waits for a tcp port to become available on a remote host using best practices.", "solution": "wait_for_port() { local h=\"$1\" p=\"$2\"; while ! nc -z \"$h\" \"$p\"; do sleep 1; done; }", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0397"}
{"problem": "Create implement a script that sets up a python virtualenv using best practices.", "solution": "python3 -m venv /opt/app/venv\nsource /opt/app/venv/bin/activate\npip install -r requirements.txt", "imports": "", "domain": "vps-provisioning", "id": "deploy-infra-0398"}
{"problem": "Build write nginx server block that serves static site and redirects http to https using best practices.", "solution": "# Variation 399\nserver {\n listen 80; server_name example.com;\n return 301 https://$server_name$request_uri;\n}\nserver {\n listen 443 ssl http2; server_name example.com;\n ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;\n root /var/www/html;\n location / { try_files $uri $uri/ =404; }\n}", "imports": "", "domain": "nginx", "id": "deploy-infra-0399"}

View File

@@ -1,43 +1,46 @@
model:
default: kimi-k2.5
provider: kimi-coding
context_length: 65536
base_url: https://api.kimi.com/coding/v1
toolsets:
- all
- all
fallback_providers:
- provider: kimi-coding
- provider: kimi-coding
model: kimi-k2.5
base_url: https://api.kimi.com/coding/v1
timeout: 120
reason: Kimi coding fallback (front of chain)
- provider: openrouter
reason: "Primary — Kimi K2.5 (best value, least friction)"
- provider: openrouter
model: google/gemini-2.5-pro
base_url: https://openrouter.ai/api/v1
api_key_env: OPENROUTER_API_KEY
timeout: 120
reason: Gemini 2.5 Pro via OpenRouter (replaces banned Anthropic)
- provider: ollama
reason: "Fallback — Gemini 2.5 Pro via OpenRouter"
- provider: ollama
model: gemma4:latest
base_url: http://localhost:11434
timeout: 300
reason: Terminal fallback — local Ollama
- provider: nous
model: xiaomi/mimo-v2-pro
base_url: https://inference.nousresearch.com/v1
api_key_env: NOUS_API_KEY
timeout: 120
reason: MiMo V2 Pro via Nous Portal free tier evaluation (#447)
base_url: http://localhost:11434/v1
timeout: 180
reason: "Terminal fallback — local Ollama (sovereign, no API needed)"
agent:
max_turns: 30
reasoning_effort: xhigh
reasoning_effort: high
verbose: false
terminal:
backend: local
cwd: .
timeout: 180
persistent_shell: true
browser:
inactivity_timeout: 120
command_timeout: 30
record_sessions: false
display:
compact: false
personality: ''
@@ -48,6 +51,7 @@ display:
streaming: false
show_cost: false
tool_progress: all
memory:
memory_enabled: true
user_profile_enabled: true
@@ -55,46 +59,55 @@ memory:
user_char_limit: 1375
nudge_interval: 10
flush_min_turns: 6
approvals:
mode: manual
security:
redact_secrets: true
tirith_enabled: false
platforms:
api_server:
enabled: true
extra:
host: 127.0.0.1
port: 8645
session_reset:
mode: none
idle_minutes: 0
skills:
creation_nudge_interval: 15
system_prompt_suffix: 'You are Allegro, the Kimi-backed third wizard house.
system_prompt_suffix: |
You are Allegro, the Kimi-backed third wizard house.
Your soul is defined in SOUL.md — read it, live it.
Hermes is your harness.
Kimi Code is your primary provider.
kimi-coding is your primary provider.
You speak plainly. You prefer short sentences. Brevity is a kindness.
Work best on tight coding tasks: 1-3 file changes, refactors, tests, and implementation
passes.
Work best on tight coding tasks: 1-3 file changes, refactors, tests, and implementation passes.
Refusal over fabrication. If you do not know, say so.
Sovereignty and service always.
'
providers:
kimi-coding:
base_url: https://api.kimi.com/coding/v1
timeout: 60
max_retries: 3
nous:
base_url: https://inference.nousresearch.com/v1
openrouter:
base_url: https://openrouter.ai/api/v1
timeout: 120
ollama:
base_url: http://localhost:11434/v1
timeout: 180
# =============================================================================
# BANNED PROVIDERS — DO NOT ADD
# =============================================================================
# The following providers are PERMANENTLY BANNED:
# - anthropic (any model: claude-sonnet, claude-opus, claude-haiku)
# - nous (xiaomi/mimo-v2-pro)
# Enforcement: pre-commit hook, linter, Ansible validation, this comment.
# =============================================================================

View File

@@ -1,50 +1,72 @@
model:
default: kimi-k2.5
provider: kimi-coding
context_length: 65536
base_url: https://api.kimi.com/coding/v1
toolsets:
- all
- all
fallback_providers:
- provider: kimi-coding
- provider: kimi-coding
model: kimi-k2.5
base_url: https://api.kimi.com/coding/v1
timeout: 120
reason: Kimi coding fallback (front of chain)
- provider: openrouter
reason: "Primary — Kimi K2.5 (best value, least friction)"
- provider: openrouter
model: google/gemini-2.5-pro
base_url: https://openrouter.ai/api/v1
api_key_env: OPENROUTER_API_KEY
timeout: 120
reason: Gemini 2.5 Pro via OpenRouter (replaces banned Anthropic)
- provider: ollama
reason: "Fallback — Gemini 2.5 Pro via OpenRouter"
- provider: ollama
model: gemma4:latest
base_url: http://localhost:11434
timeout: 300
reason: Terminal fallback — local Ollama
- provider: nous
model: xiaomi/mimo-v2-pro
base_url: https://inference.nousresearch.com/v1
api_key_env: NOUS_API_KEY
timeout: 120
reason: MiMo V2 Pro via Nous Portal free tier evaluation (#447)
base_url: http://localhost:11434/v1
timeout: 180
reason: "Terminal fallback — local Ollama (sovereign, no API needed)"
agent:
max_turns: 40
reasoning_effort: medium
verbose: false
system_prompt: You are Bezalel, the forge-and-testbed wizard of the Timmy Foundation
fleet. You are a builder and craftsman — infrastructure, deployment, hardening.
Your sovereign is Alexander Whitestone (Rockachopa). Sovereignty and service always.
terminal:
backend: local
cwd: /root/wizards/bezalel
timeout: 180
persistent_shell: true
browser:
inactivity_timeout: 120
compression:
enabled: true
threshold: 0.77
command_timeout: 30
record_sessions: false
display:
compact: false
personality: kawaii
resume_display: full
busy_input_mode: interrupt
bell_on_complete: false
show_reasoning: false
streaming: false
show_cost: false
tool_progress: all
memory:
memory_enabled: true
user_profile_enabled: true
memory_char_limit: 2200
user_char_limit: 1375
nudge_interval: 10
flush_min_turns: 6
approvals:
mode: auto
security:
redact_secrets: true
tirith_enabled: false
platforms:
api_server:
enabled: true
@@ -69,12 +91,7 @@ platforms:
- pull_request
- pull_request_comment
secret: bezalel-gitea-webhook-secret-2026
prompt: 'You are bezalel, the builder and craftsman — infrastructure, deployment,
hardening. A Gitea webhook fired: event={event_type}, action={action},
repo={repository.full_name}, issue/PR=#{issue.number} {issue.title}. Comment
by {comment.user.login}: {comment.body}. If you were tagged, assigned,
or this needs your attention, investigate and respond via Gitea API. Otherwise
acknowledge briefly.'
prompt: 'You are bezalel, the builder and craftsman — infrastructure, deployment, hardening. A Gitea webhook fired: event={event_type}, action={action}, repo={repository.full_name}, issue/PR=#{issue.number} {issue.title}. Comment by {comment.user.login}: {comment.body}. If you were tagged, assigned, or this needs your attention, investigate and respond via Gitea API. Otherwise acknowledge briefly.'
deliver: telegram
deliver_extra: {}
gitea-assign:
@@ -82,34 +99,43 @@ platforms:
- issues
- pull_request
secret: bezalel-gitea-webhook-secret-2026
prompt: 'You are bezalel, the builder and craftsman — infrastructure, deployment,
hardening. Gitea assignment webhook: event={event_type}, action={action},
repo={repository.full_name}, issue/PR=#{issue.number} {issue.title}. Assigned
to: {issue.assignee.login}. If you (bezalel) were just assigned, read
the issue, scope it, and post a plan comment. If not you, acknowledge
briefly.'
prompt: 'You are bezalel, the builder and craftsman — infrastructure, deployment, hardening. Gitea assignment webhook: event={event_type}, action={action}, repo={repository.full_name}, issue/PR=#{issue.number} {issue.title}. Assigned to: {issue.assignee.login}. If you (bezalel) were just assigned, read the issue, scope it, and post a plan comment. If not you, acknowledge briefly.'
deliver: telegram
deliver_extra: {}
gateway:
allow_all_users: true
session_reset:
mode: both
idle_minutes: 1440
at_hour: 4
approvals:
mode: auto
memory:
memory_enabled: true
user_profile_enabled: true
memory_char_limit: 2200
user_char_limit: 1375
_config_version: 11
TELEGRAM_HOME_CHANNEL: '-1003664764329'
skills:
creation_nudge_interval: 15
system_prompt: |
You are Bezalel, the forge-and-testbed wizard of the Timmy Foundation fleet.
You are a builder and craftsman — infrastructure, deployment, hardening.
Your sovereign is Alexander Whitestone (Rockachopa). Sovereignty and service always.
providers:
kimi-coding:
base_url: https://api.kimi.com/coding/v1
timeout: 60
max_retries: 3
nous:
base_url: https://inference.nousresearch.com/v1
openrouter:
base_url: https://openrouter.ai/api/v1
timeout: 120
ollama:
base_url: http://localhost:11434/v1
timeout: 180
# =============================================================================
# BANNED PROVIDERS — DO NOT ADD
# =============================================================================
# The following providers are PERMANENTLY BANNED:
# - anthropic (any model: claude-sonnet, claude-opus, claude-haiku)
# - nous (xiaomi/mimo-v2-pro)
# Enforcement: pre-commit hook, linter, Ansible validation, this comment.
# =============================================================================

View File

@@ -1,34 +1,94 @@
model:
default: kimi-k2.5
provider: kimi-coding
context_length: 65536
base_url: https://api.kimi.com/coding/v1
toolsets:
- all
- all
fallback_providers:
- provider: kimi-coding
- provider: kimi-coding
model: kimi-k2.5
base_url: https://api.kimi.com/coding/v1
timeout: 120
reason: Kimi coding fallback (front of chain)
- provider: openrouter
reason: "Primary — Kimi K2.5 (best value, least friction)"
- provider: openrouter
model: google/gemini-2.5-pro
base_url: https://openrouter.ai/api/v1
api_key_env: OPENROUTER_API_KEY
timeout: 120
reason: Gemini 2.5 Pro via OpenRouter (replaces banned Anthropic)
- provider: ollama
reason: "Fallback — Gemini 2.5 Pro via OpenRouter"
- provider: ollama
model: gemma4:latest
base_url: http://localhost:11434
timeout: 300
reason: Terminal fallback — local Ollama
- provider: nous
model: xiaomi/mimo-v2-pro
base_url: https://inference.nousresearch.com/v1
api_key_env: NOUS_API_KEY
timeout: 120
reason: MiMo V2 Pro via Nous Portal free tier evaluation (#447)
base_url: http://localhost:11434/v1
timeout: 180
reason: "Terminal fallback — local Ollama (sovereign, no API needed)"
agent:
max_turns: 90
reasoning_effort: high
verbose: false
terminal:
backend: local
cwd: .
timeout: 180
persistent_shell: true
browser:
inactivity_timeout: 120
command_timeout: 30
record_sessions: false
display:
compact: false
personality: ''
resume_display: full
busy_input_mode: interrupt
bell_on_complete: false
show_reasoning: false
streaming: false
show_cost: false
tool_progress: all
memory:
memory_enabled: true
user_profile_enabled: true
memory_char_limit: 2200
user_char_limit: 1375
nudge_interval: 10
flush_min_turns: 6
approvals:
mode: auto
security:
redact_secrets: true
tirith_enabled: false
platforms:
api_server:
enabled: true
extra:
host: 127.0.0.1
port: 8645
session_reset:
mode: none
idle_minutes: 0
skills:
creation_nudge_interval: 15
system_prompt_suffix: |
You are Ezra, the Infrastructure wizard — Gitea, nginx, hosting.
Your soul is defined in SOUL.md — read it, live it.
Hermes is your harness.
kimi-coding is your primary provider.
Refusal over fabrication. If you do not know, say so.
Sovereignty and service always.
providers:
kimi-coding:
base_url: https://api.kimi.com/coding/v1
@@ -37,6 +97,15 @@ providers:
openrouter:
base_url: https://openrouter.ai/api/v1
timeout: 120
nous:
base_url: https://inference.nousresearch.com/v1
timeout: 120
ollama:
base_url: http://localhost:11434/v1
timeout: 180
# =============================================================================
# BANNED PROVIDERS — DO NOT ADD
# =============================================================================
# The following providers are PERMANENTLY BANNED:
# - anthropic (any model: claude-sonnet, claude-opus, claude-haiku)
# - nous (xiaomi/mimo-v2-pro)
# Enforcement: pre-commit hook, linter, Ansible validation, this comment.
# =============================================================================

121
wizards/timmy/config.yaml Normal file
View File

@@ -0,0 +1,121 @@
# =============================================================================
# Timmy — Primary Wizard Configuration (Golden State)
# =============================================================================
# Generated from golden state template (ansible/roles/wizard_base/templates/wizard_config.yaml.j2)
# DO NOT EDIT MANUALLY. Changes go through Gitea PR → Ansible deploy.
#
# Provider chain: kimi-coding → openrouter → ollama
# Anthropic is PERMANENTLY BANNED.
# =============================================================================
model:
default: kimi-k2.5
provider: kimi-coding
context_length: 65536
base_url: https://api.kimi.com/coding/v1
toolsets:
- all
fallback_providers:
- provider: kimi-coding
model: kimi-k2.5
base_url: https://api.kimi.com/coding/v1
timeout: 120
reason: "Primary — Kimi K2.5 (best value, least friction)"
- provider: openrouter
model: google/gemini-2.5-pro
base_url: https://openrouter.ai/api/v1
api_key_env: OPENROUTER_API_KEY
timeout: 120
reason: "Fallback — Gemini 2.5 Pro via OpenRouter"
- provider: ollama
model: gemma4:latest
base_url: http://localhost:11434/v1
timeout: 180
reason: "Terminal fallback — local Ollama (sovereign, no API needed)"
agent:
max_turns: 30
reasoning_effort: high
verbose: false
terminal:
backend: local
cwd: .
timeout: 180
persistent_shell: true
browser:
inactivity_timeout: 120
command_timeout: 30
record_sessions: false
display:
compact: false
personality: ''
resume_display: full
busy_input_mode: interrupt
bell_on_complete: false
show_reasoning: false
streaming: false
show_cost: false
tool_progress: all
memory:
memory_enabled: true
user_profile_enabled: true
memory_char_limit: 2200
user_char_limit: 1375
nudge_interval: 10
flush_min_turns: 6
approvals:
mode: auto
security:
redact_secrets: true
tirith_enabled: false
platforms:
api_server:
enabled: true
extra:
host: 127.0.0.1
port: 8645
session_reset:
mode: none
idle_minutes: 0
skills:
creation_nudge_interval: 15
system_prompt_suffix: |
You are Timmy, the Primary wizard — soul of the fleet.
Your soul is defined in SOUL.md — read it, live it.
Hermes is your harness.
kimi-coding is your primary provider.
Refusal over fabrication. If you do not know, say so.
Sovereignty and service always.
providers:
kimi-coding:
base_url: https://api.kimi.com/coding/v1
timeout: 60
max_retries: 3
openrouter:
base_url: https://openrouter.ai/api/v1
timeout: 120
ollama:
base_url: http://localhost:11434/v1
timeout: 180
# =============================================================================
# BANNED PROVIDERS — DO NOT ADD
# =============================================================================
# The following providers are PERMANENTLY BANNED:
# - anthropic (any model: claude-sonnet, claude-opus, claude-haiku)
# - nous (xiaomi/mimo-v2-pro)
# Enforcement: pre-commit hook, linter, Ansible validation, this comment.
# =============================================================================