Refresh Coulomb protected recovery point after date correction
Assistant: codex Assistant-Model: gpt-6-astra Assistant-Session: 01a18e2d-f513-7742-b8e7-12af0b744ff3
This commit is contained in:
parent
5d2f43d6d9
commit
96d4d319be
4 changed files with 165 additions and 18 deletions
|
|
@ -43,29 +43,29 @@
|
|||
},
|
||||
"native_application_recovery_verified": true,
|
||||
"protected_recovered_point": {
|
||||
"captured_at": "2026-10-29T21:22:46Z",
|
||||
"primary_object_key": "platform-pg/application-archives/coulomb-social/2026/10/29/20261029T212246Z-fd128164c7bb22a3a6c42acf.tar.age",
|
||||
"primary_version_id": "1793309020705518",
|
||||
"ciphertext_sha256": "acbf92eda5074761bb6d00170e6e459e787359afcd377f2f18324ba17496510a",
|
||||
"captured_at": "2026-10-31T07:13:52Z",
|
||||
"primary_object_key": "platform-pg/application-archives/coulomb-social/2026/10/31/20261031T071352Z-abf5997f01a14d9cb05e4bba.tar.age",
|
||||
"primary_version_id": "1793430889823443",
|
||||
"ciphertext_sha256": "840e633047fddd88c6e6a1a3d6909d9af1ad80eaba8c90f83d8e81188dfc17a4",
|
||||
"protected_kit": {
|
||||
"automatic_expiry": false,
|
||||
"bucket": "railiance-coulomb-social-recovery",
|
||||
"bytes": 277585920,
|
||||
"object_key": "kits/db05c8f3b5587dc1fc09a5352c317dd3357527dbe72366ab7ca1041db578c834/recovery-kit.tar",
|
||||
"project_id": "06d107bc-9d84-4672-b2a0-95701cc0c07f",
|
||||
"schema": "platform.coulomb-protected-recovery-kit.v1",
|
||||
"sha256": "db05c8f3b5587dc1fc09a5352c317dd3357527dbe72366ab7ca1041db578c834",
|
||||
"version_id": "1793309971213507"
|
||||
"project_id": "06d107bc-9d84-4672-b2a0-95701cc0c07f",
|
||||
"bucket": "railiance-coulomb-social-recovery",
|
||||
"object_key": "kits/4166eb8ba97f7bd79e912c2efaee2622fcd472b05ed80070ccf7e6728fec5bd6/recovery-kit.tar",
|
||||
"version_id": "1793432303941465",
|
||||
"sha256": "4166eb8ba97f7bd79e912c2efaee2622fcd472b05ed80070ccf7e6728fec5bd6",
|
||||
"bytes": 276019200,
|
||||
"automatic_expiry": false
|
||||
},
|
||||
"recovery_seconds": 30.232,
|
||||
"proof": "docs/evidence/2026-10-29-coulomb-provider-kit-recovery.json",
|
||||
"recovery_seconds": 46.692,
|
||||
"proof": "docs/evidence/2026-10-31-coulomb-provider-kit-post-date-recovery.json",
|
||||
"protected_recovery_proof": {
|
||||
"project_id": "06d107bc-9d84-4672-b2a0-95701cc0c07f",
|
||||
"bucket": "railiance-coulomb-social-recovery",
|
||||
"object_key": "kits/receipts/a77477cac53086b83ad2cb512973ae0d1dfecba028a29a92e06a1bcfe5287f29/recovery-proof.json",
|
||||
"version_id": "1793310476676486",
|
||||
"sha256": "a77477cac53086b83ad2cb512973ae0d1dfecba028a29a92e06a1bcfe5287f29",
|
||||
"bytes": 4237,
|
||||
"object_key": "kits/receipts/b93e3003627581eb510086ba207bf283085d88cb9b3dfd0e74ffa8ebf02c39f0/recovery-proof.json",
|
||||
"version_id": "1793432409572654",
|
||||
"sha256": "b93e3003627581eb510086ba207bf283085d88cb9b3dfd0e74ffa8ebf02c39f0",
|
||||
"bytes": 4365,
|
||||
"independent_readback_verified": true,
|
||||
"automatic_expiry": false
|
||||
}
|
||||
|
|
|
|||
|
|
@ -67,3 +67,18 @@ application_recovery_drill.py previews without effects and executes only with
|
|||
directory outside Git. It never restores production. Retention/copy disposition,
|
||||
monitoring and scheduled activation remain open; this receipt closes only the
|
||||
consumer's first-paired-recovery task.
|
||||
|
||||
2026-10-31 corrected-date protected recovery refresh: the 07:13:52Z point is now
|
||||
independently retained in kit4166eb8b/version1793432303941465 (276,019,200bytes)
|
||||
and recovered using only the provider kit plus separate age escrow. All2098members,
|
||||
13tables/114rows/sequences,86files and40owner renders/40outsider denials pass in
|
||||
46.692s. The matching captured image is51281946; this point predates the revision19
|
||||
image update but includes the verified source-date correction. Current image522bcd7f
|
||||
has separate same-store export/view proof. The successful recovery proof is itself
|
||||
protected and independently read back at version1793432409572654. The fresh drill's
|
||||
temporary identity file was removed; pre-existing custody and historical copies
|
||||
remain untouched. No production restore, new grants, expiry or timer activation.
|
||||
Public API coordinates now identify this verified point; the former pointer still
|
||||
named October29 and was stale. Historical kits/proofs remain retained. Receipt:
|
||||
docs/evidence/2026-10-31-coulomb-provider-kit-post-date-recovery.json. Existing
|
||||
retention/capacity/monitoring/copy-disposition obligations remain open.
|
||||
|
|
|
|||
|
|
@ -0,0 +1,117 @@
|
|||
{
|
||||
"schema": "platform.coulomb-provider-kit-recovery.v1",
|
||||
"status": "application_restored_verified",
|
||||
"started_at": "2026-10-31T07:39:13.861634+00:00",
|
||||
"completed_at": "2026-10-31T07:40:07.620278+00:00",
|
||||
"stages_seconds": {
|
||||
"provider_kit_retrieval": 18.124,
|
||||
"all_kit_member_hashes_and_extraction": 4.717,
|
||||
"provider_age_escrow_retrieval": 0.501,
|
||||
"application_image_load": 2.432,
|
||||
"postgres_image_load": 3.177,
|
||||
"decrypt_and_validate_pair": 0.131,
|
||||
"isolated_database_content_restore": 7.451,
|
||||
"packaged_app_views_and_permissions": 9.607
|
||||
},
|
||||
"recovery_seconds": 46.692,
|
||||
"protected_kit": {
|
||||
"schema": "platform.coulomb-protected-recovery-kit.v1",
|
||||
"project_id": "06d107bc-9d84-4672-b2a0-95701cc0c07f",
|
||||
"bucket": "railiance-coulomb-social-recovery",
|
||||
"object_key": "kits/4166eb8ba97f7bd79e912c2efaee2622fcd472b05ed80070ccf7e6728fec5bd6/recovery-kit.tar",
|
||||
"version_id": "1793432303941465",
|
||||
"sha256": "4166eb8ba97f7bd79e912c2efaee2622fcd472b05ed80070ccf7e6728fec5bd6",
|
||||
"bytes": 276019200,
|
||||
"automatic_expiry": false
|
||||
},
|
||||
"kit_members_verified": 2098,
|
||||
"application": "coulomb-social",
|
||||
"captured_at": "2026-10-31T07:13:52Z",
|
||||
"application_restore_verified": true,
|
||||
"application_data_images_and_recovery_tools_from_provider_kit": true,
|
||||
"bootstrap_api_client_preinstalled": true,
|
||||
"age_identity_from_separate_provider_escrow": true,
|
||||
"original_node_or_plaintext_used": false,
|
||||
"personal_session_used": false,
|
||||
"registry_pulls_performed": false,
|
||||
"fresh_docker_daemon": false,
|
||||
"operator_account_recovery_time_included": false,
|
||||
"real_browser_journey_verified": false,
|
||||
"unpack": {
|
||||
"status": "decrypted_pair_verified",
|
||||
"version_id": "1793430889823443",
|
||||
"encrypted_sha256": "840e633047fddd88c6e6a1a3d6909d9af1ad80eaba8c90f83d8e81188dfc17a4",
|
||||
"captured_at": "2026-10-31T07:13:52Z",
|
||||
"database_sha256": "498a11e221dcdef38075d23ef89a26f213316c6164addb70d47bfcb98a1999a7",
|
||||
"content_sha256": "644db8f09684bd4a79c126a01a329904351c30bb340295b29c8bb0ca71092dfe",
|
||||
"application_restore_verified": false
|
||||
},
|
||||
"restore": {
|
||||
"status": "restored_verified",
|
||||
"database_tables": 13,
|
||||
"database_rows": 114,
|
||||
"database_rows_and_sequences_match": true,
|
||||
"content_files": 86,
|
||||
"content_hashes_match": true,
|
||||
"network_internal": true,
|
||||
"published_ports": 0,
|
||||
"postgres_image_id": "sha256:ff23cdce56cac62ada6f66013e1a50864c0abbe79d132d40b6e05bd80f378a70",
|
||||
"elapsed_seconds": 7.35,
|
||||
"content_was_empty": false,
|
||||
"database_container": "csoc-recovery-20261031073947",
|
||||
"network": "csoc-recovery-20261031073947-net"
|
||||
},
|
||||
"application_checks": {
|
||||
"status": "isolated_application_recovery_verified",
|
||||
"recovered_spaces_with_content": 1,
|
||||
"actual_pages_rendered_through_view": 40,
|
||||
"restored_owner_access_verified": true,
|
||||
"synthetic_viewer_reads": 1,
|
||||
"synthetic_viewer_mutation_denials": 1,
|
||||
"same_tenant_ungranted_page_denials": 40,
|
||||
"fixture_transaction_rolled_back": true,
|
||||
"production_access": false,
|
||||
"external_identity_provider_used": false,
|
||||
"real_browser_journey_verified": false,
|
||||
"content_files_unchanged": 86,
|
||||
"packaged_application_image": "sha256:512819463a1902b43a615beee14be7bf97e6a05e016385082b9380692ad1a8cd",
|
||||
"database_restore": {
|
||||
"status": "restored_verified",
|
||||
"database_tables": 13,
|
||||
"database_rows": 114,
|
||||
"database_rows_and_sequences_match": true,
|
||||
"content_files": 86,
|
||||
"content_hashes_match": true,
|
||||
"network_internal": true,
|
||||
"published_ports": 0,
|
||||
"postgres_image_id": "sha256:ff23cdce56cac62ada6f66013e1a50864c0abbe79d132d40b6e05bd80f378a70",
|
||||
"elapsed_seconds": 7.35,
|
||||
"content_was_empty": false,
|
||||
"database_container": "csoc-recovery-20261031073947",
|
||||
"network": "csoc-recovery-20261031073947-net",
|
||||
"restored_directory": "/home/worsch/.config/railiance-platform/coulomb-social-recovery/drill-20261031T071352Z/provider-only-recovery/csoc-recovery-20261031073947-fkl67w71"
|
||||
}
|
||||
},
|
||||
"timers_activated": false,
|
||||
"object_key": "platform-pg/application-archives/coulomb-social/2026/10/31/20261031T071352Z-abf5997f01a14d9cb05e4bba.tar.age",
|
||||
"version_id": "1793430889823443",
|
||||
"ciphertext_sha256": "840e633047fddd88c6e6a1a3d6909d9af1ad80eaba8c90f83d8e81188dfc17a4",
|
||||
"ciphertext_bytes": 2181848,
|
||||
"image": "forgejo.coulomb.social/coulomb/coulomb-social@sha256:512819463a1902b43a615beee14be7bf97e6a05e016385082b9380692ad1a8cd",
|
||||
"age_recipient": "age1qm30jk8q0cezey652dk2dhcr3d9vs528v6lg8mavl6d4q3e3vgnqmrmyy3",
|
||||
"database_sha256": "498a11e221dcdef38075d23ef89a26f213316c6164addb70d47bfcb98a1999a7",
|
||||
"content_sha256": "644db8f09684bd4a79c126a01a329904351c30bb340295b29c8bb0ca71092dfe",
|
||||
"protected_recovery_proof": {
|
||||
"project_id": "06d107bc-9d84-4672-b2a0-95701cc0c07f",
|
||||
"bucket": "railiance-coulomb-social-recovery",
|
||||
"object_key": "kits/receipts/b93e3003627581eb510086ba207bf283085d88cb9b3dfd0e74ffa8ebf02c39f0/recovery-proof.json",
|
||||
"version_id": "1793432409572654",
|
||||
"sha256": "b93e3003627581eb510086ba207bf283085d88cb9b3dfd0e74ffa8ebf02c39f0",
|
||||
"bytes": 4365,
|
||||
"independent_readback_verified": true,
|
||||
"automatic_expiry": false
|
||||
},
|
||||
"temporary_drill_identity_removed": true,
|
||||
"restore_work_root_override": "protected provider-only recovery directory",
|
||||
"driver_sha256": "68415a3165f6f137919fc06dbbcc09c8ec025500e86c8649d3b1c0ce9d884028"
|
||||
}
|
||||
|
|
@ -8,7 +8,7 @@ status: active
|
|||
owner: codex
|
||||
topic_slug: coulomb-social
|
||||
created: "2026-10-07"
|
||||
updated: "2026-10-29"
|
||||
updated: "2026-10-31"
|
||||
state_hub_workstream_id: "cb55e474-c7a5-5c6f-bd72-ce65f853e3e3"
|
||||
---
|
||||
|
||||
|
|
@ -433,3 +433,18 @@ is done. Owner T02 retention/capacity/copy disposition and T03/T04 scheduled and
|
|||
monitored operation remain open. Preserve isolated recovery fixtures for the
|
||||
pending actual-data storage-migration rehearsal; do not treat their copies as
|
||||
another independent offsite location or delete historical plaintext pairs.
|
||||
|
||||
2026-10-31 corrected-date protected recovery refresh: the 07:13:52Z point is now
|
||||
independently retained in kit4166eb8b/version1793432303941465 (276,019,200bytes)
|
||||
and recovered using only the provider kit plus separate age escrow. All2098members,
|
||||
13tables/114rows/sequences,86files and40owner renders/40outsider denials pass in
|
||||
46.692s. The matching captured image is51281946; this point predates the revision19
|
||||
image update but includes the verified source-date correction. Current image522bcd7f
|
||||
has separate same-store export/view proof. The successful recovery proof is itself
|
||||
protected and independently read back at version1793432409572654. The fresh drill's
|
||||
temporary identity file was removed; pre-existing custody and historical copies
|
||||
remain untouched. No production restore, new grants, expiry or timer activation.
|
||||
Public API coordinates now identify this verified point; the former pointer still
|
||||
named October29 and was stale. Historical kits/proofs remain retained. Receipt:
|
||||
docs/evidence/2026-10-31-coulomb-provider-kit-post-date-recovery.json. Existing
|
||||
retention/capacity/monitoring/copy-disposition obligations remain open.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue