Skip to main content

cjm-transcript-decomp-core

A frontend-agnostic core for the transcript decomposition workflow — composes isolated capability workers (forced alignment, VAD, graph storage) into a headless pipeline that decomposes transcription run manifests into a VAD-aligned context-graph spine with traceable provenance, and a CLI as its first driver.

Modules

  • cjm_transcript_decomp_core
  • cjm_transcript_decomp_core.alignment — Pure forced-alignment logic (no capability calls): map FA words back to character spans in the original text, assign words to VAD chunks by timestamp, and build one text segment per VAD chunk. Extracted from the page-centric ForcedAlignmentService (Tier-1 logic).
  • cjm_transcript_decomp_core.cli — The CLI driver — the decomposition core's first (and currently only) frontend.
  • cjm_transcript_decomp_core.discovery — Capability-role discovery by manifest surface match — the journaling-by-
  • cjm_transcript_decomp_core.graph — Graph-spine EXTENSION + skeptical-lens verification (stage 5, CR-18 revolution 2). Decomp no longer creates a Document: it RECOMPUTES the transcription-emitted root's deterministic node ids from the consumed manifest (no search), verifies the root exists, and attaches the fine Segment spine under the existing AudioSegment nodes — PART_OF to the owning rendition, STARTS_WITH per rendition (the coarse-seam jump anchor), source-wide NEXT. Each Segment carries the audio TimeSlice ref plus per-transcriber CharSlice refs into the Transcript nodes (the D4/P10 framing, finally expressible). Commit goes through the layer's idempotent extend_graph.
  • cjm_transcript_decomp_core.launch — The shared launch surface every decomp shell drives through: the argument
  • cjm_transcript_decomp_core.models — Lean data shapes for the transcript-decomposition pipeline: in-core mirrors of the forced-alignment / VAD / text DTOs (no FastHTML deps), run configuration, the committed graph-segment carrier, and the decomposition run manifest (proto-bundle).
  • cjm_transcript_decomp_core.pipeline — The headless decomposition pipeline (stage 5: decomp is an EXTENDER). Load a transcription run manifest, verify the transcription-emitted graph root exists (the graph begins at transcription), then per source per pipeline-segment run VAD + per-transcriber forced alignment, build one aligned segment per VAD chunk with per-transcriber text variants, and attach the fine spine under the existing AudioSegment nodes via the layer's idempotent extend_graph — with HITL approval seams between alignment, commit, and the next source.
  • cjm_transcript_decomp_core.runs — Run-manifest indexes for the decomp-batch TUI (work item 0ff6bf0f): the
  • cjm_transcript_decomp_core.segments — Fine-segment inspection for the decomp TUI (work item 166dd2b8, half a):
  • cjm_transcript_decomp_core.state — Sidecar TUI state: last-used batch settings persisted across sessions (the

API

cjm_transcript_decomp_core.alignment

  • assign_words_to_chunks function — Assign each FA word to a VAD chunk by timestamp overlap.
  • build_segments_from_alignment function — Build a TextSegment per VAD chunk by grouping words by chunk assignment.
  • carve_chunks_at_event_spans function — The event-carve stage (EVENT_SPLIT_POLICY, respine trial DEC 6cc10fb7):
  • map_fa_words_to_text function — Map forced-alignment words back to character spans in the original text.
  • rescue_gap_words function — The word-rescue stage (WORD_RESCUE_POLICY, 96edc646 verdict bc7ece7b):
  • sentence_end_word_indices function — Map capability-delivered sentence boundaries onto FA words (B.5: the
  • split_chunks_at_sentence_gaps function — The sentence-split stage (SENTENCE_SPLIT_POLICY, DEC f1024568): refine the
  • tier1_alignment_checks function — Tier-1 deterministic pre-filters for the alignment-review seam (no AI).

cjm_transcript_decomp_core.cli

  • build_parser function — Build the CLI parser (subcommands: run).
  • load_capabilities function — Discover manifests + load each requested capability (default instance).
  • main function — CLI entry point (console script: cjm-transcript-decomp-core).
  • run_command function — Execute the run subcommand: extend transcription-run manifest(s) with the fine spine.

cjm_transcript_decomp_core.discovery

  • discover_capability function — Pick a DEFAULT capability for a role by surface match.
  • manifests_with_method function — Enumerate installed capabilities whose structural surface lists method.

cjm_transcript_decomp_core.graph

  • SourceVerification class — Skeptical-lens verification of one Source's fine-spine extension under a
  • build_extension_payload function — Build the fine-spine EXTENSION payload (pure; no capability calls).
  • resolve_root_ids function — Recompute the transcription-emitted root node ids from manifest data.
  • verify_source function — Verify a Source's committed extension via server-side AGGREGATES (D13/D19).

cjm_transcript_decomp_core.launch

  • batch_argv function — Render one hand-off group as headless decomp-core argv.
  • build_parser function — The TUI driver's argument surface (batch-setup options + core passthrough).
  • event_split_batch_error function — One propset carves ONE source: the core applies --event-propset to every
  • hand_off function — The shared driver tail: persist the confirmed choices, adopt the in-app
  • resolve_settings function — Resolve the batch-setup settings every shell shares (flags > persisted
  • resolve_split_flags function — Resolve the post-parse split-flag contract (pure; main() calls it

cjm_transcript_decomp_core.models

  • DecompConfig class — Configuration for one transcript-decomposition run.
  • DecompManifest class — Durable record of one decomposition run (proto-bundle; see CR-20).
  • DecompSegment class — One fine spine segment (stage 5: shared audio-side skeleton + per-transcriber variants).
  • DecompSourceRecord class — Record of one Source whose fine spine this run committed (stage 5:
  • FAWord class — One word-level forced-alignment result (segment-local times).
  • SegmentVariant class — One transcriber's text + char range for one fine segment (stage 5).
  • TextSegment class — A text segment produced by alignment, before graph commit.
  • VADChunk class — A voice-activity time range within one pipeline segment (segment-local).
  • new_run_id function — Generate a unique, sortable decomposition run id.

cjm_transcript_decomp_core.pipeline

  • build_alignment_composition function — Build the whole-source M×(VAD ∥ T×FA ∥ SEG) composition (D8 fan-in, stage-5 variants).
  • collect_capability_info function — Record capability identity + data-DB pointers for the run manifest (provenance).
  • compute_skeleton_hash function — Skeleton identity, pure (DEC f1024568 + 9241564f + 6cc10fb7).
  • confirm_seam function — HITL approval seam in its cheapest viable form (log + optional CLI prompt).
  • decomp_replay_handlers function — The decomp core's replay vocabulary (DEC 426658f1, replay stays DOMAIN-OWNED).
  • decompose_source function — Decompose one source into aligned fine segments with per-transcriber variants.
  • event_spans_from_propset function — Load a proposal set BY POINTER and select its carve spans (respine trial
  • fa_words_from_result function — Normalize a typed forced-alignment result into FA words (pure; stage 3).
  • load_source_manifest function — Load + lightly validate a transcription-core run manifest.
  • run_decomp function — Extend every source in a transcription run manifest with its fine spine.
  • sentence_spans_from_result function — Normalize a typed sentence-segmentation result into char-span tuples (pure; B.5).
  • submit_and_wait function — Submit one capability job, wait for it, and return its result (raise on failure).
  • vad_chunks_from_result function — Normalize a typed VAD result into segment-local VAD chunks.

cjm_transcript_decomp_core.runs

  • DecompIndex class — Decomp-core run manifests read back: coverage chips for the batch stage
  • PropsetIndex class — Proposal-set manifests under the workspace proposals/ dir — the model's
  • SourceRunIndex class — Transcription-core run manifests — the decomp workflow's SOURCES — plus
  • TrainingRunIndex class — Training-run manifests under the workspace training-runs/ dir — the
  • group_batches function — Fold an ordered batch selection into headless hand-off groups.

cjm_transcript_decomp_core.segments

  • SegmentStack class — One lazily-opened READ-ONLY graph seat, keyed by db path.
  • aseg_index_for function — Which coarse AudioSegment a source-coordinate time falls in (pure;
  • build_display function — Interleave gap markers into the paintable entry list (pure).
  • capability_config_schema function — A capability's config_schema off its installed manifest (json read, pure).
  • find_gaps function — Uncovered timestamp spans between committed segments (pure).
  • fmt_ts function — Source-coordinate timestamp for listing rows (pure).
  • locate_span function — Resolve a source-coordinate span onto its owning coarse WAV (pure).
  • ordered_rows function — Re-impose the manifest's spine order on fetched rows (pure).
  • predicted_rows function — Synthesize segment-shaped rows for a probe's predicted skeleton (pure).
  • probe_compare function — Compare a VAD probe against the committed skeleton (pure).
  • realign_rows function — Re-run the decomp pipeline's own text fold over a PROBE skeleton (pure).
  • split_predicted function — Run the decomp pipeline's own SENTENCE-SPLIT stage over a probe skeleton
  • vad_summary function — The decomp run's recorded VAD config, one status line (pure).

cjm_transcript_decomp_core.state

  • load_state function — Read this project's persisted TUI state.
  • save_state function — Merge updates into the persisted state and write it back (best-effort:
  • state_path function — Where this project's TUI state lives.

Dependencies

Depends on: cjm-capability-primitives, cjm-context-graph-layer, cjm-context-graph-primitives, cjm-substrate, cjm-transcript-graph-schema, pyyaml Used by: cjm-transcript-decomp-qt, cjm-transcript-decomp-tui

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cjm_transcript_decomp_core-0.0.6.tar.gz (78.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cjm_transcript_decomp_core-0.0.6-py3-none-any.whl (66.0 kB view details)

Uploaded Python 3

File details

Details for the file cjm_transcript_decomp_core-0.0.6.tar.gz.

File metadata

File hashes

Hashes for cjm_transcript_decomp_core-0.0.6.tar.gz
Algorithm Hash digest
SHA256 44f8f870cc1efe6f6c0f927b989d2f8e52fc2267b692dc683e1ca5949b0c6d98
MD5 c188dd1c0ed5e7e9df011ad123bd4def
BLAKE2b-256 1452d176c93a9a14bc804fb64a22c7924e30305dfccabcd9a18aa0f33140e0a6

See more details on using hashes here.

File details

Details for the file cjm_transcript_decomp_core-0.0.6-py3-none-any.whl.

File metadata

File hashes

Hashes for cjm_transcript_decomp_core-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 333f8f5daa33ffbb352eedb68819681089f7071225f2a308f84a2d3e9ee552c6
MD5 e4cbf53347de4ad2a065064b41439a15
BLAKE2b-256 0c963d61bf867bdcf02cf0bf544d14bff8be64b66a760597a905db734e4bd67b

See more details on using hashes here.

Release history Release notifications | RSS feed

0.0.9

2 files

This release

0.0.6 This release

2 files

0.0.5

2 files

0.0.4

2 files

0.0.2

2 files

0.0.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page