Files
GEWU/schema/v1/records/ProposalRevision.schema.json
vasily 78033bb830
CI / quality (push) Canceled after 0s
feat: online verification, node removals, and knowledge browser
Adds claim-bound online evidence records and citation verification scripts,
node removal transport/adapter, retrieval benchmark and owner-review tooling,
GraphCanvas/SourceDetail knowledge browser UI, and the ingest handoff helper.
Bumps the agents/gewu pack to the online-verification branch.
2026-10-16 20:02:29 +08:00

1282 lines
29 KiB
JSON

{
"$defs": {
"Claim": {
"additionalProperties": false,
"properties": {
"assessment": {
"$ref": "#/$defs/SupportAssessment"
},
"claim_id": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"title": "Claim Id",
"type": "string"
},
"evidence": {
"items": {
"$ref": "#/$defs/EvidenceReference"
},
"maxItems": 20,
"minItems": 1,
"title": "Evidence",
"type": "array"
},
"evidence_type": {
"enum": [
"measured",
"reported",
"opinion",
"vendor_marketing"
],
"title": "Evidence Type",
"type": "string"
},
"online_evidence": {
"default": [],
"items": {
"$ref": "#/$defs/OnlineEvidence"
},
"maxItems": 20,
"title": "Online Evidence",
"type": "array"
},
"schema_version": {
"const": 1,
"default": 1,
"title": "Schema Version",
"type": "integer"
},
"text": {
"maxLength": 4000,
"minLength": 1,
"title": "Text",
"type": "string"
}
},
"required": [
"claim_id",
"text",
"evidence_type",
"evidence",
"assessment"
],
"title": "Claim",
"type": "object"
},
"Confidence": {
"enum": [
"low",
"medium",
"high"
],
"title": "Confidence",
"type": "string"
},
"EdgeEndpoint": {
"additionalProperties": false,
"properties": {
"id": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"title": "Id",
"type": "string"
},
"kind": {
"enum": [
"node",
"source",
"project"
],
"title": "Kind",
"type": "string"
},
"schema_version": {
"const": 1,
"default": 1,
"title": "Schema Version",
"type": "integer"
}
},
"required": [
"kind",
"id"
],
"title": "EdgeEndpoint",
"type": "object"
},
"EvidenceReference": {
"additionalProperties": false,
"properties": {
"assertion_digest": {
"pattern": "^[a-f0-9]{64}$",
"title": "Assertion Digest",
"type": "string"
},
"assertion_path": {
"maxLength": 256,
"minLength": 1,
"title": "Assertion Path",
"type": "string"
},
"extraction_id": {
"pattern": "^[a-f0-9]{64}$",
"title": "Extraction Id",
"type": "string"
},
"locator": {
"$ref": "#/$defs/Locator"
},
"normalization_profile": {
"const": "unicode-nfc-lf-v1",
"title": "Normalization Profile",
"type": "string"
},
"quote": {
"maxLength": 8000,
"minLength": 1,
"title": "Quote",
"type": "string"
},
"schema_version": {
"const": 1,
"default": 1,
"title": "Schema Version",
"type": "integer"
},
"source_revision_id": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"title": "Source Revision Id",
"type": "string"
}
},
"required": [
"source_revision_id",
"extraction_id",
"assertion_path",
"assertion_digest",
"quote",
"locator",
"normalization_profile"
],
"title": "EvidenceReference",
"type": "object"
},
"KnowledgeNode": {
"additionalProperties": false,
"properties": {
"agent_id": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"title": "Agent Id",
"type": "string"
},
"aliases": {
"default": [],
"items": {
"type": "string"
},
"maxItems": 100,
"title": "Aliases",
"type": "array"
},
"as_of": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "As Of"
},
"assumptions": {
"default": [],
"items": {
"$ref": "#/$defs/Claim"
},
"maxItems": 100,
"title": "Assumptions",
"type": "array"
},
"audience": {
"default": [],
"items": {
"type": "string"
},
"maxItems": 20,
"title": "Audience",
"type": "array"
},
"claim_support": {
"enum": [
"pending",
"supported",
"unsupported"
],
"title": "Claim Support",
"type": "string"
},
"claims": {
"items": {
"$ref": "#/$defs/Claim"
},
"maxItems": 100,
"minItems": 1,
"title": "Claims",
"type": "array"
},
"confidence": {
"$ref": "#/$defs/Confidence"
},
"created": {
"format": "date-time",
"title": "Created",
"type": "string"
},
"demographic": {
"anyOf": [
{
"maxLength": 1000,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Demographic"
},
"domain": {
"default": [],
"items": {
"type": "string"
},
"maxItems": 20,
"title": "Domain",
"type": "array"
},
"lens_fit": {
"maxProperties": 50,
"patternProperties": {
"^[a-zA-Z0-9][a-zA-Z0-9._:-]*$": {
"$ref": "#/$defs/LensFit"
}
},
"propertyNames": {
"maxLength": 128,
"minLength": 1
},
"title": "Lens Fit",
"type": "object"
},
"lifecycle": {
"$ref": "#/$defs/Lifecycle"
},
"limitations": {
"default": [],
"items": {
"$ref": "#/$defs/Claim"
},
"maxItems": 100,
"title": "Limitations",
"type": "array"
},
"merged_from": {
"default": [],
"items": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"type": "string"
},
"maxItems": 100,
"title": "Merged From",
"type": "array"
},
"model_id": {
"maxLength": 200,
"minLength": 1,
"title": "Model Id",
"type": "string"
},
"node_id": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"title": "Node Id",
"type": "string"
},
"node_type": {
"$ref": "#/$defs/NodeType"
},
"project_id": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"title": "Project Id",
"type": "string"
},
"reporting_year": {
"anyOf": [
{
"maximum": 9999,
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Reporting Year"
},
"review_state": {
"$ref": "#/$defs/ReviewState"
},
"run_id": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"title": "Run Id",
"type": "string"
},
"sample_size": {
"anyOf": [
{
"minimum": 0,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Sample Size"
},
"schema_version": {
"const": 1,
"default": 1,
"title": "Schema Version",
"type": "integer"
},
"stale_after": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Stale After"
},
"summary": {
"maxLength": 8000,
"minLength": 1,
"title": "Summary",
"type": "string"
},
"superseded_by": {
"default": [],
"items": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"type": "string"
},
"title": "Superseded By",
"type": "array"
},
"supersedes": {
"default": [],
"items": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"type": "string"
},
"title": "Supersedes",
"type": "array"
},
"tags": {
"default": [],
"items": {
"type": "string"
},
"maxItems": 100,
"title": "Tags",
"type": "array"
},
"title": {
"maxLength": 300,
"minLength": 1,
"title": "Title",
"type": "string"
},
"unit": {
"anyOf": [
{
"maxLength": 100,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Unit"
},
"updated": {
"format": "date-time",
"title": "Updated",
"type": "string"
},
"use_for": {
"default": [],
"items": {
"type": "string"
},
"maxItems": 20,
"title": "Use For",
"type": "array"
},
"value": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Value"
}
},
"required": [
"node_id",
"project_id",
"node_type",
"title",
"summary",
"created",
"updated",
"review_state",
"lifecycle",
"confidence",
"claim_support",
"run_id",
"agent_id",
"model_id",
"claims"
],
"title": "KnowledgeNode",
"type": "object"
},
"LensFit": {
"additionalProperties": false,
"properties": {
"horizon": {
"enum": [
"H1",
"H2",
"H3"
],
"title": "Horizon",
"type": "string"
},
"key_question": {
"anyOf": [
{
"maxLength": 1000,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Key Question"
},
"reason": {
"maxLength": 1000,
"minLength": 1,
"title": "Reason",
"type": "string"
},
"schema_version": {
"const": 1,
"default": 1,
"title": "Schema Version",
"type": "integer"
},
"score": {
"maximum": 1,
"minimum": 0,
"title": "Score",
"type": "number"
}
},
"required": [
"score",
"horizon",
"reason"
],
"title": "LensFit",
"type": "object"
},
"Lifecycle": {
"enum": [
"active",
"superseded"
],
"title": "Lifecycle",
"type": "string"
},
"Locator": {
"additionalProperties": false,
"properties": {
"block_id": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"title": "Block Id",
"type": "string"
},
"end": {
"exclusiveMinimum": 0,
"title": "End",
"type": "integer"
},
"kind": {
"enum": [
"text_span",
"pdf_page_span",
"transcript_timestamp_span"
],
"title": "Kind",
"type": "string"
},
"page": {
"anyOf": [
{
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Page"
},
"schema_version": {
"const": 1,
"default": 1,
"title": "Schema Version",
"type": "integer"
},
"start": {
"minimum": 0,
"title": "Start",
"type": "integer"
},
"time_end_ms": {
"anyOf": [
{
"minimum": 0,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Time End Ms"
},
"time_start_ms": {
"anyOf": [
{
"minimum": 0,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Time Start Ms"
}
},
"required": [
"kind",
"block_id",
"start",
"end"
],
"title": "Locator",
"type": "object"
},
"NodeType": {
"enum": [
"finding",
"problem",
"technique",
"case",
"entity",
"event",
"concept",
"datapoint",
"synthesis"
],
"title": "NodeType",
"type": "string"
},
"OnlineEvidence": {
"additionalProperties": false,
"description": "A short online excerpt with its relationship to a claim and verification URL.",
"properties": {
"context": {
"maxLength": 4000,
"minLength": 1,
"title": "Context",
"type": "string"
},
"relation": {
"enum": [
"supports",
"contradicts",
"context",
"inconclusive"
],
"title": "Relation",
"type": "string"
},
"schema_version": {
"const": 1,
"default": 1,
"title": "Schema Version",
"type": "integer"
},
"text": {
"maxLength": 8000,
"minLength": 1,
"title": "Text",
"type": "string"
},
"url": {
"maxLength": 4000,
"minLength": 1,
"title": "Url",
"type": "string"
}
},
"required": [
"url",
"text",
"relation",
"context"
],
"title": "OnlineEvidence",
"type": "object"
},
"ProposalOperation": {
"additionalProperties": false,
"properties": {
"edge": {
"anyOf": [
{
"$ref": "#/$defs/TypedEdge"
},
{
"type": "null"
}
],
"default": null
},
"node": {
"anyOf": [
{
"$ref": "#/$defs/KnowledgeNode"
},
{
"type": "null"
}
],
"default": null
},
"operation": {
"enum": [
"register_source",
"upsert_node",
"update_node",
"add_edge",
"flag_stale"
],
"title": "Operation",
"type": "string"
},
"schema_version": {
"const": 1,
"default": 1,
"title": "Schema Version",
"type": "integer"
},
"source": {
"anyOf": [
{
"$ref": "#/$defs/SourceRevisionRecord"
},
{
"type": "null"
}
],
"default": null
},
"target_id": {
"anyOf": [
{
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Target Id"
}
},
"required": [
"operation"
],
"title": "ProposalOperation",
"type": "object"
},
"ReliabilityGrade": {
"enum": [
"low",
"medium",
"high"
],
"title": "ReliabilityGrade",
"type": "string"
},
"ReviewState": {
"enum": [
"draft",
"reviewed"
],
"title": "ReviewState",
"type": "string"
},
"Scope": {
"additionalProperties": false,
"description": "Project context plus optional project includes; all-project access is deliberate.",
"properties": {
"all_projects": {
"default": false,
"title": "All Projects",
"type": "boolean"
},
"include_projects": {
"anyOf": [
{
"items": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"type": "string"
},
"maxItems": 50,
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Include Projects"
},
"include_shared": {
"default": true,
"title": "Include Shared",
"type": "boolean"
},
"projects": {
"items": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"type": "string"
},
"maxItems": 50,
"minItems": 1,
"title": "Projects",
"type": "array"
},
"schema_version": {
"const": 1,
"default": 1,
"title": "Schema Version",
"type": "integer"
}
},
"required": [
"projects"
],
"title": "Scope",
"type": "object"
},
"SourceRevisionRecord": {
"additionalProperties": false,
"properties": {
"archive_status": {
"enum": [
"archived",
"reference-only",
"capture-failed"
],
"title": "Archive Status",
"type": "string"
},
"artifact_sha256": {
"anyOf": [
{
"pattern": "^[a-f0-9]{64}$",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Artifact Sha256"
},
"authors": {
"default": [],
"items": {
"type": "string"
},
"maxItems": 50,
"title": "Authors",
"type": "array"
},
"byte_length": {
"minimum": 0,
"title": "Byte Length",
"type": "integer"
},
"capture_method": {
"default": "unspecified",
"enum": [
"unspecified",
"local-file",
"url-fetch",
"pasted-text",
"notebooklm-export",
"transcript"
],
"title": "Capture Method",
"type": "string"
},
"captured_at": {
"format": "date-time",
"title": "Captured At",
"type": "string"
},
"final_url": {
"anyOf": [
{
"maxLength": 4000,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Final Url"
},
"ingested_for": {
"items": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"type": "string"
},
"maxItems": 50,
"minItems": 1,
"title": "Ingested For",
"type": "array"
},
"license": {
"maxLength": 500,
"minLength": 1,
"title": "License",
"type": "string"
},
"media_type": {
"maxLength": 128,
"minLength": 1,
"title": "Media Type",
"type": "string"
},
"original_url": {
"anyOf": [
{
"maxLength": 4000,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Original Url"
},
"publication_date": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Publication Date"
},
"publisher": {
"anyOf": [
{
"maxLength": 300,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Publisher"
},
"reliability_grade": {
"$ref": "#/$defs/ReliabilityGrade"
},
"revision_id": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"title": "Revision Id",
"type": "string"
},
"schema_version": {
"const": 1,
"default": 1,
"title": "Schema Version",
"type": "integer"
},
"source_id": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"title": "Source Id",
"type": "string"
},
"source_type": {
"enum": [
"paper",
"review",
"press",
"vendor",
"internal",
"talk",
"export",
"other"
],
"title": "Source Type",
"type": "string"
},
"title": {
"maxLength": 500,
"minLength": 1,
"title": "Title",
"type": "string"
}
},
"required": [
"source_id",
"revision_id",
"media_type",
"byte_length",
"captured_at",
"title",
"license",
"source_type",
"reliability_grade",
"ingested_for",
"archive_status"
],
"title": "SourceRevisionRecord",
"type": "object"
},
"SupportAssessment": {
"additionalProperties": false,
"properties": {
"assertion_digest": {
"pattern": "^[a-f0-9]{64}$",
"title": "Assertion Digest",
"type": "string"
},
"assessment_id": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"title": "Assessment Id",
"type": "string"
},
"assessor_id": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"title": "Assessor Id",
"type": "string"
},
"evidence_digests": {
"items": {
"pattern": "^[a-f0-9]{64}$",
"type": "string"
},
"maxItems": 20,
"minItems": 1,
"title": "Evidence Digests",
"type": "array"
},
"method": {
"maxLength": 100,
"minLength": 1,
"title": "Method",
"type": "string"
},
"rationale": {
"maxLength": 4000,
"minLength": 1,
"title": "Rationale",
"type": "string"
},
"run_id": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"title": "Run Id",
"type": "string"
},
"schema_version": {
"const": 1,
"default": 1,
"title": "Schema Version",
"type": "integer"
},
"status": {
"$ref": "#/$defs/SupportStatus"
}
},
"required": [
"assessment_id",
"assertion_digest",
"evidence_digests",
"assessor_id",
"run_id",
"method",
"status",
"rationale"
],
"title": "SupportAssessment",
"type": "object"
},
"SupportStatus": {
"enum": [
"supported",
"unsupported",
"unavailable"
],
"title": "SupportStatus",
"type": "string"
},
"TypedEdge": {
"additionalProperties": false,
"properties": {
"conditions": {
"anyOf": [
{
"maxLength": 2000,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Conditions"
},
"edge_id": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"title": "Edge Id",
"type": "string"
},
"edge_type": {
"enum": [
"solves",
"addresses",
"causes",
"supports",
"contradicts",
"instance_of",
"part_of",
"precedes",
"supersedes",
"compared_with",
"derived_from",
"applies_to"
],
"title": "Edge Type",
"type": "string"
},
"evidence": {
"default": [],
"items": {
"$ref": "#/$defs/EvidenceReference"
},
"title": "Evidence",
"type": "array"
},
"interpretation_rationale": {
"anyOf": [
{
"maxLength": 4000,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Interpretation Rationale"
},
"schema_version": {
"const": 1,
"default": 1,
"title": "Schema Version",
"type": "integer"
},
"source": {
"$ref": "#/$defs/EdgeEndpoint"
},
"target": {
"$ref": "#/$defs/EdgeEndpoint"
}
},
"required": [
"edge_id",
"edge_type",
"source",
"target"
],
"title": "TypedEdge",
"type": "object"
}
},
"additionalProperties": false,
"properties": {
"base_commit": {
"pattern": "^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
"title": "Base Commit",
"type": "string"
},
"initiating_project_id": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"title": "Initiating Project Id",
"type": "string"
},
"operations": {
"items": {
"$ref": "#/$defs/ProposalOperation"
},
"maxItems": 100,
"minItems": 1,
"title": "Operations",
"type": "array"
},
"payload_digest": {
"pattern": "^[a-f0-9]{64}$",
"title": "Payload Digest",
"type": "string"
},
"proposal_id": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"title": "Proposal Id",
"type": "string"
},
"proposer_id": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"title": "Proposer Id",
"type": "string"
},
"revision": {
"minimum": 1,
"title": "Revision",
"type": "integer"
},
"run_id": {
"maxLength": 128,
"minLength": 1,
"pattern": "^[a-zA-Z0-9][a-zA-Z0-9._:-]*$",
"title": "Run Id",
"type": "string"
},
"schema_version": {
"const": 1,
"default": 1,
"title": "Schema Version",
"type": "integer"
},
"scope": {
"$ref": "#/$defs/Scope"
}
},
"required": [
"proposal_id",
"revision",
"initiating_project_id",
"scope",
"base_commit",
"payload_digest",
"proposer_id",
"run_id",
"operations"
],
"title": "ProposalRevision",
"type": "object"
}