Files
kiddo/project-management/requirements/tasks/TASK_000028.md
stephan 107cdabe8d feat: implement update backend API and client logic
Add complete update mechanism for client-side updates:
- backend/update.py: Core update logic (check, apply, rollback, status/logs)
- backend/app.py: REST API endpoints (GET /update/status, POST /update/check, POST /update/apply, POST /update/rollback, GET /update/logs)
- backend/models.py: Pydantic models for update API responses
- backend/settings.py: Update config (status/log file paths)
- scripts/rollback_client.sh: Rollback script for failed updates
- scripts/update_client.sh: Enhanced update client script
- CLAUDE.md: Documentation for future Claude Code instances

Complete US_000026-028 and TASK_000027-029:
- US_000026: Client pulls updates from remote service
- US_000027: Client verifies and applies updates atomically
- US_000028: Client reports update status to backend

All endpoints require authentication. Updates run asynchronously.
Documentation updated per SOP (CHANGELOG, PROJECT_STATUS, stories/tasks).

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

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-30 11:18:34 +01:00

705 B

ID: TASK_000028 | Version: 0.1.0 | Status: Done By: Codex (GPT-5)

TASK_000028: Verify and apply update

Outcome

Update-Artefakt wird verifiziert und atomar angewendet.

Story-Bezug

US_000027

Beschreibung

  • JSON-Manifest lesen (Version, artifact_url, sha256, optional sig_url).
  • tar.gz herunterladen und SHA256 pruefen.
  • Update atomar anwenden (staging, swap, rollback).
  • Fehlerfall dokumentieren (Rollback, Status).
  • Ablauf dokumentiert in docs/update-client.md.

Definition of Done (DoD)

  • Verifikation (Checksum/Signatur) ist beschrieben.
  • Atomare Anwendung und Rollback-Strategie sind definiert.
  • Fehlerbilder sind erfasst.
  • Prototyp-Skript ist als Referenz vorhanden.