Handbook
Task catalog
At a glance
Updated
- Dispatch:
TASK_REGISTRY_V1mapstask_id→ implementation; unknown IDs raiseUnknownContractErrorbefore any transport runs. - Specs: align onboarding with ContractSpec, Schemas, and Priority contracts.
- Boundary: this library owns contracts + parsing surfaces; hosts own gateways and custody — see Runtime boundary.
Each task lives under src/forge_lcdl/contracts/<task_id>/v1/ with contract.md and contract.json. Use this page as a human index; the handbook build still emits one HTML page per contract for deep links.
Task catalog handbook bridge
How this human index links grouped task lists to governed per-contract handbook pages.
- Human hub (task-catalog.md)Developers browse grouped tables and contract deep links on this page.
- TASK_REGISTRY_V1 implementationsDispatch maps each task_id to its registered callable implementation.
- generated per-contract handbook HTMLThe handbook build emits one HTML page per contract.md spec.
Human hub (task-catalog.md)
|
v
TASK_REGISTRY_V1 implementations
|
v
generated per-contract handbook HTML
|
(sidebar suppressed from primary rail)Registry and implementations
TASK_REGISTRY_V1(src/forge_lcdl/tasks/catalog_v1.py) mapstask_id→ version → callable forrunner.run_task/TaskRunner. Unknown IDs raiseUnknownContractErrorat dispatch time.- Implementations live beside registry modules under
src/forge_lcdl/tasks/(Playwright, games, RAG, generic catalog builders). - Contracts are Markdown + JSON Schema sidecars under
src/forge_lcdl/contracts/**; generic catalog tasks share the same harness—domainpw_*/ game tasks add richer payloads but follow the sameOk/Errenvelope. - Validation: outputs are parsed JSON checked against
contract.json; failures surface asErrwith structured diagnostics (see Tutorial 101 — debug). - Adding a task: add
contracts/<task_id>/v1/{contract.md,contract.json}, register inTASK_REGISTRY_V1(or lazy registry helpers), add tests withfake_chat, then refresh this catalog table.
Representative generic catalog tasks
| task_id | Role |
|---|---|
extract_schema_from_text |
Pull structured schema drafts from prose |
llm_boolean_gate |
Binary gate |
llm_enum_route |
Single-label routing |
llm_multi_label |
Multi-label scoring |
word_problem_to_calc_plan |
Word problem planning |
summarize_sections_schema |
Section summaries with schema |
timeline_extract |
Timeline extraction |
contradiction_scan |
Cross-passage contradiction detection |
decompose_problem |
Decomposition units |
plan_decision_pack |
DecisionPack graph sketch |
Path template: ../../src/forge_lcdl/contracts/<task_id>/v1/contract.md (replace <task_id>).
Generic analysis and planning
| task_id | Notes |
|---|---|
| analyze_strategic_form | Strategic-form analysis |
| automation_situation_arbitrate | Governed LLM decision break-in (tri-state, fallback-safe) |
| contradiction_scan | Cross-text contradictions |
| decompose_problem | Problem decomposition |
| extract_quantities_and_units | Quantities / units |
| extract_schema_from_text | Schema extraction |
| generate_script_prompt | Prompt generation helper |
| llm_boolean_gate | Yes/no gate |
| llm_enum_route | Single-label route |
| llm_multi_label | Multi-label scores |
| mechanism_compare_prose | Mechanism comparison |
| plan_decision_pack | DecisionPack graph draft |
| summarize_sections_schema | Section summaries |
| timeline_extract | Timeline extraction |
| word_problem_to_calc_plan | Word problem → calc plan |
RAG and evidence
| task_id | Notes |
|---|---|
| answer_from_evidence | Answering with citations |
| inject_citations | Citation injection |
| rag_enough_context_gate | Context sufficiency gate |
| rag_query_plan | RAG query planning |
Playwright and page intelligence (pw_* and probes)
| task_id | Notes |
|---|---|
| interaction_probe | Interaction probe |
| page_mechanics | Page mechanics artifact |
| page_probe | Page probe |
| pw_chunk_classify | Chunk classification |
| pw_extractor_synthesize_exemplar | Exemplar synthesis |
| pw_extractor_synthesize_probe | Extraction probe synthesis |
| pw_grading_signal_infer | Grading signal |
| pw_incremental_diagnose | Incremental diagnosis |
| pw_mechanics_repair | Mechanics repair |
| pw_network_api_route_infer | API route inference |
| pw_page_kind_route | Page kind routing |
| pw_quiz_mechanics_discover | Quiz mechanics discovery |
| pw_selector_harden | Selector hardening |
| pw_static_mcq_mechanics_discover | Static MCQ mechanics |
Games
| task_id | Notes |
|---|---|
| board_game_choose_move | Choose a legal move |
| board_game_coach_notes | Coach notes |
| board_game_rank_moves | Rank moves |
| game_move_explain | Explain move |
| game_move_parse | Parse move |
| game_move_rank | Rank move options |
Validation and misc
| task_id | Notes |
|---|---|
| validation_failure | Validation failure artifact |
See also
- ContractSpec, Schemas
Registry implementation(source)