chore(v2): lint pass — black + ruff auto-fix + mypy regressions (#29 v1.1)
Pre-merge lint hygiene on the PR #30 touched files:
- `black` reformatted 9 files (cassette_transport, crud, models, tasks,
views_api, nip44, all 3 cassette test files, migrations). Cosmetic:
line lengths, trailing commas, multi-line argument layout.
- `ruff check --fix` cleared 176 of 202 errors auto-fixed. Mostly
`UP006` `typing.Optional` → `| None` modernization, `I001` import
sort order, `UP035` typing-extensions cleanup.
- Two new mypy regressions introduced by the migration commit dcb7de0
fixed:
- `crud.py:apply_bootstrap_state` — annotated `existing_first: dict
| None` on the dedup fetch.
- `tasks.py:_cassette_consumer_tick` — `# type: ignore[arg-type]` on
the `nostr_client.relay_manager.add_subscription` call; nostrclient's
upstream typing declares `list[str]` for filters but the actual
Nostr protocol takes `list[<filter-dict>]`. The runtime accepts it
(live smoke at 13:43Z dispatched `nip44_decrypt` cleanly through
this subscription); the typing mismatch is upstream's.
Remaining lint state, intentionally not addressed in this commit
(all pre-existing baseline, not regressions):
- 8 mypy errors in `calculations.py` + the unchanged-by-this-PR parts
of `crud.py` — pre-existing on v2-bitspire.
- 26 ruff style warnings: 14 are N805 false-positives on Pydantic
validators (`cls` first-arg is correct for `@validator`-decorated
methods); 4 are N818 exception-name-suffix preferences on my new
exception classes (renaming would touch many call sites; keep
`OperatorIdentityMissing` / `SignerUnavailable` / `RelayUnavailable`
/ `_NostrclientUnavailable` as-is for clarity); 5 are E501 line-too-
long on docstrings (the long lines are formatted for clarity);
1 RUF002 unicode-minus in a docstring.
Tests: 155 passed, 1 pre-existing async-plugin failure unchanged.
Live smoke (both publish + consume directions through the bunker)
unaffected — this is purely a code-style pass.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
dcb7de0c27
commit
d448fab0d2
10 changed files with 249 additions and 352 deletions
|
|
@ -32,6 +32,7 @@ from ..nip44 import (
|
|||
get_conversation_key,
|
||||
)
|
||||
|
||||
|
||||
# Helper: derive a compressed-x-coord pubkey hex string from a secret hex.
|
||||
def _pub_hex(sec_hex: str) -> str:
|
||||
return (
|
||||
|
|
@ -222,7 +223,10 @@ class TestPaddingFormula:
|
|||
(32, 32),
|
||||
(33, 64), # > 32 → next chunk
|
||||
(64, 64),
|
||||
(65, 96), # chunk = 32 for L=65 (next_power(64) = 64; 64//8 = 8; max(32, 8) = 32)
|
||||
(
|
||||
65,
|
||||
96,
|
||||
), # chunk = 32 for L=65 (next_power(64) = 64; 64//8 = 8; max(32, 8) = 32)
|
||||
(100, 128),
|
||||
(128, 128),
|
||||
# L=129: next_power(128) = 1<<8 = 256; chunk = max(32, 256//8) = 32;
|
||||
|
|
@ -230,7 +234,10 @@ class TestPaddingFormula:
|
|||
(129, 160),
|
||||
(256, 256), # chunk = 32 for L=256 (next_power(255)=256; max(32, 32) = 32)
|
||||
(257, 320),
|
||||
(1000, 1024), # chunk = 128 for L=1000 (next_power(999)=1024; max(32, 128) = 128)
|
||||
(
|
||||
1000,
|
||||
1024,
|
||||
), # chunk = 128 for L=1000 (next_power(999)=1024; max(32, 128) = 128)
|
||||
],
|
||||
)
|
||||
def test_calc_padded_len(self, plaintext_len, expected_padded):
|
||||
|
|
@ -300,12 +307,8 @@ _BITSPIRE_FIXTURE = {
|
|||
],
|
||||
],
|
||||
"created_at": 1780173222,
|
||||
"pubkey": (
|
||||
"217bdc9a65b571c4d9b59da6227a7aa6ca5bbfd5280af791417c57a79d92852b"
|
||||
),
|
||||
"id": (
|
||||
"72c09f333386dd4ad6125f8c69823824eea50d8091b694458bcd60701517eece"
|
||||
),
|
||||
"pubkey": ("217bdc9a65b571c4d9b59da6227a7aa6ca5bbfd5280af791417c57a79d92852b"),
|
||||
"id": ("72c09f333386dd4ad6125f8c69823824eea50d8091b694458bcd60701517eece"),
|
||||
"sig": (
|
||||
"07ecafacf0169f074e564a999ee1c31446930b43391d007c4a1f9ef7ad890d6c"
|
||||
"2aa6e3ecc5318edeb5748fbd64c7ca33407099a97154e2ff7e0c626e48d71925"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue