Spaces:
Paused
Paused
File size: 2,190 Bytes
80f50ca | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 | """
Codebook (universal annotation feature).
A mutable, optionally nested set of codes (labels) backed by the
universal `project.sqlite`. Opt-in per scheme via
`annotation_schemes[].codebook: true`; `codebook_mode`
(fixed|extensible|open) governs whether annotators may add codes on the
fly. Universal — usable in standard annotation, solo mode (human + LLM
co-edit), and QDA mode.
Layers:
- `store` — SQLite persistence (codes + annotation_codes).
- `codebook` — read-model: tree + flat label list for the schema bridge.
- `service` — the single audited mutation path (create/rename/recolor/
move_under/delete + annotation links); fires change listeners (ICL
prompt-cache invalidation).
"""
# Import order matters: .service -> .store registers the 0001_codebook
# migration (CREATE TABLE codes) which .revision's ALTER depends on.
from .service import (
CodebookCycleError,
CodebookError,
CodeNotFound,
DuplicateCodeError,
apply_code,
clear_change_listeners,
codes_on,
create_code,
delete_code,
merge_codes,
move_under,
recolor_code,
register_change_listener,
remove_code,
rename_code,
split_code,
)
from .codebook import Codebook
from .similar import derive_code_name, similar_code_names
from . import revision
from . import changelog
from .changelog import propose_change
from .revision import (
all_stale_instances,
codes_added_since,
current_revision,
instance_revision,
record_annotation,
stale_instances,
touch_instances,
)
__all__ = [
"Codebook",
"CodebookError",
"CodeNotFound",
"DuplicateCodeError",
"CodebookCycleError",
"create_code",
"rename_code",
"recolor_code",
"move_under",
"delete_code",
"merge_codes",
"split_code",
"touch_instances",
"apply_code",
"remove_code",
"codes_on",
"register_change_listener",
"clear_change_listeners",
"revision",
"current_revision",
"record_annotation",
"instance_revision",
"stale_instances",
"all_stale_instances",
"codes_added_since",
"derive_code_name",
"similar_code_names",
"changelog",
"propose_change",
]
|