Activate scoped user-engine mail and finish EMAIL-WP-0008
Assistant: codex Assistant-Model: gpt-6.1-sol Assistant-Session: 01a11fd9-caf6-7a63-b578-9daaaa134ff2
This commit is contained in:
parent
42e8b2040b
commit
e9b9d1c708
17 changed files with 651 additions and 19 deletions
|
|
@ -26,6 +26,20 @@ READERS = [
|
|||
("email-connect", "email-connect-scoped-caller-eso"),
|
||||
("user-engine", "user-engine-scoped-mail-eso"),
|
||||
]
|
||||
FAILURE_CODES = frozenset({
|
||||
"attended_bao_operation_failed", "reviewed_plan_hash_required",
|
||||
"reviewed_artifact_changed", "founder_exact_plan_decision_required",
|
||||
"exact_caller_contract_required", "existing_policy_differs",
|
||||
"policy_readback_differs", "bounded_writer_required", "initial_cas_write_required",
|
||||
"caller_record_changed", "caller_credential_invalid", "caller_readback_differs",
|
||||
"existing_reader_role_differs", "private_receipt_path_required", "fresh_receipt_required",
|
||||
})
|
||||
|
||||
|
||||
def failure_receipt(error):
|
||||
code = str(error) if isinstance(error, Refused) else None
|
||||
return {"status": "failed", "failure_type": type(error).__name__,
|
||||
"failure_code": code if code in FAILURE_CODES else "contained_operation_failed"}
|
||||
|
||||
|
||||
def role(namespace, account):
|
||||
|
|
@ -123,7 +137,7 @@ def provision(transport=bao):
|
|||
return {"kv_version": version, "created": created, "readback_equal": True,
|
||||
"credential_values_printed": False}
|
||||
finally:
|
||||
transport(["write", "auth/token/revoke-self"], token=token)
|
||||
transport(["token", "revoke", "-self"], token=token)
|
||||
|
||||
|
||||
def execute(plan, reviewed, decision, base):
|
||||
|
|
@ -170,7 +184,7 @@ def main():
|
|||
try:
|
||||
receipt = execute(plan, args.reviewed_sha256, args.decision_id, args.api_base)
|
||||
except Exception as error:
|
||||
checkpoint(args.receipt, {"status": "failed", "failure_type": type(error).__name__})
|
||||
checkpoint(args.receipt, failure_receipt(error))
|
||||
raise
|
||||
checkpoint(args.receipt, receipt)
|
||||
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ NS = "email-connect"
|
|||
CLUSTER_UID = "a553c742-0115-43d4-99a4-a5ca56fe0786"
|
||||
IMAGE = (
|
||||
"forgejo.coulomb.social/coulomb/email-connect@sha256:"
|
||||
"eb3e7b68d21209e9eb71b928a5b0bc987e8e3164f21dca4ff712f946d0c103f2"
|
||||
"5d79fd1fec15d3a279383820f170d263de3a55f5308df01a0a34732ebaea6d3d"
|
||||
)
|
||||
LOCK_PATH = Path("/var/lib/email-connect-backup/capture.lock")
|
||||
SELECTOR = "app.kubernetes.io/name=email-connect"
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ from ledger_archive import (
|
|||
|
||||
IMAGE = (
|
||||
"forgejo.coulomb.social/coulomb/email-connect@sha256:"
|
||||
"eb3e7b68d21209e9eb71b928a5b0bc987e8e3164f21dca4ff712f946d0c103f2"
|
||||
"5d79fd1fec15d3a279383820f170d263de3a55f5308df01a0a34732ebaea6d3d"
|
||||
)
|
||||
|
||||
CODE = """import io,json,os,sys
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue