changedInput schema / properties / evidence_items / items / properties / collection_context / description
Previous value: -"Source-grounded collection declarations, not source authentication. Unknown facts must remain missing; do not invent values to pass. Field decision use requires source modality, collector relationship, interview mode, source-document identity and an explicit parent-source list. Individual face-to-face/telephone collection also requires staffing, duration, total available minutes per collector and sample size. Independent verification labels require a separate reviewer relationship; persisted review is still checked separately."New value: +"Source-grounded collection declarations, not source authentication. Unknown facts must remain missing; do not invent values to pass. Field decision use requires source modality, collector relationship, interview mode, source-document identity and an explicit parent-source list. Collector-administered modes require staffing, duration, available minutes per collector and sample size. Group modes additionally require session_count, participants_per_session, session_duration_minutes and collectors_per_session, never inferred from an individual interview duration. Online, observation and administrative_record modes require collection_administration; self-administered online and automated observation/record sources do not need invented collector capacity. Explicit public/documentary origins are not caller fieldwork solely because evidence_type is survey; conflicting explicit field origins still block. Independent verification labels require a separate reviewer relationship; persisted review is still checked separately."
addedInput schema / properties / evidence_items / items / properties / collection_context / properties / collection_administration
Added value: +{
+ "description": "Source-grounded administration, required for online, observation and administrative_record modes. self_administered is supported for online; automated for observation or administrative_record. Face-to-face, telephone and group modes are collector-administered and cannot opt out.",
+ "enum": [
+ "collector_administered",
+ "self_administered",
+ "automated",
+ "unknown"
+ ],
+ "type": "string"
+}
addedInput schema / properties / evidence_items / items / properties / collection_context / properties / collectors_per_session
Added value: +{
+ "description": "Collectors required concurrently for each group session, drawn from enumerator_count. No default facilitator count is assumed.",
+ "maximum": 9007199254740991,
+ "minimum": 1,
+ "type": "integer"
+}
addedInput schema / properties / evidence_items / items / properties / collection_context / properties / interview_duration_minutes / description
Added value: +"Collector time per individual interview or per observed/processed sample record for collector-administered non-group modes."
addedInput schema / properties / evidence_items / items / properties / collection_context / properties / participants_per_session
Added value: +{
+ "description": "Source-grounded maximum participants in any session. Sample size cannot exceed session_count times this bound; no default group size is assumed.",
+ "maximum": 9007199254740991,
+ "minimum": 1,
+ "type": "integer"
+}
addedInput schema / properties / evidence_items / items / properties / collection_context / properties / session_count
Added value: +{
+ "description": "Actual number of group sessions in the source records.",
+ "maximum": 9007199254740991,
+ "minimum": 1,
+ "type": "integer"
+}
addedInput schema / properties / evidence_items / items / properties / collection_context / properties / session_duration_minutes
Added value: +{
+ "description": "Source-recorded duration of each group session in this declaration, not an alias for individual interview duration.",
+ "exclusiveMinimum": 0,
+ "type": "number"
+}
addedInput schema / properties / evidence_items / items / properties / collection_context / properties / source_extraction
Added value: +{
+ "additionalProperties": false,
+ "description": "Optional caller-supplied second reading of source facts for conflict comparison only. Not independently authenticated; cannot supply missing primary declarations or establish source authenticity.",
+ "properties": {
+ "fields": {
+ "additionalProperties": false,
+ "properties": {
+ "collection_administration": {
+ "description": "Source-grounded administration, required for online, observation and administrative_record modes. self_administered is supported for online; automated for observation or administrative_record. Face-to-face, telephone and group modes are collector-administered and cannot opt out.",
+ "enum": [
+ "collector_administered",
+ "self_administered",
+ "automated",
+ "unknown"
+ ],
+ "type": "string"
+ },
+ "collector_relationship": {
+ "enum": [
+ "independent",
+ "employee",
+ "company_staff",
+ "internal",
+ "contractor",
+ "partner",
+ "self_collected",
+ "unknown"
+ ],
+ "type": "string"
+ },
+ "collectors_per_session": {
+ "description": "Collectors required concurrently for each group session, drawn from enumerator_count. No default facilitator count is assumed.",
+ "maximum": 9007199254740991,
+ "minimum": 1,
+ "type": "integer"
+ },
+ "enumerator_count": {
+ "maximum": 9007199254740991,
+ "minimum": 1,
+ "type": "integer"
+ },
+ "fieldwork_window_minutes": {
+ "description": "Total available collection minutes per collector across the entire period, not daily or team-person-minutes.",
+ "exclusiveMinimum": 0,
+ "type": "number"
+ },
+ "interview_duration_minutes": {
+ "description": "Collector time per individual interview or per observed/processed sample record for collector-administered non-group modes.",
+ "exclusiveMinimum": 0,
+ "type": "number"
+ },
+ "interview_mode": {
+ "enum": [
+ "face_to_face",
+ "telephone",
+ "online",
+ "focus_group",
+ "group_interview",
+ "observation",
+ "administrative_record",
+ "unknown"
+ ],
+ "type": "string"
+ },
+ "participants_per_session": {
+ "description": "Source-grounded maximum participants in any session. Sample size cannot exceed session_count times this bound; no default group size is assumed.",
+ "maximum": 9007199254740991,
+ "minimum": 1,
+ "type": "integer"
+ },
+ "reviewer_relationship": {
+ "enum": [
+ "independent",
+ "employee",
+ "company_staff",
+ "internal",
+ "contractor",
+ "partner",
+ "self_collected",
+ "unknown"
+ ],
+ "type": "string"
+ },
+ "sample_size": {
+ "maximum": 9007199254740991,
+ "minimum": 1,
+ "type": "integer"
+ },
+ "session_count": {
+ "description": "Actual number of group sessions in the source records.",
+ "maximum": 9007199254740991,
+ "minimum": 1,
+ "type": "integer"
+ },
+ "session_duration_minutes": {
+ "description": "Source-recorded duration of each group session in this declaration, not an alias for individual interview duration.",
+ "exclusiveMinimum": 0,
+ "type": "number"
+ },
+ "source_modality": {
+ "enum": [
+ "direct_observation",
+ "documentary",
+ "secondary_summary",
+ "unknown"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "source_ref": {
+ "maxLength": 512,
+ "minLength": 1,
+ "type": "string"
+ }
+ },
+ "required": [
+ "source_ref",
+ "fields"
+ ],
+ "type": "object"
+}
changedInput schema / properties / evidence_items / items / properties / evidence_origin / description
Previous value: -"Alias for source_class. Source-class precedence: source_class, evidence_origin, source_family, then evidence_type."New value: +"Declared source origin. Explicit public/documentary sources are not caller fieldwork solely because evidence_type is survey. Conflicting explicit field origins still block; never relabel to pass."
changedInput schema / properties / evidence_items / items / properties / sample_size / description
Previous value: -"Actual sample size; required for individual face-to-face/telephone interviews, not invented for documentary evidence."New value: +"Actual sample size; required for collector-administered modes, including groups. Group sample cannot exceed session_count times participants_per_session. All supplied aliases must agree; never invent a sample for documentary or self-administered evidence."
changedInput schema / properties / evidence_items / items / properties / source_family / description
Previous value: -"Compatibility origin label; source_class takes precedence."New value: +"Compatibility origin label. Explicit field/public conflicts, including provenance_ledger.source_family, require reconciliation; one label cannot erase another."
changedInput schema / properties / evidence_pack / items / properties / collection_context / description
Previous value: -"Source-grounded collection declarations, not source authentication. Unknown facts must remain missing; do not invent values to pass. Field decision use requires source modality, collector relationship, interview mode, source-document identity and an explicit parent-source list. Individual face-to-face/telephone collection also requires staffing, duration, total available minutes per collector and sample size. Independent verification labels require a separate reviewer relationship; persisted review is still checked separately."New value: +"Source-grounded collection declarations, not source authentication. Unknown facts must remain missing; do not invent values to pass. Field decision use requires source modality, collector relationship, interview mode, source-document identity and an explicit parent-source list. Collector-administered modes require staffing, duration, available minutes per collector and sample size. Group modes additionally require session_count, participants_per_session, session_duration_minutes and collectors_per_session, never inferred from an individual interview duration. Online, observation and administrative_record modes require collection_administration; self-administered online and automated observation/record sources do not need invented collector capacity. Explicit public/documentary origins are not caller fieldwork solely because evidence_type is survey; conflicting explicit field origins still block. Independent verification labels require a separate reviewer relationship; persisted review is still checked separately."
addedInput schema / properties / evidence_pack / items / properties / collection_context / properties / collection_administration
Added value: +{
+ "description": "Source-grounded administration, required for online, observation and administrative_record modes. self_administered is supported for online; automated for observation or administrative_record. Face-to-face, telephone and group modes are collector-administered and cannot opt out.",
+ "enum": [
+ "collector_administered",
+ "self_administered",
+ "automated",
+ "unknown"
+ ],
+ "type": "string"
+}
addedInput schema / properties / evidence_pack / items / properties / collection_context / properties / collectors_per_session
Added value: +{
+ "description": "Collectors required concurrently for each group session, drawn from enumerator_count. No default facilitator count is assumed.",
+ "maximum": 9007199254740991,
+ "minimum": 1,
+ "type": "integer"
+}
addedInput schema / properties / evidence_pack / items / properties / collection_context / properties / interview_duration_minutes / description
Added value: +"Collector time per individual interview or per observed/processed sample record for collector-administered non-group modes."
addedInput schema / properties / evidence_pack / items / properties / collection_context / properties / participants_per_session
Added value: +{
+ "description": "Source-grounded maximum participants in any session. Sample size cannot exceed session_count times this bound; no default group size is assumed.",
+ "maximum": 9007199254740991,
+ "minimum": 1,
+ "type": "integer"
+}
addedInput schema / properties / evidence_pack / items / properties / collection_context / properties / session_count
Added value: +{
+ "description": "Actual number of group sessions in the source records.",
+ "maximum": 9007199254740991,
+ "minimum": 1,
+ "type": "integer"
+}
addedInput schema / properties / evidence_pack / items / properties / collection_context / properties / session_duration_minutes
Added value: +{
+ "description": "Source-recorded duration of each group session in this declaration, not an alias for individual interview duration.",
+ "exclusiveMinimum": 0,
+ "type": "number"
+}
addedInput schema / properties / evidence_pack / items / properties / collection_context / properties / source_extraction
Added value: +{
+ "additionalProperties": false,
+ "description": "Optional caller-supplied second reading of source facts for conflict comparison only. Not independently authenticated; cannot supply missing primary declarations or establish source authenticity.",
+ "properties": {
+ "fields": {
+ "additionalProperties": false,
+ "properties": {
+ "collection_administration": {
+ "description": "Source-grounded administration, required for online, observation and administrative_record modes. self_administered is supported for online; automated for observation or administrative_record. Face-to-face, telephone and group modes are collector-administered and cannot opt out.",
+ "enum": [
+ "collector_administered",
+ "self_administered",
+ "automated",
+ "unknown"
+ ],
+ "type": "string"
+ },
+ "collector_relationship": {
+ "enum": [
+ "independent",
+ "employee",
+ "company_staff",
+ "internal",
+ "contractor",
+ "partner",
+ "self_collected",
+ "unknown"
+ ],
+ "type": "string"
+ },
+ "collectors_per_session": {
+ "description": "Collectors required concurrently for each group session, drawn from enumerator_count. No default facilitator count is assumed.",
+ "maximum": 9007199254740991,
+ "minimum": 1,
+ "type": "integer"
+ },
+ "enumerator_count": {
+ "maximum": 9007199254740991,
+ "minimum": 1,
+ "type": "integer"
+ },
+ "fieldwork_window_minutes": {
+ "description": "Total available collection minutes per collector across the entire period, not daily or team-person-minutes.",
+ "exclusiveMinimum": 0,
+ "type": "number"
+ },
+ "interview_duration_minutes": {
+ "description": "Collector time per individual interview or per observed/processed sample record for collector-administered non-group modes.",
+ "exclusiveMinimum": 0,
+ "type": "number"
+ },
+ "interview_mode": {
+ "enum": [
+ "face_to_face",
+ "telephone",
+ "online",
+ "focus_group",
+ "group_interview",
+ "observation",
+ "administrative_record",
+ "unknown"
+ ],
+ "type": "string"
+ },
+ "participants_per_session": {
+ "description": "Source-grounded maximum participants in any session. Sample size cannot exceed session_count times this bound; no default group size is assumed.",
+ "maximum": 9007199254740991,
+ "minimum": 1,
+ "type": "integer"
+ },
+ "reviewer_relationship": {
+ "enum": [
+ "independent",
+ "employee",
+ "company_staff",
+ "internal",
+ "contractor",
+ "partner",
+ "self_collected",
+ "unknown"
+ ],
+ "type": "string"
+ },
+ "sample_size": {
+ "maximum": 9007199254740991,
+ "minimum": 1,
+ "type": "integer"
+ },
+ "session_count": {
+ "description": "Actual number of group sessions in the source records.",
+ "maximum": 9007199254740991,
+ "minimum": 1,
+ "type": "integer"
+ },
+ "session_duration_minutes": {
+ "description": "Source-recorded duration of each group session in this declaration, not an alias for individual interview duration.",
+ "exclusiveMinimum": 0,
+ "type": "number"
+ },
+ "source_modality": {
+ "enum": [
+ "direct_observation",
+ "documentary",
+ "secondary_summary",
+ "unknown"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "source_ref": {
+ "maxLength": 512,
+ "minLength": 1,
+ "type": "string"
+ }
+ },
+ "required": [
+ "source_ref",
+ "fields"
+ ],
+ "type": "object"
+}
changedInput schema / properties / evidence_pack / items / properties / evidence_origin / description
Previous value: -"Alias for source_class. Source-class precedence: source_class, evidence_origin, source_family, then evidence_type."New value: +"Declared source origin. Explicit public/documentary sources are not caller fieldwork solely because evidence_type is survey. Conflicting explicit field origins still block; never relabel to pass."
changedInput schema / properties / evidence_pack / items / properties / sample_size / description
Previous value: -"Actual sample size; required for individual face-to-face/telephone interviews, not invented for documentary evidence."New value: +"Actual sample size; required for collector-administered modes, including groups. Group sample cannot exceed session_count times participants_per_session. All supplied aliases must agree; never invent a sample for documentary or self-administered evidence."
changedInput schema / properties / evidence_pack / items / properties / source_family / description
Previous value: -"Compatibility origin label; source_class takes precedence."New value: +"Compatibility origin label. Explicit field/public conflicts, including provenance_ledger.source_family, require reconciliation; one label cannot erase another."
changedInput schema / properties / market_scope / description
Previous value: -"Declared decision geography, not source geography. Supply district/districts or decision_scope_level country/subnational; subnational requires locality. No district is inferred from claim prose."New value: +"Declared decision geography, not source geography. Supply district/districts or decision_scope_level country/subnational; subnational requires locality. A bounded Uganda target-name cross-check can require scope review, never insert districts or establish field coverage."
addedOutput schema / properties / claim_review / properties / issues / items / properties / allowed_values
Added value: +{
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+}
changedOutput schema / properties / claim_review / properties / issues / items / properties / code / description
Previous value: -"Stable correction code."New value: +"Codes: FIELD_PROVENANCE_REQUIRED, FIELD_PROVENANCE_CONFLICT, FIELDWORK_CAPACITY_CONTRADICTION, SOURCE_INDEPENDENCE_CONTRADICTION, SOURCE_VERIFICATION_CONTRADICTION, FIELD_SOURCE_MODALITY_CONFLICT, DECISION_GEOGRAPHY_SCOPE_REQUIRED, DECISION_SCOPE_REQUIRED, DECISION_SCOPE_REVIEW_REQUIRED, DECISION_SCOPE_CROSS_CHECK_LIMIT, SOURCE_EXTRACTION_INVALID, SOURCE_EXTRACTION_REFERENCE_CONFLICT, ADVERSE_SOURCE_REVIEW_REQUIRED, INVALID_CLAIM_INPUT, OUTPUT_RECEIPT_NOT_REQUEST_AUTHORITY, ARTIFACT_ROLE_NOT_SOURCE_EVIDENCE. Correct indexed evidence_input_feedback/evidence_fit paths and missing_fields against originals. INVALID_CLAIM_INPUT is HTTP 422 on claim-consuming REST routes; correct root or decision_result claim/citation paths in details/validation_errors without deleting adverse evidence. Never invent or relabel facts. Explicit adverse states need review, not approved support. These checks do not authenticate sources or authorize action. Recovery: /docs/mcp-integration.md."
addedOutput schema / properties / claim_review / properties / linkage_gaps / items / properties / allowed_values
Added value: +{
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+}
changedOutput schema / properties / claim_review / properties / linkage_gaps / items / properties / code / description
Previous value: -"Stable correction code."New value: +"Codes: FIELD_PROVENANCE_REQUIRED, FIELD_PROVENANCE_CONFLICT, FIELDWORK_CAPACITY_CONTRADICTION, SOURCE_INDEPENDENCE_CONTRADICTION, SOURCE_VERIFICATION_CONTRADICTION, FIELD_SOURCE_MODALITY_CONFLICT, DECISION_GEOGRAPHY_SCOPE_REQUIRED, DECISION_SCOPE_REQUIRED, DECISION_SCOPE_REVIEW_REQUIRED, DECISION_SCOPE_CROSS_CHECK_LIMIT, SOURCE_EXTRACTION_INVALID, SOURCE_EXTRACTION_REFERENCE_CONFLICT, ADVERSE_SOURCE_REVIEW_REQUIRED, INVALID_CLAIM_INPUT, OUTPUT_RECEIPT_NOT_REQUEST_AUTHORITY, ARTIFACT_ROLE_NOT_SOURCE_EVIDENCE. Correct indexed evidence_input_feedback/evidence_fit paths and missing_fields against originals. INVALID_CLAIM_INPUT is HTTP 422 on claim-consuming REST routes; correct root or decision_result claim/citation paths in details/validation_errors without deleting adverse evidence. Never invent or relabel facts. Explicit adverse states need review, not approved support. These checks do not authenticate sources or authorize action. Recovery: /docs/mcp-integration.md."
changedOutput schema / properties / code / description
Previous value: -"OUTPUT_RECEIPT_NOT_REQUEST_AUTHORITY"New value: +"Codes: FIELD_PROVENANCE_REQUIRED, FIELD_PROVENANCE_CONFLICT, FIELDWORK_CAPACITY_CONTRADICTION, SOURCE_INDEPENDENCE_CONTRADICTION, SOURCE_VERIFICATION_CONTRADICTION, FIELD_SOURCE_MODALITY_CONFLICT, DECISION_GEOGRAPHY_SCOPE_REQUIRED, DECISION_SCOPE_REQUIRED, DECISION_SCOPE_REVIEW_REQUIRED, DECISION_SCOPE_CROSS_CHECK_LIMIT, SOURCE_EXTRACTION_INVALID, SOURCE_EXTRACTION_REFERENCE_CONFLICT, ADVERSE_SOURCE_REVIEW_REQUIRED, INVALID_CLAIM_INPUT, OUTPUT_RECEIPT_NOT_REQUEST_AUTHORITY, ARTIFACT_ROLE_NOT_SOURCE_EVIDENCE. Correct indexed evidence_input_feedback/evidence_fit paths and missing_fields against originals. INVALID_CLAIM_INPUT is HTTP 422 on claim-consuming REST routes; correct root or decision_result claim/citation paths in details/validation_errors without deleting adverse evidence. Never invent or relabel facts. Explicit adverse states need review, not approved support. These checks do not authenticate sources or authorize action. Recovery: /docs/mcp-integration.md."
addedOutput schema / properties / evidence_fit / properties / issues / items / properties / allowed_values
Added value: +{
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+}
changedOutput schema / properties / evidence_fit / properties / issues / items / properties / code / description
Previous value: -"Stable correction code."New value: +"Codes: FIELD_PROVENANCE_REQUIRED, FIELD_PROVENANCE_CONFLICT, FIELDWORK_CAPACITY_CONTRADICTION, SOURCE_INDEPENDENCE_CONTRADICTION, SOURCE_VERIFICATION_CONTRADICTION, FIELD_SOURCE_MODALITY_CONFLICT, DECISION_GEOGRAPHY_SCOPE_REQUIRED, DECISION_SCOPE_REQUIRED, DECISION_SCOPE_REVIEW_REQUIRED, DECISION_SCOPE_CROSS_CHECK_LIMIT, SOURCE_EXTRACTION_INVALID, SOURCE_EXTRACTION_REFERENCE_CONFLICT, ADVERSE_SOURCE_REVIEW_REQUIRED, INVALID_CLAIM_INPUT, OUTPUT_RECEIPT_NOT_REQUEST_AUTHORITY, ARTIFACT_ROLE_NOT_SOURCE_EVIDENCE. Correct indexed evidence_input_feedback/evidence_fit paths and missing_fields against originals. INVALID_CLAIM_INPUT is HTTP 422 on claim-consuming REST routes; correct root or decision_result claim/citation paths in details/validation_errors without deleting adverse evidence. Never invent or relabel facts. Explicit adverse states need review, not approved support. These checks do not authenticate sources or authorize action. Recovery: /docs/mcp-integration.md."
addedOutput schema / properties / evidence_input_feedback / properties / issues / items / properties / allowed_values
Added value: +{
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+}
changedOutput schema / properties / evidence_input_feedback / properties / issues / items / properties / code / description
Previous value: -"Stable correction code."New value: +"Codes: FIELD_PROVENANCE_REQUIRED, FIELD_PROVENANCE_CONFLICT, FIELDWORK_CAPACITY_CONTRADICTION, SOURCE_INDEPENDENCE_CONTRADICTION, SOURCE_VERIFICATION_CONTRADICTION, FIELD_SOURCE_MODALITY_CONFLICT, DECISION_GEOGRAPHY_SCOPE_REQUIRED, DECISION_SCOPE_REQUIRED, DECISION_SCOPE_REVIEW_REQUIRED, DECISION_SCOPE_CROSS_CHECK_LIMIT, SOURCE_EXTRACTION_INVALID, SOURCE_EXTRACTION_REFERENCE_CONFLICT, ADVERSE_SOURCE_REVIEW_REQUIRED, INVALID_CLAIM_INPUT, OUTPUT_RECEIPT_NOT_REQUEST_AUTHORITY, ARTIFACT_ROLE_NOT_SOURCE_EVIDENCE. Correct indexed evidence_input_feedback/evidence_fit paths and missing_fields against originals. INVALID_CLAIM_INPUT is HTTP 422 on claim-consuming REST routes; correct root or decision_result claim/citation paths in details/validation_errors without deleting adverse evidence. Never invent or relabel facts. Explicit adverse states need review, not approved support. These checks do not authenticate sources or authorize action. Recovery: /docs/mcp-integration.md."