Skip to main content
INFORMATIVEACTIVEDocumentation Governance

Learning Collection Points

1. Purpose​

Collection points define when LearningSamples should be generated during MPLP execution. They are triggered by specific Observability events and produce samples in defined family formats.

Key Principle: Capture learning data at well-defined moments without blocking execution.

2. Collection Point Overview​

Each collection point has:

  • Trigger Events: Which Observability events activate the collection
  • Sample Family: Which LearningSample schema to use
  • Priority: How important it is to capture this data

2.1 Priority Levels​

PriorityDescription
HIGHCritical for learning quality; always capture if learning is enabled
MEDIUMValuable but optional; capture based on configuration

3. Collection Point Matrix​

Source: schemas/v2/taxonomy/learning-taxonomy.yaml → collection_points

#Collection Point IDDescriptionTrigger EventsSample FamilyPriority
1intent_resolutionWhen user intent is successfully parsed and clarifiedIntentEvent, SAPlanEvaluatedintent_resolutionHIGH
2plan_generationWhen a Plan is generated from user requestSAPlanEvaluatedintent_resolutionHIGH
3plan_revisionWhen user modifies or rejects a PlanDeltaIntentEventdelta_impactHIGH
4impact_analysis_completionWhen impact analysis finishesImpactAnalysisEventdelta_impactMEDIUM
5execution_completionWhen a Plan step completes (success or failure)SAStepCompleted, RuntimeExecutionEventpipeline_outcomeHIGH
6pipeline_failureWhen a pipeline stage failsPipelineStageEvent(status=failed)pipeline_outcomeHIGH
7user_feedbackWhen user provides explicit approval/rejectionConfirmDecisionAddedconfirm_decisionHIGH
8graph_updateWhen PSG structure changes significantlyGraphUpdateEventgraph_evolutionMEDIUM
9map_session_completionWhen a MAP collaboration session endsMAPSessionCompletedmulti_agent_coordinationMEDIUM

4. Collection Point Details​

4.1 Intent Resolution (intent_resolution)​

Description: When user intent is successfully parsed and clarified.

Trigger Events:

  • IntentEvent — User submits a request
  • SAPlanEvaluated — Plan is generated from intent

Sample Family: intent_resolution Priority: HIGH

Data Sources:

  • User request (PII-scrubbed)
  • Dialog exchanges
  • Generated Plan structure

4.2 Plan Generation (plan_generation)​

Description: When a Plan is generated from user request.

Trigger Events:

  • SAPlanEvaluated — Plan generated and evaluated

Sample Family: intent_resolution Priority: HIGH

Data Sources:

  • Intent structure
  • Generated Plan

4.3 Plan Revision (plan_revision)​

Description: When user modifies or rejects a Plan.

Trigger Events:

  • DeltaIntentEvent — User modifies or rejects a Plan

Sample Family: delta_impact Priority: HIGH

Data Sources:

  • Original Plan
  • User feedback / rejection reason
  • Revised Plan (if created)

4.4 Impact Analysis Completion (impact_analysis_completion)​

Description: When impact analysis finishes.

Trigger Events:

  • ImpactAnalysisEvent — Impact analysis completed

Sample Family: delta_impact Priority: MEDIUM

Data Sources:

  • Delta Intent
  • Impact analysis results
  • Affected artifacts

4.5 Execution Completion (execution_completion)​

Description: When a Plan step completes (success or failure).

Trigger Events:

  • SAStepCompleted — Single-agent step completes
  • RuntimeExecutionEvent — Runtime action finishes

Sample Family: pipeline_outcome Priority: HIGH

Data Sources:

  • Step configuration
  • Execution result
  • Duration and resource usage

4.6 Pipeline Failure (pipeline_failure)​

Description: When a pipeline stage fails.

Trigger Events:

  • PipelineStageEvent(status=failed) — Pipeline stage fails

Sample Family: pipeline_outcome Priority: HIGH

Data Sources:

  • Failed stage configuration
  • Error information
  • Rollback status

4.7 User Feedback (user_feedback)​

Description: When user provides explicit approval/rejection.

Trigger Events:

  • ConfirmDecisionAdded — User approves/rejects

Sample Family: confirm_decision Priority: HIGH

Data Sources:

  • Target artifact / action
  • Decision (approve/reject/override)
  • Rating and comment (if provided)

4.8 Graph Update (graph_update)​

Description: When PSG structure changes significantly.

Trigger Events:

  • GraphUpdateEvent — PSG structure changes

Sample Family: graph_evolution Priority: MEDIUM

Data Sources:

  • Change type (node_added, edge_added, etc.)
  • Before/after node counts
  • Topology metrics

4.9 MAP Session Completion (map_session_completion)​

Description: When a MAP collaboration session ends.

Trigger Events:

  • MAPSessionCompleted — Multi-agent session ends

Sample Family: multi_agent_coordination Priority: MEDIUM

Data Sources:

  • Session configuration
  • Participant roles
  • Coordination mode
  • Outcome metrics

5. Implementation Patterns​

5.1 Inline Emission​

Samples emitted directly during execution:

Execution → [Trigger Event] → Sample Generated → Sample Store

Pros: Real-time, complete context available Cons: May impact execution performance

5.2 Post-Processing​

Samples generated from replay/analysis:

Trace Records → Batch Analysis → Sample Generation → Sample Store

Pros: No execution overhead Cons: Delayed feedback loop

Use inline emission for HIGH priority collection points, post-processing for MEDIUM priority.

6. Storage Patterns​

6.1 Storage Options​

Storage TypeUse CaseFormat
Vector DatabaseRAG-based retrievalEmbeddings
Data LakeBatch training pipelinesJSONL
Local FilesDevelopment/debuggingJSON

6.2 Non-Blocking Storage​

async function storeLearningSample(sample: LearningSample): Promise<void> {
// Fire and forget - don't block execution
setImmediate(async () => {
try {
await sampleStore.write(sample);
} catch (error) {
logger.warn('Failed to store learning sample', { error, sample_id: sample.sample_id });
}
});
}

Collection Points: 9 (as defined in learning-taxonomy.yaml) Priority Levels: HIGH (6), MEDIUM (3) Source of Truth: schemas/v2/taxonomy/learning-taxonomy.yaml