chore(adr-102): P6e close-out — reconcile ADR-015 + sweep dead TS interfaces#491
Merged
Conversation
…2 (P6e) ADR-015 (Backup/Restore Streaming, Accepted) still marked 'Phase 2: Restore Upload 🚧 IN PROGRESS'. ADR-102 (P2–P6) delivered exactly that — the portable kg-backup/2 format + clone/merge/restamp restore + epoch reconciliation + async restore_worker. Add a status-update callout at the top recording that Phase 1 (backup download) is live (backup_streaming/backup_archive) and Phase 2 was delivered by ADR-102, which builds ON this ADR's streaming foundation rather than replacing it — so ADR-015 stays Accepted and the historical in-progress markers are left in place, read as 'done, see ADR-102'. Adds ADR-102 to 'related'. adr lint: 0 errors / 0 warnings.
cli/src/types/index.ts defined BackupResponse, RestoreRequest, RestoreResponse, and
BackupIntegrityAssessment that no code used:
- createBackup() returns {filename,path,size} and uses BackupRequest (kept).
- restoreBackup() uses positional args + multipart FormData and returns an inline type.
- The three were referenced ONLY by stale imports in client.ts; BackupIntegrityAssessment
was referenced only by the dead BackupResponse (cascade orphan).
Their Python-side counterparts were already deleted in P6a. Removed the four interfaces
+ the three dead imports in client.ts; left breadcrumb comments. CLI builds clean
(tsc + npm run build).
…-up) backup_streaming.py's module docstring labeled itself 'ADR-015 Phase 2', but ADR-015 defines Phase 1 = Backup Download and Phase 2 = Restore Upload. Backup download is Phase 1. Aligns the implementing file with the ADR-015 reconciliation in this PR (caught by the code-reviewer). Docstring only — no behavior change.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
ADR-102 P6e — chunk E + leftover TS sweep (P6 close-out)
The final pieces of P6, the last ADR-102 spine phase. Two focused commits.
1. Reconcile ADR-015 status (chunk E.1)
ADR-015 (Backup/Restore Streaming, Accepted) still marked "Phase 2: Restore Upload
🚧 IN PROGRESS" — but ADR-102 (P2–P6) delivered exactly that. Added a status-update
callout at the top: Phase 1 (backup download) is live (
backup_streaming/backup_archive);Phase 2 (restore upload) was delivered by ADR-102, which builds on ADR-015's streaming
foundation rather than replacing it. So ADR-015 stays Accepted and the historical
in-progress markers are left in place (read as "done, see ADR-102"). Added ADR-102 to
related.adr lint: 0 errors / 0 warnings.restore_worker.py's "ADR-015 Phase 2 / Checkpoint Safety Pattern" citations are correctlineage — left untouched.
2.
age_ops.pytrace (chunk E.2) — no changeapi/lib/age_ops.pyis live: imported asAGEConnectionbyapi/admin/check_integrity.pyapi/admin/prune.py(both kept in P6b). Not an orphan. Recorded, no code change.3. Sweep dead backup/restore TS interfaces (leftover)
cli/src/types/index.tsdefinedBackupResponse,RestoreRequest,RestoreResponse, andBackupIntegrityAssessmentthat nothing used:createBackup()returns{filename,path,size}and usesBackupRequest(kept).restoreBackup()uses positional args + multipartFormData, returns an inline type.client.ts;BackupIntegrityAssessmentwas referenced only by the dead
BackupResponse(cascade orphan — same pattern P6a caught).Their Python counterparts were deleted in P6a. Removed the four interfaces + the three dead
imports; left breadcrumb comments. CLI builds clean (
tsc+npm run build).P6 is now complete
B (#488) · C (#490) · D (#489) · E (#491, this) all resolved. The ADR-102 spine —
P2 → P3 → P4 → P5 → P5-faithful → P6 — is fully landed.
🤖 Generated with Claude Code