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.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.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.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.

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.
  • map_fa_words_to_text function — Map forced-alignment words back to character spans in the original text.
  • 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.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.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).
  • 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.
  • 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.

Dependencies

Depends on: cjm-capability-primitives, cjm-context-graph-layer, cjm-context-graph-primitives, cjm-substrate, cjm-transcript-graph-schema Used by: 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.5.tar.gz (42.9 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.5-py3-none-any.whl (37.7 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for cjm_transcript_decomp_core-0.0.5.tar.gz
Algorithm Hash digest
SHA256 fdf354f73233dd60a0ed6a9309e78234e8b5d77f8ce2098acb8802930e5cf2c1
MD5 5f333efac2d6c3c6bc61c84fb492c313
BLAKE2b-256 e565502867bf083bff81f850b7ed0c69f478c1460a7c767992c34b0001e3d3f3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cjm_transcript_decomp_core-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 32e8ca71548a5943be98b23ca49ca0f3c20debaa1c6f83e59b1996ce73cb9e6f
MD5 8079098a802af87fb568e59f4b775c35
BLAKE2b-256 9b33ee8a1ba3268f19b398d1735d8ed8eae2ea8b0ac99847e86bed7528653b6c

See more details on using hashes here.

Release history Release notifications | RSS feed

0.0.9

2 files

0.0.6

2 files

This release

0.0.5 This release

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