Skip to content

Commit f334fb6

Browse files
author
Claude (Netzhandwerker)
committed
v0.1.0: README komplett auf Deutsch, Status-Block, ehrliche Limit-Liste
- Status-Block: v0.1.0, im Einsatz seit April 2026, 500 Deploys/Woche - What-works und Known-limitations explizit dokumentiert - 'Battle-tested' raus, konkrete Einsatz-Zahlen rein - Roadmap (v0.2/0.3/0.4) angekuendigt - CHANGELOG.md angelegt
1 parent db21bb9 commit f334fb6

2 files changed

Lines changed: 129 additions & 127 deletions

File tree

CHANGELOG.md

Lines changed: 21 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,27 @@
11
# Changelog
22

3-
All notable changes to this project will be documented in this file.
4-
The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
5-
This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
3+
Alle nennenswerten Änderungen an diesem Projekt werden hier dokumentiert.
4+
Format orientiert sich an [Keep a Changelog](https://keepachangelog.com/de/),
5+
Versionierung nach [SemVer](https://semver.org/lang/de/).
66

7-
## [Unreleased]
7+
## [0.1.0] — 2026-05-19
88

9-
## [1.0.0] — 2026-05-19
9+
### Hinzugefügt
10+
- Initialer Public Release
11+
- Single-File-PHP-Gateway mit Pfad-Traversal-Schutz
12+
- Endungs-Whitelist
13+
- Optimistic Locking via `If-Match`-Header (SHA-256)
14+
- Single-File-Snapshots mit content-adressierter Deduplikation
15+
- Atomare Batch-Deploys
16+
- Rate-Limiting (global + per IP), file-basiert
17+
- Audit-Log (append-only)
18+
- Binary-Upload-Helfer für Dateien > 800 KB
19+
- Status-Block, What-works, Known-limitations in README
1020

11-
Initial public release. Extracted and anonymized from a production deployment that has been running on All-Inkl shared hosting since April 2026.
21+
### Im Einsatz seit
22+
- April 2026 unter netzhandwerker.de — rund 500 Deploys/Woche
1223

13-
### Added
14-
- Single-file PHP gateway with `ping`, `read`, `write`, `write_b64`, `list`, `delete`, `snapshot`, `snapshots`, `rollback`, `deploy_batch` actions
15-
- Path traversal protection (null byte, `..`, `.`, dangerous extension blocklist)
16-
- Writable extension allowlist (configurable)
17-
- Optimistic locking via `If-Match: <sha256>` header
18-
- Single-file snapshots for individual writes (memory-efficient)
19-
- Full-site snapshots for batch operations
20-
- Content-addressed object store with automatic deduplication
21-
- Garbage collection of unreferenced snapshot objects
22-
- Rate limiting: 30 requests/minute global, 10/minute per IP (file-based, no Redis)
23-
- Append-only audit log with key fingerprint + IP + path + byte count
24-
- Python client class with conflict-aware `read → edit → write` pattern
25-
- Bash deployment example with `--data-urlencode`
26-
- GitHub Actions workflow for push-to-deploy
27-
- Companion `bin-upload.php` helper for large binary uploads via `php://input`
28-
29-
### Security
30-
- Dangerous extensions (`.phar`, `.phtml`, `.php3-7`, `.pht`, `.inc`) explicitly blocked from writes
31-
- API key never logged in plaintext; only first 8 chars of sha256 fingerprint appear in audit log
32-
- IP addresses hashed before being used as rate-limit-bucket filenames
33-
34-
### Known limitations
35-
- Single API key per gateway instance (no multi-tenant support)
36-
- No built-in 2FA / time-based key rotation
37-
- Snapshots stored on the same disk as the deploy target (no off-host backup)
38-
- HTTP only — relies on the host's TLS termination
24+
### Bekannte Grenzen
25+
- API-Key hat vollen Schreibzugriff (kein Multi-Tenant)
26+
- Audit-Log-Rotation manuell
27+
- Snapshots werden nicht automatisch extern gesichert

0 commit comments

Comments
 (0)