rebuild(stage-2): establish runtime and persistence foundations

This commit is contained in:
leefer
2026-07-30 01:02:04 +08:00
parent b3ba840d4e
commit d969d2c092
26 changed files with 865 additions and 33 deletions
+33
View File
@@ -0,0 +1,33 @@
import json
import logging
from backend.bootstrap.logging import JsonFormatter, redact
def test_nested_sensitive_values_are_redacted() -> None:
payload = {
"account": "leefer",
"api_key": "private-key",
"nested": {"refresh-token": "private-token", "count": 3},
}
assert redact(payload) == {
"account": "leefer",
"api_key": "[REDACTED]",
"nested": {"refresh-token": "[REDACTED]", "count": 3},
}
def test_json_formatter_keeps_context_without_secret_values() -> None:
record = logging.LogRecord(
"test", logging.INFO, __file__, 1, "saved token=plain-secret", (), None
)
record.request_id = "request-1"
record.context = {"token": "hidden", "feature": "health"}
payload = json.loads(JsonFormatter().format(record))
assert payload["timestamp"].endswith("+08:00")
assert payload["request_id"] == "request-1"
assert payload["message"] == "saved token=[REDACTED]"
assert payload["context"] == {"token": "[REDACTED]", "feature": "health"}