cctally 1.116.1 → 1.117.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +47 -0
- package/README.md +4 -6
- package/bin/_cctally_account.py +57 -3
- package/bin/_cctally_cache.py +5720 -885
- package/bin/_cctally_claude_attribution.py +997 -0
- package/bin/_cctally_completion.py +101 -28
- package/bin/_cctally_core.py +235 -12
- package/bin/_cctally_dashboard.py +263 -17
- package/bin/_cctally_dashboard_conversation.py +107 -21
- package/bin/_cctally_dashboard_envelope.py +44 -0
- package/bin/_cctally_db.py +928 -80
- package/bin/_cctally_diagnosis_sources.py +78 -13
- package/bin/_cctally_doctor.py +211 -86
- package/bin/_cctally_five_hour.py +446 -22
- package/bin/_cctally_forecast.py +302 -6
- package/bin/_cctally_journal.py +2418 -158
- package/bin/_cctally_milestone_history.py +379 -91
- package/bin/_cctally_oauth_samples.py +185 -7
- package/bin/_cctally_parser.py +38 -0
- package/bin/_cctally_project.py +34 -8
- package/bin/_cctally_quarantine.py +821 -343
- package/bin/_cctally_quota.py +69 -4
- package/bin/_cctally_quota_calibration.py +677 -3
- package/bin/_cctally_quota_model.py +927 -127
- package/bin/_cctally_record.py +922 -445
- package/bin/_cctally_rederive.py +119 -15
- package/bin/_cctally_statusline.py +1048 -176
- package/bin/_cctally_store.py +544 -110
- package/bin/_cctally_tui.py +455 -42
- package/bin/_cctally_update.py +77 -14
- package/bin/_lib_account_protocol.py +227 -19
- package/bin/_lib_claude_attribution.py +421 -0
- package/bin/_lib_clone_copy.py +30 -0
- package/bin/_lib_codex_conversation_query.py +45 -9
- package/bin/_lib_codex_conversation_watch.py +72 -13
- package/bin/_lib_codex_rollout_container.py +234 -19
- package/bin/_lib_codex_worker_lifecycle.py +374 -0
- package/bin/_lib_credit.py +22 -13
- package/bin/_lib_dashboard_sources.py +257 -18
- package/bin/_lib_detector_access_registry.py +1335 -166
- package/bin/_lib_doctor.py +276 -92
- package/bin/_lib_ingest_frontier.py +269 -36
- package/bin/_lib_journal.py +273 -22
- package/bin/_lib_jsonl.py +12 -0
- package/bin/_lib_meter_rate_change.py +72 -0
- package/bin/_lib_outcome_quarantine.py +917 -554
- package/bin/_lib_provider_activity.py +24 -6
- package/bin/_lib_quota_calibration.py +57 -3
- package/bin/_lib_quota_copy.py +7 -2
- package/bin/_lib_quota_lineage.py +613 -0
- package/bin/_lib_quota_model.py +464 -33
- package/bin/_lib_rate_change_delivery.py +16 -0
- package/bin/_lib_reclaim_planner.py +6 -4
- package/bin/_lib_rederive.py +2046 -21
- package/bin/_lib_selector_state.py +131 -3
- package/bin/_lib_snapshot_cache.py +8 -0
- package/bin/_lib_stale_proof.py +113 -4
- package/bin/_lib_statusline.py +72 -3
- package/bin/_lib_statusline_candidates.py +246 -42
- package/bin/_lib_tick_stats.py +10 -5
- package/bin/_lib_write_io.py +419 -6
- package/bin/cctally +28 -11
- package/dashboard/static/assets/{ConversationsView-Dflb_myA.js → ConversationsView-oqNsWzWV.js} +1 -1
- package/dashboard/static/assets/{DoctorModal-DFX5CfIs.js → DoctorModal-B0DnU9d9.js} +1 -1
- package/dashboard/static/assets/ModalRoot-CYua2wP_.js +1 -0
- package/dashboard/static/assets/{ProjectsDrillPanel-C3PJy1xx.js → ProjectsDrillPanel-DSxXQSa-.js} +1 -1
- package/dashboard/static/assets/{SourceDetailModal-BczsWKhD.js → SourceDetailModal-BleDpQqG.js} +1 -1
- package/dashboard/static/assets/{UpdateModal-Os-Lo5cs.js → UpdateModal-CMqaAkSK.js} +1 -1
- package/dashboard/static/assets/{index-CYZ3NLqF.js → index-BjQV-0-D.js} +3 -3
- package/dashboard/static/assets/index-D34eYhAc.css +1 -0
- package/dashboard/static/assets/{outlineNavigation-k-zIif6W.js → outlineNavigation-CO-VWBm7.js} +1 -1
- package/dashboard/static/assets/{useKeymap-CW7Up0Ay.js → useKeymap-CUgEnnua.js} +1 -1
- package/dashboard/static/dashboard.html +3 -3
- package/package.json +5 -1
- package/dashboard/static/assets/ModalRoot-HlxoagIa.js +0 -1
- package/dashboard/static/assets/index-BKITk1CT.css +0 -1
|
@@ -107,6 +107,22 @@ def with_decided(state, identities, *, seeded=None) -> dict:
|
|
|
107
107
|
}
|
|
108
108
|
|
|
109
109
|
|
|
110
|
+
def without_decided(state, identities) -> dict:
|
|
111
|
+
"""A NEW state with `identities` no longer decided (#1015 spec 5.7).
|
|
112
|
+
|
|
113
|
+
Used only to hand back a claim this run won and then could not hand off
|
|
114
|
+
(the supersession recheck could not take its read guard): the identity
|
|
115
|
+
becomes owed again so a later run retries it. A decision whose
|
|
116
|
+
notification was handed off is never removed.
|
|
117
|
+
"""
|
|
118
|
+
remaining = decided_set(state) - {tuple(i) for i in identities}
|
|
119
|
+
return {
|
|
120
|
+
"schemaVersion": SCHEMA_VERSION,
|
|
121
|
+
"seededFromStats": bool(state.get("seededFromStats")),
|
|
122
|
+
"decided": [list(i) for i in sorted(remaining)],
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
|
|
110
126
|
def owed(recorded, decided) -> tuple:
|
|
111
127
|
"""Recorded identities with no decision, in a stable order.
|
|
112
128
|
|
|
@@ -11,7 +11,8 @@ The bound (`dc5`, `dc6`, audited against SQLite `btree.c`, `pager.c` and
|
|
|
11
11
|
`sqlite3BtreeIncrVacuum`, `allocateBtreePage`, `setChildPtrmaps`,
|
|
12
12
|
`ptrmapPutOvflPtr`, `ptrmapPageno`, `btreeGetUnusedPage` and
|
|
13
13
|
`autoVacuumCommit` are identical and `incrVacuumStep` / `modifyPagePointer`
|
|
14
|
-
differ only by corruption checks
|
|
14
|
+
differ only by corruption checks; 3.54.1's three files are byte-identical to
|
|
15
|
+
3.54.0's, #1023):
|
|
15
16
|
|
|
16
17
|
* Each step removes the file's last page, skipping pointer-map and
|
|
17
18
|
pending-byte pages, exactly as `incrVacuumStep` does.
|
|
@@ -65,10 +66,11 @@ import time
|
|
|
65
66
|
|
|
66
67
|
PLANNER_VERSION = 1
|
|
67
68
|
#: The SQLite releases whose incremental-vacuum sources were audited (spec
|
|
68
|
-
#: §1.4, G3q
|
|
69
|
-
#:
|
|
69
|
+
#: §1.4, G3q; 3.54.1 in docs/superpowers/specs/2026-10-30-1023-sqlite-3541-
|
|
70
|
+
#: reclaim-audit.md). A runtime outside the range refuses reclaim until G3q
|
|
71
|
+
#: passes on that version and a source review widens it.
|
|
70
72
|
AUDITED_SQLITE_MIN = (3, 37, 2)
|
|
71
|
-
AUDITED_SQLITE_MAX = (3, 54,
|
|
73
|
+
AUDITED_SQLITE_MAX = (3, 54, 1)
|
|
72
74
|
|
|
73
75
|
WAL_INDEX_VERSION = 3007000
|
|
74
76
|
WAL_FORMAT_VERSION = 3007000
|