lawref.population_replay
population-replay — воспроизведение одного документа отчёта
population-impact по пинам банка (DECISION-0271, proof по требованию).
Отчёт, собранный с --no-store, несёт только адреса документов
(documentRef — sha256 канонических байтов §208). Повтор — тот же ask
строки на той же стороне с тем же закреплённым запросом: пины сторон банка
(манифест, лок, theoryHash, artifactHash, ресурсы), понижение дела,
исполнение. Байты сверяются с documentRef; совпали — документ записан в
--out (если дан), код 0; разошлись — код 3 POPULATION_REPLAY_MISMATCH
(документ всё равно записывается для разбора); отказы подготовки — код 2.
Attributes
| Name | Description |
|---|---|
FAILED | No description. |
MISMATCH | No description. |
MISMATCH_EXIT | No description. |
NO_DOCUMENT | No description. |
OK_EXIT | No description. |
QUERIES | No description. |
REFUSED_EXIT | No description. |
REPORT_INVALID | No description. |
TOOL | No description. |
USAGE | No description. |
USAGE_TEXT | No description. |
Classes
| Name | Description |
|---|---|
ReplayRefusal | No description. |
Functions
| Name | Description |
|---|---|
document_ref | (вид адреса, адрес) документа строки для стороны и запроса: documentRef |
load_report | No description. |
main | No description. |
query_of | Запрос и мера (для проекции) по имени; rank/size — только сторона basis. |
replay | (канонические байты документа, его адрес, ожидаемый адрес из отчёта). |
FAILEDattributemodule attribute#
FAILED = 'POPULATION_REPLAY_FAILED'MISMATCHattributemodule attribute#
MISMATCH = 'POPULATION_REPLAY_MISMATCH'MISMATCH_EXITattributemodule attribute#
MISMATCH_EXIT = 3NO_DOCUMENTattributemodule attribute#
NO_DOCUMENT = 'POPULATION_REPLAY_NO_DOCUMENT'OK_EXITattributemodule attribute#
OK_EXIT = 0QUERIESattributemodule attribute#
QUERIES = ('measure', 'rank', 'size.adults', 'size.children')REFUSED_EXITattributemodule attribute#
REFUSED_EXIT = 2REPORT_INVALIDattributemodule attribute#
REPORT_INVALID = 'POPULATION_REPLAY_REPORT_INVALID'TOOLattributemodule attribute#
TOOL = 'population-replay'USAGEattributemodule attribute#
USAGE = 'POPULATION_REPLAY_USAGE'USAGE_TEXTattributemodule attribute#
USAGE_TEXT = 'python -m lawref population-replay --bank <bank.json> --report <report.json> --row <rowId> --side before|after [--query measure|rank|size.adults|size.children] [--out <файл>] [--lawc <бинарь>]'ReplayRefusalclass#
class ReplayRefusal(code: str, message: str)Bases: Exception
linemethod#
def line() -> strdocument_reffunction#
def document_ref(core: dict, row_id: str, side: str, query: str) -> tuple[str, str](вид адреса, адрес) документа строки для стороны и запроса: documentRef
в полном режиме, outcomeHash в отчёте без proof (DECISION-0275,
reportCore.proofMode = omitted); отсутствие — отказ.
load_reportfunction#
def load_report(path: Path) -> dictmainfunction#
def main(argv: list[str], lower=None, lower_root=None) -> intquery_offunction#
def query_of(bank: dict, query: str, side: str) -> tuple[dict, dict | None]Запрос и мера (для проекции) по имени; rank/size — только сторона basis.
replayfunction#
def replay(bank_path: Path, report_path: Path, row_id: str, side_label: str, query: str, lower, lower_root) -> tuple[bytes, str, str](канонические байты документа, его адрес, ожидаемый адрес из отчёта).
Адрес — documentRef документа либо, для отчёта без proof, outcomeHash
той же проекции §5 над полным документом повтора.
Documentation for Arxo. Writings — blog.arxo.io.
Anonymous visit counts on stats.arxo.io, no cookies.