Files
repo-scoping/docs/self-scoping/assessments/repo-scoping-post-wp0016-native-2026-05-15.json

9111 lines
325 KiB
JSON

{
"approved_map": {
"abilities": [],
"scope": {
"confidence": 1.0,
"confidence_label": "high",
"description": "Self-scoping assessment target.",
"id": 1,
"name": "repo-scoping"
}
},
"artifact_id": "repo-scoping-challenger-run-1",
"artifact_type": "assessment_run",
"assessment": {
"comparison_eligibility": "eligible",
"outcome": "challenger",
"rationale": [],
"reviewer": "self-assess",
"role": "challenger",
"summary": "Generated self-scoping assessment artifact for comparison."
},
"content_chunk_summary": {
"counts_by_kind": {
"config": 1,
"credential_config": 50,
"documentation": 162,
"fallback_policy": 198,
"intent": 5,
"interface": 255,
"llm_provider": 368,
"manifest": 1,
"provider_registry": 281,
"scope": 5,
"test": 248
},
"counts_by_source_role": {
"dependency_declaration": 2,
"derived_scope": 5,
"implementation_source": 255,
"intent_summary": 5,
"product_documentation": 451,
"test_evidence": 856
},
"paths": [
"INTENT.md",
"README.md",
"SCOPE.md",
"docs/abstraction-strategy.md",
"docs/acceptance-policy.md",
"docs/adr-dependency-graph-visualization-framework.md",
"docs/adr-ep-cap-003-vocabulary-ref-guard.md",
"docs/api-contract.md",
"docs/characteristic-evidence-model.md",
"docs/classification-strategy.md",
"docs/dependency-aware-scope-propagation.md",
"docs/dependency-visualization-exploration.md",
"docs/migrations/trusted-auto-approval.md",
"docs/operations.md",
"docs/quality-criteria/README.md",
"docs/quality-criteria/acceptance-quality-criteria.v1.json",
"docs/schemas/quality-criteria-registry.schema.json",
"docs/schemas/repo-scope-context-response.json",
"docs/schemas/self-scoping-assessment.schema.json",
"docs/scope-md-spec.md",
"docs/self-scoping/README.md",
"docs/self-scoping/assessments/repo-scoping-known-bad-2026-05-15-run-39.json",
"docs/self-scoping/assessments/repo-scoping-post-wp0015-clean-2026-05-15.json",
"docs/self-scoping/assessments/repo-scoping-post-wp0015-clean-2026-05-15.md",
"docs/self-scoping/golden/repo-scoping-golden-profile.v1.json",
"docs/self-scoping/outcomes/README.md",
"docs/self-scoping/workflow.md",
"docs/semantic-retrieval.md",
"docs/terminology.md",
"pyproject.toml",
"src/repo_registry/candidate_graph/normalization.py",
"src/repo_registry/cli.py",
"src/repo_registry/repo_scanning/scanner.py",
"src/repo_registry/web_api/__init__.py",
"src/repo_registry/web_api/app.py",
"src/repo_registry/web_api/schemas.py",
"tests/__init__.py",
"tests/expectations/llm_connect_provider_expectations.json",
"tests/fixtures.py",
"tests/test_acceptance_boundary.py",
"tests/test_acceptance_policy_docs.py",
"tests/test_agentic_review.py",
"tests/test_candidate_graph.py",
"tests/test_candidate_normalization.py",
"tests/test_cli.py",
"tests/test_content_indexing.py",
"tests/test_git_ingestion.py",
"tests/test_intent_bootstrap.py",
"tests/test_llm_extraction.py",
"tests/test_llm_extraction_mapper.py",
"tests/test_quality_criteria.py",
"tests/test_quality_gates.py",
"tests/test_registry_service.py",
"tests/test_repository_metadata.py",
"tests/test_repository_scanner.py",
"tests/test_scanner_coevolution.py",
"tests/test_scope_context_api.py",
"tests/test_scope_generator.py",
"tests/test_self_scoping_artifacts.py",
"tests/test_self_scoping_assessment_export.py",
"tests/test_self_scoping_comparison.py",
"tests/test_self_scoping_review_store.py",
"tests/test_self_scoping_web_ui.py",
"tests/test_storage_migrations.py",
"tests/test_trusted_auto_approval_migration.py",
"tests/test_web_api.py",
"wiki/AbilityExtractionHeuristics.md",
"workplans/RREG-WP-0003-automatic-repository-exploration.md",
"workplans/RREG-WP-0004-characteristic-classification-navigation.md",
"workplans/RREG-WP-0012-activity-core-context-api.md"
],
"total": 1574
},
"created_at": "2026-05-15T16:30:45Z",
"engine_identity": {
"candidate_generator_version": "unversioned",
"engine_commit": "2c3dad80d646869827335cb6de849cdca272c85b",
"engine_dirty_state": "clean",
"engine_release": null,
"prompt_version": null,
"quality_criteria_version": "repo-scoping-quality-criteria/v1",
"release_binding_note": "Engine commit was captured from git.",
"release_binding_status": "complete",
"repo_scoping_version": "0.1.0",
"scanner_version": "deterministic-v0.1"
},
"execution": {
"acceptance_mode": "pending_review",
"analysis_run_id": 1,
"candidate_source": "deterministic",
"completed_at": "2026-05-15T16:30:44Z",
"mode": "deterministic-only",
"started_at": "2026-05-15T16:30:41Z"
},
"fact_summary": {
"contamination_sources": [
{
"path": "src/repo_registry/candidate_graph/normalization.py",
"reason": "Provider-related fact came from scanner rules, tests, fixtures, schemas, or workplan context and needs native-utility review."
},
{
"path": "src/repo_registry/repo_scanning/scanner.py",
"reason": "Provider-related fact came from scanner rules, tests, fixtures, schemas, or workplan context and needs native-utility review."
},
{
"path": "src/repo_registry/web_api/schemas.py",
"reason": "Provider-related fact came from scanner rules, tests, fixtures, schemas, or workplan context and needs native-utility review."
},
{
"path": "tests/expectations/llm_connect_provider_expectations.json",
"reason": "Provider-related fact came from scanner rules, tests, fixtures, schemas, or workplan context and needs native-utility review."
},
{
"path": "tests/fixtures.py",
"reason": "Provider-related fact came from scanner rules, tests, fixtures, schemas, or workplan context and needs native-utility review."
},
{
"path": "tests/test_acceptance_boundary.py",
"reason": "Provider-related fact came from scanner rules, tests, fixtures, schemas, or workplan context and needs native-utility review."
},
{
"path": "tests/test_candidate_graph.py",
"reason": "Provider-related fact came from scanner rules, tests, fixtures, schemas, or workplan context and needs native-utility review."
},
{
"path": "tests/test_candidate_normalization.py",
"reason": "Provider-related fact came from scanner rules, tests, fixtures, schemas, or workplan context and needs native-utility review."
},
{
"path": "tests/test_cli.py",
"reason": "Provider-related fact came from scanner rules, tests, fixtures, schemas, or workplan context and needs native-utility review."
},
{
"path": "tests/test_content_indexing.py",
"reason": "Provider-related fact came from scanner rules, tests, fixtures, schemas, or workplan context and needs native-utility review."
},
{
"path": "tests/test_llm_extraction.py",
"reason": "Provider-related fact came from scanner rules, tests, fixtures, schemas, or workplan context and needs native-utility review."
},
{
"path": "tests/test_quality_gates.py",
"reason": "Provider-related fact came from scanner rules, tests, fixtures, schemas, or workplan context and needs native-utility review."
},
{
"path": "tests/test_registry_service.py",
"reason": "Provider-related fact came from scanner rules, tests, fixtures, schemas, or workplan context and needs native-utility review."
},
{
"path": "tests/test_repository_scanner.py",
"reason": "Provider-related fact came from scanner rules, tests, fixtures, schemas, or workplan context and needs native-utility review."
},
{
"path": "tests/test_scanner_coevolution.py",
"reason": "Provider-related fact came from scanner rules, tests, fixtures, schemas, or workplan context and needs native-utility review."
},
{
"path": "tests/test_self_scoping_assessment_export.py",
"reason": "Provider-related fact came from scanner rules, tests, fixtures, schemas, or workplan context and needs native-utility review."
},
{
"path": "tests/test_web_api.py",
"reason": "Provider-related fact came from scanner rules, tests, fixtures, schemas, or workplan context and needs native-utility review."
},
{
"path": "workplans/RREG-WP-0003-automatic-repository-exploration.md",
"reason": "Provider-related fact came from scanner rules, tests, fixtures, schemas, or workplan context and needs native-utility review."
},
{
"path": "workplans/RREG-WP-0004-characteristic-classification-navigation.md",
"reason": "Provider-related fact came from scanner rules, tests, fixtures, schemas, or workplan context and needs native-utility review."
}
],
"counts_by_kind": {
"config": 1,
"credential_config": 13,
"documentation": 27,
"fallback_policy": 12,
"framework": 2,
"intent": 1,
"interface": 136,
"language": 1,
"llm_provider": 55,
"manifest": 1,
"provider_registry": 14,
"scope": 1,
"test": 30
}
},
"generated_tree": {
"abilities": [
{
"capabilities": [
{
"evidence": [
{
"reference": "tests/test_git_ingestion.py",
"source_refs": [
{
"fact_id": 275,
"kind": "test",
"line": null,
"name": "test_git_ingestion.py",
"path": "tests/test_git_ingestion.py"
}
],
"status": "candidate",
"strength": "strong",
"type": "test"
},
{
"reference": "tests/test_repository_metadata.py",
"source_refs": [
{
"fact_id": 282,
"kind": "test",
"line": null,
"name": "test_repository_metadata.py",
"path": "tests/test_repository_metadata.py"
}
],
"status": "candidate",
"strength": "strong",
"type": "test"
}
],
"features": [
{
"location": "src/repo_registry/web_api/app.py",
"name": "Create and update repository records",
"primary_class": "api",
"source_refs": [
{
"fact_id": 60,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 61,
"kind": "interface",
"line": 173,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 62,
"kind": "interface",
"line": 203,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 63,
"kind": "interface",
"line": 212,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 64,
"kind": "interface",
"line": 226,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 65,
"kind": "interface",
"line": 243,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 66,
"kind": "interface",
"line": 250,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 67,
"kind": "interface",
"line": 265,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 68,
"kind": "interface",
"line": 286,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 69,
"kind": "interface",
"line": 297,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 70,
"kind": "interface",
"line": 324,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 71,
"kind": "interface",
"line": 351,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 72,
"kind": "interface",
"line": 366,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 73,
"kind": "interface",
"line": 382,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 74,
"kind": "interface",
"line": 401,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 75,
"kind": "interface",
"line": 427,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 76,
"kind": "interface",
"line": 450,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 77,
"kind": "interface",
"line": 468,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 78,
"kind": "interface",
"line": 490,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 79,
"kind": "interface",
"line": 513,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 80,
"kind": "interface",
"line": 532,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 81,
"kind": "interface",
"line": 551,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 82,
"kind": "interface",
"line": 570,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 83,
"kind": "interface",
"line": 588,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 84,
"kind": "interface",
"line": 611,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 85,
"kind": "interface",
"line": 634,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 86,
"kind": "interface",
"line": 660,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 87,
"kind": "interface",
"line": 686,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 88,
"kind": "interface",
"line": 712,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 89,
"kind": "interface",
"line": 738,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 90,
"kind": "interface",
"line": 764,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 91,
"kind": "interface",
"line": 790,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 92,
"kind": "interface",
"line": 816,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 93,
"kind": "interface",
"line": 842,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 94,
"kind": "interface",
"line": 868,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 95,
"kind": "interface",
"line": 894,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 96,
"kind": "interface",
"line": 920,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 97,
"kind": "interface",
"line": 946,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 98,
"kind": "interface",
"line": 972,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 99,
"kind": "interface",
"line": 990,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 100,
"kind": "interface",
"line": 1013,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 101,
"kind": "interface",
"line": 1029,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 102,
"kind": "interface",
"line": 1047,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 103,
"kind": "interface",
"line": 1070,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 104,
"kind": "interface",
"line": 1086,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 105,
"kind": "interface",
"line": 1104,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 106,
"kind": "interface",
"line": 1127,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 107,
"kind": "interface",
"line": 1143,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 108,
"kind": "interface",
"line": 1161,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 109,
"kind": "interface",
"line": 1184,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 110,
"kind": "interface",
"line": 1200,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 111,
"kind": "interface",
"line": 1215,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 112,
"kind": "interface",
"line": 1241,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 113,
"kind": "interface",
"line": 1269,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 114,
"kind": "interface",
"line": 1287,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 115,
"kind": "interface",
"line": 1311,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 116,
"kind": "interface",
"line": 1327,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 117,
"kind": "interface",
"line": 1352,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 118,
"kind": "interface",
"line": 1378,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 119,
"kind": "interface",
"line": 1394,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 120,
"kind": "interface",
"line": 1416,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 121,
"kind": "interface",
"line": 1455,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 122,
"kind": "interface",
"line": 1478,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 123,
"kind": "interface",
"line": 1501,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 124,
"kind": "interface",
"line": 1684,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 125,
"kind": "interface",
"line": 1703,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 126,
"kind": "interface",
"line": 1718,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 127,
"kind": "interface",
"line": 1760,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 128,
"kind": "interface",
"line": 1767,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
}
],
"status": "candidate",
"type": "api"
},
{
"location": "tests/test_git_ingestion.py",
"name": "Resolve local or remote Git checkouts",
"primary_class": "backend",
"source_refs": [
{
"fact_id": 275,
"kind": "test",
"line": null,
"name": "test_git_ingestion.py",
"path": "tests/test_git_ingestion.py"
}
],
"status": "candidate",
"type": "backend"
},
{
"location": "tests/test_repository_metadata.py",
"name": "Import repository metadata",
"primary_class": "backend",
"source_refs": [
{
"fact_id": 282,
"kind": "test",
"line": null,
"name": "test_repository_metadata.py",
"path": "tests/test_repository_metadata.py"
}
],
"status": "candidate",
"type": "backend"
},
{
"location": "multiple files",
"name": "CLI command surface: CLI command build_parser, CLI command make_service",
"primary_class": "CLI",
"source_refs": [
{
"fact_id": 58,
"kind": "interface",
"line": null,
"name": "possible CLI",
"path": "src/repo_registry/cli.py"
},
{
"fact_id": 189,
"kind": "interface",
"line": null,
"name": "possible CLI",
"path": "tests/test_cli.py"
}
],
"status": "candidate",
"type": "CLI"
}
],
"name": "Register And Track Repositories",
"primary_class": "ingestion",
"source_refs": [
{
"fact_id": 60,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 61,
"kind": "interface",
"line": 173,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 62,
"kind": "interface",
"line": 203,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 63,
"kind": "interface",
"line": 212,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 64,
"kind": "interface",
"line": 226,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 65,
"kind": "interface",
"line": 243,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 66,
"kind": "interface",
"line": 250,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 67,
"kind": "interface",
"line": 265,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 68,
"kind": "interface",
"line": 286,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 69,
"kind": "interface",
"line": 297,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 70,
"kind": "interface",
"line": 324,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 71,
"kind": "interface",
"line": 351,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 72,
"kind": "interface",
"line": 366,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 73,
"kind": "interface",
"line": 382,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 74,
"kind": "interface",
"line": 401,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 75,
"kind": "interface",
"line": 427,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 76,
"kind": "interface",
"line": 450,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 77,
"kind": "interface",
"line": 468,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 78,
"kind": "interface",
"line": 490,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 79,
"kind": "interface",
"line": 513,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 80,
"kind": "interface",
"line": 532,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 81,
"kind": "interface",
"line": 551,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 82,
"kind": "interface",
"line": 570,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 83,
"kind": "interface",
"line": 588,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 84,
"kind": "interface",
"line": 611,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 85,
"kind": "interface",
"line": 634,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 86,
"kind": "interface",
"line": 660,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 87,
"kind": "interface",
"line": 686,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 88,
"kind": "interface",
"line": 712,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 89,
"kind": "interface",
"line": 738,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 90,
"kind": "interface",
"line": 764,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 91,
"kind": "interface",
"line": 790,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 92,
"kind": "interface",
"line": 816,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 93,
"kind": "interface",
"line": 842,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 94,
"kind": "interface",
"line": 868,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 95,
"kind": "interface",
"line": 894,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 96,
"kind": "interface",
"line": 920,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 97,
"kind": "interface",
"line": 946,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 98,
"kind": "interface",
"line": 972,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 99,
"kind": "interface",
"line": 990,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 100,
"kind": "interface",
"line": 1013,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 101,
"kind": "interface",
"line": 1029,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 102,
"kind": "interface",
"line": 1047,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 103,
"kind": "interface",
"line": 1070,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 104,
"kind": "interface",
"line": 1086,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 105,
"kind": "interface",
"line": 1104,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 106,
"kind": "interface",
"line": 1127,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 107,
"kind": "interface",
"line": 1143,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 108,
"kind": "interface",
"line": 1161,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 109,
"kind": "interface",
"line": 1184,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 110,
"kind": "interface",
"line": 1200,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 111,
"kind": "interface",
"line": 1215,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 112,
"kind": "interface",
"line": 1241,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 113,
"kind": "interface",
"line": 1269,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 114,
"kind": "interface",
"line": 1287,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 115,
"kind": "interface",
"line": 1311,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 116,
"kind": "interface",
"line": 1327,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 117,
"kind": "interface",
"line": 1352,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 118,
"kind": "interface",
"line": 1378,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 119,
"kind": "interface",
"line": 1394,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 120,
"kind": "interface",
"line": 1416,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 121,
"kind": "interface",
"line": 1455,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 122,
"kind": "interface",
"line": 1478,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 123,
"kind": "interface",
"line": 1501,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 124,
"kind": "interface",
"line": 1684,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 125,
"kind": "interface",
"line": 1703,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 126,
"kind": "interface",
"line": 1718,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 127,
"kind": "interface",
"line": 1760,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 128,
"kind": "interface",
"line": 1767,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 275,
"kind": "test",
"line": null,
"name": "test_git_ingestion.py",
"path": "tests/test_git_ingestion.py"
},
{
"fact_id": 282,
"kind": "test",
"line": null,
"name": "test_repository_metadata.py",
"path": "tests/test_repository_metadata.py"
}
],
"status": "candidate"
},
{
"evidence": [
{
"reference": "tests/test_repository_scanner.py",
"source_refs": [
{
"fact_id": 283,
"kind": "test",
"line": null,
"name": "test_repository_scanner.py",
"path": "tests/test_repository_scanner.py"
}
],
"status": "candidate",
"strength": "strong",
"type": "test"
},
{
"reference": "docs/characteristic-evidence-model.md",
"source_refs": [
{
"fact_id": 21,
"kind": "documentation",
"line": null,
"name": "characteristic-evidence-model.md",
"path": "docs/characteristic-evidence-model.md"
}
],
"status": "candidate",
"strength": "medium",
"type": "documentation"
}
],
"features": [
{
"location": "multiple files",
"name": "Detect source languages, manifests, docs, tests, config, and interfaces",
"primary_class": "backend",
"source_refs": [
{
"fact_id": 2,
"kind": "credential_config",
"line": null,
"name": "Anthropic API key",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 3,
"kind": "credential_config",
"line": null,
"name": "Gemini API key",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 4,
"kind": "credential_config",
"line": null,
"name": "Google API key",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 5,
"kind": "credential_config",
"line": null,
"name": "OpenAI API key",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 6,
"kind": "credential_config",
"line": null,
"name": "OpenRouter API key",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 11,
"kind": "credential_config",
"line": null,
"name": "Anthropic API key",
"path": "tests/test_repository_scanner.py"
},
{
"fact_id": 12,
"kind": "credential_config",
"line": null,
"name": "OpenRouter API key",
"path": "tests/test_repository_scanner.py"
},
{
"fact_id": 45,
"kind": "fallback_policy",
"line": null,
"name": "LLM provider fallback policy",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 50,
"kind": "fallback_policy",
"line": null,
"name": "LLM provider fallback policy",
"path": "tests/test_repository_scanner.py"
},
{
"fact_id": 210,
"kind": "llm_provider",
"line": null,
"name": "Anthropic",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 211,
"kind": "llm_provider",
"line": null,
"name": "Claude",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 212,
"kind": "llm_provider",
"line": null,
"name": "Gemini",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 213,
"kind": "llm_provider",
"line": null,
"name": "OpenAI",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 214,
"kind": "llm_provider",
"line": null,
"name": "OpenRouter",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 233,
"kind": "llm_provider",
"line": null,
"name": "Anthropic",
"path": "tests/test_repository_scanner.py"
},
{
"fact_id": 234,
"kind": "llm_provider",
"line": null,
"name": "Claude",
"path": "tests/test_repository_scanner.py"
},
{
"fact_id": 235,
"kind": "llm_provider",
"line": null,
"name": "OpenRouter",
"path": "tests/test_repository_scanner.py"
},
{
"fact_id": 252,
"kind": "provider_registry",
"line": null,
"name": "LLM provider registry",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 260,
"kind": "provider_registry",
"line": null,
"name": "LLM provider registry",
"path": "tests/test_repository_scanner.py"
},
{
"fact_id": 283,
"kind": "test",
"line": null,
"name": "test_repository_scanner.py",
"path": "tests/test_repository_scanner.py"
}
],
"status": "candidate",
"type": "backend"
},
{
"location": "multiple files",
"name": "Classify source roles for facts",
"primary_class": "backend",
"source_refs": [
{
"fact_id": 2,
"kind": "credential_config",
"line": null,
"name": "Anthropic API key",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 3,
"kind": "credential_config",
"line": null,
"name": "Gemini API key",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 4,
"kind": "credential_config",
"line": null,
"name": "Google API key",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 5,
"kind": "credential_config",
"line": null,
"name": "OpenAI API key",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 6,
"kind": "credential_config",
"line": null,
"name": "OpenRouter API key",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 21,
"kind": "documentation",
"line": null,
"name": "characteristic-evidence-model.md",
"path": "docs/characteristic-evidence-model.md"
},
{
"fact_id": 45,
"kind": "fallback_policy",
"line": null,
"name": "LLM provider fallback policy",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 210,
"kind": "llm_provider",
"line": null,
"name": "Anthropic",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 211,
"kind": "llm_provider",
"line": null,
"name": "Claude",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 212,
"kind": "llm_provider",
"line": null,
"name": "Gemini",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 213,
"kind": "llm_provider",
"line": null,
"name": "OpenAI",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 214,
"kind": "llm_provider",
"line": null,
"name": "OpenRouter",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 252,
"kind": "provider_registry",
"line": null,
"name": "LLM provider registry",
"path": "src/repo_registry/repo_scanning/scanner.py"
}
],
"status": "candidate",
"type": "backend"
}
],
"name": "Scan Repositories Into Observed Facts",
"primary_class": "analysis",
"source_refs": [
{
"fact_id": 2,
"kind": "credential_config",
"line": null,
"name": "Anthropic API key",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 3,
"kind": "credential_config",
"line": null,
"name": "Gemini API key",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 4,
"kind": "credential_config",
"line": null,
"name": "Google API key",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 5,
"kind": "credential_config",
"line": null,
"name": "OpenAI API key",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 6,
"kind": "credential_config",
"line": null,
"name": "OpenRouter API key",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 11,
"kind": "credential_config",
"line": null,
"name": "Anthropic API key",
"path": "tests/test_repository_scanner.py"
},
{
"fact_id": 12,
"kind": "credential_config",
"line": null,
"name": "OpenRouter API key",
"path": "tests/test_repository_scanner.py"
},
{
"fact_id": 45,
"kind": "fallback_policy",
"line": null,
"name": "LLM provider fallback policy",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 50,
"kind": "fallback_policy",
"line": null,
"name": "LLM provider fallback policy",
"path": "tests/test_repository_scanner.py"
},
{
"fact_id": 210,
"kind": "llm_provider",
"line": null,
"name": "Anthropic",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 211,
"kind": "llm_provider",
"line": null,
"name": "Claude",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 212,
"kind": "llm_provider",
"line": null,
"name": "Gemini",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 213,
"kind": "llm_provider",
"line": null,
"name": "OpenAI",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 214,
"kind": "llm_provider",
"line": null,
"name": "OpenRouter",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 233,
"kind": "llm_provider",
"line": null,
"name": "Anthropic",
"path": "tests/test_repository_scanner.py"
},
{
"fact_id": 234,
"kind": "llm_provider",
"line": null,
"name": "Claude",
"path": "tests/test_repository_scanner.py"
},
{
"fact_id": 235,
"kind": "llm_provider",
"line": null,
"name": "OpenRouter",
"path": "tests/test_repository_scanner.py"
},
{
"fact_id": 252,
"kind": "provider_registry",
"line": null,
"name": "LLM provider registry",
"path": "src/repo_registry/repo_scanning/scanner.py"
},
{
"fact_id": 260,
"kind": "provider_registry",
"line": null,
"name": "LLM provider registry",
"path": "tests/test_repository_scanner.py"
},
{
"fact_id": 283,
"kind": "test",
"line": null,
"name": "test_repository_scanner.py",
"path": "tests/test_repository_scanner.py"
},
{
"fact_id": 21,
"kind": "documentation",
"line": null,
"name": "characteristic-evidence-model.md",
"path": "docs/characteristic-evidence-model.md"
}
],
"status": "candidate"
},
{
"evidence": [
{
"reference": "tests/test_content_indexing.py",
"source_refs": [
{
"fact_id": 274,
"kind": "test",
"line": null,
"name": "test_content_indexing.py",
"path": "tests/test_content_indexing.py"
}
],
"status": "candidate",
"strength": "strong",
"type": "test"
}
],
"features": [
{
"location": "tests/test_content_indexing.py",
"name": "Create source-linked content chunks from observed facts",
"primary_class": "backend",
"source_refs": [
{
"fact_id": 10,
"kind": "credential_config",
"line": null,
"name": "OpenRouter API key",
"path": "tests/test_content_indexing.py"
},
{
"fact_id": 228,
"kind": "llm_provider",
"line": null,
"name": "OpenRouter",
"path": "tests/test_content_indexing.py"
},
{
"fact_id": 274,
"kind": "test",
"line": null,
"name": "test_content_indexing.py",
"path": "tests/test_content_indexing.py"
}
],
"status": "candidate",
"type": "backend"
}
],
"name": "Index Source Content With Provenance",
"primary_class": "analysis",
"source_refs": [
{
"fact_id": 10,
"kind": "credential_config",
"line": null,
"name": "OpenRouter API key",
"path": "tests/test_content_indexing.py"
},
{
"fact_id": 228,
"kind": "llm_provider",
"line": null,
"name": "OpenRouter",
"path": "tests/test_content_indexing.py"
},
{
"fact_id": 274,
"kind": "test",
"line": null,
"name": "test_content_indexing.py",
"path": "tests/test_content_indexing.py"
}
],
"status": "candidate"
},
{
"evidence": [
{
"reference": "tests/test_candidate_graph.py",
"source_refs": [
{
"fact_id": 271,
"kind": "test",
"line": null,
"name": "test_candidate_graph.py",
"path": "tests/test_candidate_graph.py"
}
],
"status": "candidate",
"strength": "strong",
"type": "test"
},
{
"reference": "tests/test_llm_extraction.py",
"source_refs": [
{
"fact_id": 277,
"kind": "test",
"line": null,
"name": "test_llm_extraction.py",
"path": "tests/test_llm_extraction.py"
}
],
"status": "candidate",
"strength": "strong",
"type": "test"
}
],
"features": [
{
"location": "multiple files",
"name": "Build candidate abilities, capabilities, features, and evidence",
"primary_class": "backend",
"source_refs": [
{
"fact_id": 9,
"kind": "credential_config",
"line": null,
"name": "OpenRouter API key",
"path": "tests/test_candidate_graph.py"
},
{
"fact_id": 48,
"kind": "fallback_policy",
"line": null,
"name": "LLM provider fallback policy",
"path": "tests/test_candidate_graph.py"
},
{
"fact_id": 205,
"kind": "llm_provider",
"line": null,
"name": "Anthropic",
"path": "src/repo_registry/candidate_graph/normalization.py"
},
{
"fact_id": 206,
"kind": "llm_provider",
"line": null,
"name": "Claude",
"path": "src/repo_registry/candidate_graph/normalization.py"
},
{
"fact_id": 207,
"kind": "llm_provider",
"line": null,
"name": "Gemini",
"path": "src/repo_registry/candidate_graph/normalization.py"
},
{
"fact_id": 208,
"kind": "llm_provider",
"line": null,
"name": "OpenAI",
"path": "src/repo_registry/candidate_graph/normalization.py"
},
{
"fact_id": 209,
"kind": "llm_provider",
"line": null,
"name": "OpenRouter",
"path": "src/repo_registry/candidate_graph/normalization.py"
},
{
"fact_id": 223,
"kind": "llm_provider",
"line": null,
"name": "Claude",
"path": "tests/test_candidate_graph.py"
},
{
"fact_id": 224,
"kind": "llm_provider",
"line": null,
"name": "OpenRouter",
"path": "tests/test_candidate_graph.py"
},
{
"fact_id": 256,
"kind": "provider_registry",
"line": null,
"name": "LLM provider registry",
"path": "tests/test_candidate_graph.py"
},
{
"fact_id": 271,
"kind": "test",
"line": null,
"name": "test_candidate_graph.py",
"path": "tests/test_candidate_graph.py"
}
],
"status": "candidate",
"type": "backend"
},
{
"location": "tests/test_llm_extraction.py",
"name": "Optionally map structured LLM extraction into candidates",
"primary_class": "integration",
"source_refs": [
{
"fact_id": 229,
"kind": "llm_provider",
"line": null,
"name": "Claude",
"path": "tests/test_llm_extraction.py"
},
{
"fact_id": 277,
"kind": "test",
"line": null,
"name": "test_llm_extraction.py",
"path": "tests/test_llm_extraction.py"
}
],
"status": "candidate",
"type": "integration"
}
],
"name": "Generate Reviewable Candidate Characteristics",
"primary_class": "analysis",
"source_refs": [
{
"fact_id": 9,
"kind": "credential_config",
"line": null,
"name": "OpenRouter API key",
"path": "tests/test_candidate_graph.py"
},
{
"fact_id": 48,
"kind": "fallback_policy",
"line": null,
"name": "LLM provider fallback policy",
"path": "tests/test_candidate_graph.py"
},
{
"fact_id": 205,
"kind": "llm_provider",
"line": null,
"name": "Anthropic",
"path": "src/repo_registry/candidate_graph/normalization.py"
},
{
"fact_id": 206,
"kind": "llm_provider",
"line": null,
"name": "Claude",
"path": "src/repo_registry/candidate_graph/normalization.py"
},
{
"fact_id": 207,
"kind": "llm_provider",
"line": null,
"name": "Gemini",
"path": "src/repo_registry/candidate_graph/normalization.py"
},
{
"fact_id": 208,
"kind": "llm_provider",
"line": null,
"name": "OpenAI",
"path": "src/repo_registry/candidate_graph/normalization.py"
},
{
"fact_id": 209,
"kind": "llm_provider",
"line": null,
"name": "OpenRouter",
"path": "src/repo_registry/candidate_graph/normalization.py"
},
{
"fact_id": 223,
"kind": "llm_provider",
"line": null,
"name": "Claude",
"path": "tests/test_candidate_graph.py"
},
{
"fact_id": 224,
"kind": "llm_provider",
"line": null,
"name": "OpenRouter",
"path": "tests/test_candidate_graph.py"
},
{
"fact_id": 256,
"kind": "provider_registry",
"line": null,
"name": "LLM provider registry",
"path": "tests/test_candidate_graph.py"
},
{
"fact_id": 271,
"kind": "test",
"line": null,
"name": "test_candidate_graph.py",
"path": "tests/test_candidate_graph.py"
},
{
"fact_id": 229,
"kind": "llm_provider",
"line": null,
"name": "Claude",
"path": "tests/test_llm_extraction.py"
},
{
"fact_id": 277,
"kind": "test",
"line": null,
"name": "test_llm_extraction.py",
"path": "tests/test_llm_extraction.py"
}
],
"status": "candidate"
},
{
"evidence": [
{
"reference": "tests/test_registry_service.py",
"source_refs": [
{
"fact_id": 281,
"kind": "test",
"line": null,
"name": "test_registry_service.py",
"path": "tests/test_registry_service.py"
}
],
"status": "candidate",
"strength": "strong",
"type": "test"
}
],
"features": [
{
"location": "multiple files",
"name": "Edit, reject, merge, and relink candidate graph entries",
"primary_class": "api",
"source_refs": [
{
"fact_id": 49,
"kind": "fallback_policy",
"line": null,
"name": "LLM provider fallback policy",
"path": "tests/test_registry_service.py"
},
{
"fact_id": 60,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 61,
"kind": "interface",
"line": 173,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 62,
"kind": "interface",
"line": 203,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 63,
"kind": "interface",
"line": 212,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 64,
"kind": "interface",
"line": 226,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 65,
"kind": "interface",
"line": 243,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 66,
"kind": "interface",
"line": 250,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 67,
"kind": "interface",
"line": 265,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 68,
"kind": "interface",
"line": 286,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 69,
"kind": "interface",
"line": 297,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 70,
"kind": "interface",
"line": 324,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 71,
"kind": "interface",
"line": 351,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 72,
"kind": "interface",
"line": 366,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 73,
"kind": "interface",
"line": 382,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 74,
"kind": "interface",
"line": 401,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 75,
"kind": "interface",
"line": 427,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 76,
"kind": "interface",
"line": 450,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 77,
"kind": "interface",
"line": 468,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 78,
"kind": "interface",
"line": 490,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 79,
"kind": "interface",
"line": 513,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 80,
"kind": "interface",
"line": 532,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 81,
"kind": "interface",
"line": 551,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 82,
"kind": "interface",
"line": 570,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 83,
"kind": "interface",
"line": 588,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 84,
"kind": "interface",
"line": 611,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 85,
"kind": "interface",
"line": 634,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 86,
"kind": "interface",
"line": 660,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 87,
"kind": "interface",
"line": 686,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 88,
"kind": "interface",
"line": 712,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 89,
"kind": "interface",
"line": 738,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 90,
"kind": "interface",
"line": 764,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 91,
"kind": "interface",
"line": 790,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 92,
"kind": "interface",
"line": 816,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 93,
"kind": "interface",
"line": 842,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 94,
"kind": "interface",
"line": 868,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 95,
"kind": "interface",
"line": 894,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 96,
"kind": "interface",
"line": 920,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 97,
"kind": "interface",
"line": 946,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 98,
"kind": "interface",
"line": 972,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 99,
"kind": "interface",
"line": 990,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 100,
"kind": "interface",
"line": 1013,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 101,
"kind": "interface",
"line": 1029,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 102,
"kind": "interface",
"line": 1047,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 103,
"kind": "interface",
"line": 1070,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 104,
"kind": "interface",
"line": 1086,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 105,
"kind": "interface",
"line": 1104,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 106,
"kind": "interface",
"line": 1127,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 107,
"kind": "interface",
"line": 1143,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 108,
"kind": "interface",
"line": 1161,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 109,
"kind": "interface",
"line": 1184,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 110,
"kind": "interface",
"line": 1200,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 111,
"kind": "interface",
"line": 1215,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 112,
"kind": "interface",
"line": 1241,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 113,
"kind": "interface",
"line": 1269,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 114,
"kind": "interface",
"line": 1287,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 115,
"kind": "interface",
"line": 1311,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 116,
"kind": "interface",
"line": 1327,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 117,
"kind": "interface",
"line": 1352,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 118,
"kind": "interface",
"line": 1378,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 119,
"kind": "interface",
"line": 1394,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 120,
"kind": "interface",
"line": 1416,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 121,
"kind": "interface",
"line": 1455,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 122,
"kind": "interface",
"line": 1478,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 123,
"kind": "interface",
"line": 1501,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 124,
"kind": "interface",
"line": 1684,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 125,
"kind": "interface",
"line": 1703,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 126,
"kind": "interface",
"line": 1718,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 127,
"kind": "interface",
"line": 1760,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 128,
"kind": "interface",
"line": 1767,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 231,
"kind": "llm_provider",
"line": null,
"name": "Claude",
"path": "tests/test_registry_service.py"
},
{
"fact_id": 232,
"kind": "llm_provider",
"line": null,
"name": "OpenRouter",
"path": "tests/test_registry_service.py"
},
{
"fact_id": 259,
"kind": "provider_registry",
"line": null,
"name": "LLM provider registry",
"path": "tests/test_registry_service.py"
},
{
"fact_id": 281,
"kind": "test",
"line": null,
"name": "test_registry_service.py",
"path": "tests/test_registry_service.py"
}
],
"status": "candidate",
"type": "api"
},
{
"location": "src/repo_registry/web_api/schemas.py",
"name": "Record review decisions and expectation gaps",
"primary_class": "audit",
"source_refs": [
{
"fact_id": 129,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "src/repo_registry/web_api/schemas.py"
},
{
"fact_id": 215,
"kind": "llm_provider",
"line": null,
"name": "OpenRouter",
"path": "src/repo_registry/web_api/schemas.py"
}
],
"status": "candidate",
"type": "audit"
}
],
"name": "Review And Approve Candidate Characteristics",
"primary_class": "review",
"source_refs": [
{
"fact_id": 49,
"kind": "fallback_policy",
"line": null,
"name": "LLM provider fallback policy",
"path": "tests/test_registry_service.py"
},
{
"fact_id": 60,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 61,
"kind": "interface",
"line": 173,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 62,
"kind": "interface",
"line": 203,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 63,
"kind": "interface",
"line": 212,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 64,
"kind": "interface",
"line": 226,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 65,
"kind": "interface",
"line": 243,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 66,
"kind": "interface",
"line": 250,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 67,
"kind": "interface",
"line": 265,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 68,
"kind": "interface",
"line": 286,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 69,
"kind": "interface",
"line": 297,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 70,
"kind": "interface",
"line": 324,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 71,
"kind": "interface",
"line": 351,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 72,
"kind": "interface",
"line": 366,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 73,
"kind": "interface",
"line": 382,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 74,
"kind": "interface",
"line": 401,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 75,
"kind": "interface",
"line": 427,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 76,
"kind": "interface",
"line": 450,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 77,
"kind": "interface",
"line": 468,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 78,
"kind": "interface",
"line": 490,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 79,
"kind": "interface",
"line": 513,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 80,
"kind": "interface",
"line": 532,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 81,
"kind": "interface",
"line": 551,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 82,
"kind": "interface",
"line": 570,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 83,
"kind": "interface",
"line": 588,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 84,
"kind": "interface",
"line": 611,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 85,
"kind": "interface",
"line": 634,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 86,
"kind": "interface",
"line": 660,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 87,
"kind": "interface",
"line": 686,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 88,
"kind": "interface",
"line": 712,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 89,
"kind": "interface",
"line": 738,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 90,
"kind": "interface",
"line": 764,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 91,
"kind": "interface",
"line": 790,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 92,
"kind": "interface",
"line": 816,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 93,
"kind": "interface",
"line": 842,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 94,
"kind": "interface",
"line": 868,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 95,
"kind": "interface",
"line": 894,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 96,
"kind": "interface",
"line": 920,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 97,
"kind": "interface",
"line": 946,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 98,
"kind": "interface",
"line": 972,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 99,
"kind": "interface",
"line": 990,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 100,
"kind": "interface",
"line": 1013,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 101,
"kind": "interface",
"line": 1029,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 102,
"kind": "interface",
"line": 1047,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 103,
"kind": "interface",
"line": 1070,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 104,
"kind": "interface",
"line": 1086,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 105,
"kind": "interface",
"line": 1104,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 106,
"kind": "interface",
"line": 1127,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 107,
"kind": "interface",
"line": 1143,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 108,
"kind": "interface",
"line": 1161,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 109,
"kind": "interface",
"line": 1184,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 110,
"kind": "interface",
"line": 1200,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 111,
"kind": "interface",
"line": 1215,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 112,
"kind": "interface",
"line": 1241,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 113,
"kind": "interface",
"line": 1269,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 114,
"kind": "interface",
"line": 1287,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 115,
"kind": "interface",
"line": 1311,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 116,
"kind": "interface",
"line": 1327,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 117,
"kind": "interface",
"line": 1352,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 118,
"kind": "interface",
"line": 1378,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 119,
"kind": "interface",
"line": 1394,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 120,
"kind": "interface",
"line": 1416,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 121,
"kind": "interface",
"line": 1455,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 122,
"kind": "interface",
"line": 1478,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 123,
"kind": "interface",
"line": 1501,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 124,
"kind": "interface",
"line": 1684,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 125,
"kind": "interface",
"line": 1703,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 126,
"kind": "interface",
"line": 1718,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 127,
"kind": "interface",
"line": 1760,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 128,
"kind": "interface",
"line": 1767,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 231,
"kind": "llm_provider",
"line": null,
"name": "Claude",
"path": "tests/test_registry_service.py"
},
{
"fact_id": 232,
"kind": "llm_provider",
"line": null,
"name": "OpenRouter",
"path": "tests/test_registry_service.py"
},
{
"fact_id": 259,
"kind": "provider_registry",
"line": null,
"name": "LLM provider registry",
"path": "tests/test_registry_service.py"
},
{
"fact_id": 281,
"kind": "test",
"line": null,
"name": "test_registry_service.py",
"path": "tests/test_registry_service.py"
},
{
"fact_id": 129,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "src/repo_registry/web_api/schemas.py"
},
{
"fact_id": 215,
"kind": "llm_provider",
"line": null,
"name": "OpenRouter",
"path": "src/repo_registry/web_api/schemas.py"
}
],
"status": "candidate"
},
{
"evidence": [
{
"reference": "tests/test_registry_service.py",
"source_refs": [
{
"fact_id": 281,
"kind": "test",
"line": null,
"name": "test_registry_service.py",
"path": "tests/test_registry_service.py"
}
],
"status": "candidate",
"strength": "strong",
"type": "test"
},
{
"reference": "docs/api-contract.md",
"source_refs": [
{
"fact_id": 20,
"kind": "documentation",
"line": null,
"name": "api-contract.md",
"path": "docs/api-contract.md"
}
],
"status": "candidate",
"strength": "medium",
"type": "documentation"
}
],
"features": [
{
"location": "tests/test_registry_service.py",
"name": "Search approved abilities, capabilities, features, and evidence",
"primary_class": "api",
"source_refs": [
{
"fact_id": 49,
"kind": "fallback_policy",
"line": null,
"name": "LLM provider fallback policy",
"path": "tests/test_registry_service.py"
},
{
"fact_id": 231,
"kind": "llm_provider",
"line": null,
"name": "Claude",
"path": "tests/test_registry_service.py"
},
{
"fact_id": 232,
"kind": "llm_provider",
"line": null,
"name": "OpenRouter",
"path": "tests/test_registry_service.py"
},
{
"fact_id": 259,
"kind": "provider_registry",
"line": null,
"name": "LLM provider registry",
"path": "tests/test_registry_service.py"
},
{
"fact_id": 281,
"kind": "test",
"line": null,
"name": "test_registry_service.py",
"path": "tests/test_registry_service.py"
}
],
"status": "candidate",
"type": "api"
},
{
"location": "src/repo_registry/web_api/app.py",
"name": "Compare repositories and identify capability gaps",
"primary_class": "api",
"source_refs": [
{
"fact_id": 60,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 61,
"kind": "interface",
"line": 173,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 62,
"kind": "interface",
"line": 203,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 63,
"kind": "interface",
"line": 212,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 64,
"kind": "interface",
"line": 226,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 65,
"kind": "interface",
"line": 243,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 66,
"kind": "interface",
"line": 250,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 67,
"kind": "interface",
"line": 265,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 68,
"kind": "interface",
"line": 286,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 69,
"kind": "interface",
"line": 297,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 70,
"kind": "interface",
"line": 324,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 71,
"kind": "interface",
"line": 351,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 72,
"kind": "interface",
"line": 366,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 73,
"kind": "interface",
"line": 382,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 74,
"kind": "interface",
"line": 401,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 75,
"kind": "interface",
"line": 427,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 76,
"kind": "interface",
"line": 450,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 77,
"kind": "interface",
"line": 468,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 78,
"kind": "interface",
"line": 490,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 79,
"kind": "interface",
"line": 513,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 80,
"kind": "interface",
"line": 532,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 81,
"kind": "interface",
"line": 551,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 82,
"kind": "interface",
"line": 570,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 83,
"kind": "interface",
"line": 588,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 84,
"kind": "interface",
"line": 611,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 85,
"kind": "interface",
"line": 634,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 86,
"kind": "interface",
"line": 660,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 87,
"kind": "interface",
"line": 686,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 88,
"kind": "interface",
"line": 712,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 89,
"kind": "interface",
"line": 738,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 90,
"kind": "interface",
"line": 764,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 91,
"kind": "interface",
"line": 790,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 92,
"kind": "interface",
"line": 816,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 93,
"kind": "interface",
"line": 842,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 94,
"kind": "interface",
"line": 868,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 95,
"kind": "interface",
"line": 894,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 96,
"kind": "interface",
"line": 920,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 97,
"kind": "interface",
"line": 946,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 98,
"kind": "interface",
"line": 972,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 99,
"kind": "interface",
"line": 990,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 100,
"kind": "interface",
"line": 1013,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 101,
"kind": "interface",
"line": 1029,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 102,
"kind": "interface",
"line": 1047,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 103,
"kind": "interface",
"line": 1070,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 104,
"kind": "interface",
"line": 1086,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 105,
"kind": "interface",
"line": 1104,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 106,
"kind": "interface",
"line": 1127,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 107,
"kind": "interface",
"line": 1143,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 108,
"kind": "interface",
"line": 1161,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 109,
"kind": "interface",
"line": 1184,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 110,
"kind": "interface",
"line": 1200,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 111,
"kind": "interface",
"line": 1215,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 112,
"kind": "interface",
"line": 1241,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 113,
"kind": "interface",
"line": 1269,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 114,
"kind": "interface",
"line": 1287,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 115,
"kind": "interface",
"line": 1311,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 116,
"kind": "interface",
"line": 1327,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 117,
"kind": "interface",
"line": 1352,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 118,
"kind": "interface",
"line": 1378,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 119,
"kind": "interface",
"line": 1394,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 120,
"kind": "interface",
"line": 1416,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 121,
"kind": "interface",
"line": 1455,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 122,
"kind": "interface",
"line": 1478,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 123,
"kind": "interface",
"line": 1501,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 124,
"kind": "interface",
"line": 1684,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 125,
"kind": "interface",
"line": 1703,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 126,
"kind": "interface",
"line": 1718,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 127,
"kind": "interface",
"line": 1760,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 128,
"kind": "interface",
"line": 1767,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
}
],
"status": "candidate",
"type": "api"
},
{
"location": "multiple files",
"name": "Export repository profiles",
"primary_class": "api",
"source_refs": [
{
"fact_id": 20,
"kind": "documentation",
"line": null,
"name": "api-contract.md",
"path": "docs/api-contract.md"
},
{
"fact_id": 57,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "docs/api-contract.md"
},
{
"fact_id": 60,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 61,
"kind": "interface",
"line": 173,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 62,
"kind": "interface",
"line": 203,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 63,
"kind": "interface",
"line": 212,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 64,
"kind": "interface",
"line": 226,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 65,
"kind": "interface",
"line": 243,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 66,
"kind": "interface",
"line": 250,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 67,
"kind": "interface",
"line": 265,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 68,
"kind": "interface",
"line": 286,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 69,
"kind": "interface",
"line": 297,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 70,
"kind": "interface",
"line": 324,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 71,
"kind": "interface",
"line": 351,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 72,
"kind": "interface",
"line": 366,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 73,
"kind": "interface",
"line": 382,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 74,
"kind": "interface",
"line": 401,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 75,
"kind": "interface",
"line": 427,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 76,
"kind": "interface",
"line": 450,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 77,
"kind": "interface",
"line": 468,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 78,
"kind": "interface",
"line": 490,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 79,
"kind": "interface",
"line": 513,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 80,
"kind": "interface",
"line": 532,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 81,
"kind": "interface",
"line": 551,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 82,
"kind": "interface",
"line": 570,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 83,
"kind": "interface",
"line": 588,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 84,
"kind": "interface",
"line": 611,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 85,
"kind": "interface",
"line": 634,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 86,
"kind": "interface",
"line": 660,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 87,
"kind": "interface",
"line": 686,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 88,
"kind": "interface",
"line": 712,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 89,
"kind": "interface",
"line": 738,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 90,
"kind": "interface",
"line": 764,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 91,
"kind": "interface",
"line": 790,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 92,
"kind": "interface",
"line": 816,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 93,
"kind": "interface",
"line": 842,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 94,
"kind": "interface",
"line": 868,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 95,
"kind": "interface",
"line": 894,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 96,
"kind": "interface",
"line": 920,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 97,
"kind": "interface",
"line": 946,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 98,
"kind": "interface",
"line": 972,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 99,
"kind": "interface",
"line": 990,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 100,
"kind": "interface",
"line": 1013,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 101,
"kind": "interface",
"line": 1029,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 102,
"kind": "interface",
"line": 1047,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 103,
"kind": "interface",
"line": 1070,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 104,
"kind": "interface",
"line": 1086,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 105,
"kind": "interface",
"line": 1104,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 106,
"kind": "interface",
"line": 1127,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 107,
"kind": "interface",
"line": 1143,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 108,
"kind": "interface",
"line": 1161,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 109,
"kind": "interface",
"line": 1184,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 110,
"kind": "interface",
"line": 1200,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 111,
"kind": "interface",
"line": 1215,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 112,
"kind": "interface",
"line": 1241,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 113,
"kind": "interface",
"line": 1269,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 114,
"kind": "interface",
"line": 1287,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 115,
"kind": "interface",
"line": 1311,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 116,
"kind": "interface",
"line": 1327,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 117,
"kind": "interface",
"line": 1352,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 118,
"kind": "interface",
"line": 1378,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 119,
"kind": "interface",
"line": 1394,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 120,
"kind": "interface",
"line": 1416,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 121,
"kind": "interface",
"line": 1455,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 122,
"kind": "interface",
"line": 1478,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 123,
"kind": "interface",
"line": 1501,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 124,
"kind": "interface",
"line": 1684,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 125,
"kind": "interface",
"line": 1703,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 126,
"kind": "interface",
"line": 1718,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 127,
"kind": "interface",
"line": 1760,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 128,
"kind": "interface",
"line": 1767,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
}
],
"status": "candidate",
"type": "api"
}
],
"name": "Search Compare And Export Approved Profiles",
"primary_class": "discovery",
"source_refs": [
{
"fact_id": 49,
"kind": "fallback_policy",
"line": null,
"name": "LLM provider fallback policy",
"path": "tests/test_registry_service.py"
},
{
"fact_id": 231,
"kind": "llm_provider",
"line": null,
"name": "Claude",
"path": "tests/test_registry_service.py"
},
{
"fact_id": 232,
"kind": "llm_provider",
"line": null,
"name": "OpenRouter",
"path": "tests/test_registry_service.py"
},
{
"fact_id": 259,
"kind": "provider_registry",
"line": null,
"name": "LLM provider registry",
"path": "tests/test_registry_service.py"
},
{
"fact_id": 281,
"kind": "test",
"line": null,
"name": "test_registry_service.py",
"path": "tests/test_registry_service.py"
},
{
"fact_id": 60,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 61,
"kind": "interface",
"line": 173,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 62,
"kind": "interface",
"line": 203,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 63,
"kind": "interface",
"line": 212,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 64,
"kind": "interface",
"line": 226,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 65,
"kind": "interface",
"line": 243,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 66,
"kind": "interface",
"line": 250,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 67,
"kind": "interface",
"line": 265,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 68,
"kind": "interface",
"line": 286,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 69,
"kind": "interface",
"line": 297,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 70,
"kind": "interface",
"line": 324,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 71,
"kind": "interface",
"line": 351,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 72,
"kind": "interface",
"line": 366,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 73,
"kind": "interface",
"line": 382,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 74,
"kind": "interface",
"line": 401,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 75,
"kind": "interface",
"line": 427,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 76,
"kind": "interface",
"line": 450,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 77,
"kind": "interface",
"line": 468,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 78,
"kind": "interface",
"line": 490,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 79,
"kind": "interface",
"line": 513,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 80,
"kind": "interface",
"line": 532,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 81,
"kind": "interface",
"line": 551,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 82,
"kind": "interface",
"line": 570,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 83,
"kind": "interface",
"line": 588,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 84,
"kind": "interface",
"line": 611,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 85,
"kind": "interface",
"line": 634,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 86,
"kind": "interface",
"line": 660,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 87,
"kind": "interface",
"line": 686,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 88,
"kind": "interface",
"line": 712,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 89,
"kind": "interface",
"line": 738,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 90,
"kind": "interface",
"line": 764,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 91,
"kind": "interface",
"line": 790,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 92,
"kind": "interface",
"line": 816,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 93,
"kind": "interface",
"line": 842,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 94,
"kind": "interface",
"line": 868,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 95,
"kind": "interface",
"line": 894,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 96,
"kind": "interface",
"line": 920,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 97,
"kind": "interface",
"line": 946,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 98,
"kind": "interface",
"line": 972,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 99,
"kind": "interface",
"line": 990,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 100,
"kind": "interface",
"line": 1013,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 101,
"kind": "interface",
"line": 1029,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 102,
"kind": "interface",
"line": 1047,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 103,
"kind": "interface",
"line": 1070,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 104,
"kind": "interface",
"line": 1086,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 105,
"kind": "interface",
"line": 1104,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 106,
"kind": "interface",
"line": 1127,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 107,
"kind": "interface",
"line": 1143,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 108,
"kind": "interface",
"line": 1161,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 109,
"kind": "interface",
"line": 1184,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 110,
"kind": "interface",
"line": 1200,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 111,
"kind": "interface",
"line": 1215,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 112,
"kind": "interface",
"line": 1241,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 113,
"kind": "interface",
"line": 1269,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 114,
"kind": "interface",
"line": 1287,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 115,
"kind": "interface",
"line": 1311,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 116,
"kind": "interface",
"line": 1327,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 117,
"kind": "interface",
"line": 1352,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 118,
"kind": "interface",
"line": 1378,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 119,
"kind": "interface",
"line": 1394,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 120,
"kind": "interface",
"line": 1416,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 121,
"kind": "interface",
"line": 1455,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 122,
"kind": "interface",
"line": 1478,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 123,
"kind": "interface",
"line": 1501,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 124,
"kind": "interface",
"line": 1684,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 125,
"kind": "interface",
"line": 1703,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 126,
"kind": "interface",
"line": 1718,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 127,
"kind": "interface",
"line": 1760,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 128,
"kind": "interface",
"line": 1767,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 20,
"kind": "documentation",
"line": null,
"name": "api-contract.md",
"path": "docs/api-contract.md"
},
{
"fact_id": 57,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "docs/api-contract.md"
}
],
"status": "candidate"
},
{
"evidence": [
{
"reference": "tests/test_scope_generator.py",
"source_refs": [
{
"fact_id": 286,
"kind": "test",
"line": null,
"name": "test_scope_generator.py",
"path": "tests/test_scope_generator.py"
}
],
"status": "candidate",
"strength": "strong",
"type": "test"
},
{
"reference": "docs/scope-md-spec.md",
"source_refs": [
{
"fact_id": 32,
"kind": "documentation",
"line": null,
"name": "scope-md-spec.md",
"path": "docs/scope-md-spec.md"
}
],
"status": "candidate",
"strength": "medium",
"type": "documentation"
}
],
"features": [
{
"location": "multiple files",
"name": "Render SCOPE.md from approved characteristics",
"primary_class": "backend",
"source_refs": [
{
"fact_id": 32,
"kind": "documentation",
"line": null,
"name": "scope-md-spec.md",
"path": "docs/scope-md-spec.md"
},
{
"fact_id": 286,
"kind": "test",
"line": null,
"name": "test_scope_generator.py",
"path": "tests/test_scope_generator.py"
}
],
"status": "candidate",
"type": "backend"
},
{
"location": "src/repo_registry/web_api/app.py",
"name": "Diff, validate, and write scope files",
"primary_class": "api",
"source_refs": [
{
"fact_id": 60,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 61,
"kind": "interface",
"line": 173,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 62,
"kind": "interface",
"line": 203,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 63,
"kind": "interface",
"line": 212,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 64,
"kind": "interface",
"line": 226,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 65,
"kind": "interface",
"line": 243,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 66,
"kind": "interface",
"line": 250,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 67,
"kind": "interface",
"line": 265,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 68,
"kind": "interface",
"line": 286,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 69,
"kind": "interface",
"line": 297,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 70,
"kind": "interface",
"line": 324,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 71,
"kind": "interface",
"line": 351,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 72,
"kind": "interface",
"line": 366,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 73,
"kind": "interface",
"line": 382,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 74,
"kind": "interface",
"line": 401,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 75,
"kind": "interface",
"line": 427,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 76,
"kind": "interface",
"line": 450,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 77,
"kind": "interface",
"line": 468,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 78,
"kind": "interface",
"line": 490,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 79,
"kind": "interface",
"line": 513,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 80,
"kind": "interface",
"line": 532,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 81,
"kind": "interface",
"line": 551,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 82,
"kind": "interface",
"line": 570,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 83,
"kind": "interface",
"line": 588,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 84,
"kind": "interface",
"line": 611,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 85,
"kind": "interface",
"line": 634,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 86,
"kind": "interface",
"line": 660,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 87,
"kind": "interface",
"line": 686,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 88,
"kind": "interface",
"line": 712,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 89,
"kind": "interface",
"line": 738,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 90,
"kind": "interface",
"line": 764,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 91,
"kind": "interface",
"line": 790,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 92,
"kind": "interface",
"line": 816,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 93,
"kind": "interface",
"line": 842,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 94,
"kind": "interface",
"line": 868,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 95,
"kind": "interface",
"line": 894,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 96,
"kind": "interface",
"line": 920,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 97,
"kind": "interface",
"line": 946,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 98,
"kind": "interface",
"line": 972,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 99,
"kind": "interface",
"line": 990,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 100,
"kind": "interface",
"line": 1013,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 101,
"kind": "interface",
"line": 1029,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 102,
"kind": "interface",
"line": 1047,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 103,
"kind": "interface",
"line": 1070,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 104,
"kind": "interface",
"line": 1086,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 105,
"kind": "interface",
"line": 1104,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 106,
"kind": "interface",
"line": 1127,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 107,
"kind": "interface",
"line": 1143,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 108,
"kind": "interface",
"line": 1161,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 109,
"kind": "interface",
"line": 1184,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 110,
"kind": "interface",
"line": 1200,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 111,
"kind": "interface",
"line": 1215,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 112,
"kind": "interface",
"line": 1241,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 113,
"kind": "interface",
"line": 1269,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 114,
"kind": "interface",
"line": 1287,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 115,
"kind": "interface",
"line": 1311,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 116,
"kind": "interface",
"line": 1327,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 117,
"kind": "interface",
"line": 1352,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 118,
"kind": "interface",
"line": 1378,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 119,
"kind": "interface",
"line": 1394,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 120,
"kind": "interface",
"line": 1416,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 121,
"kind": "interface",
"line": 1455,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 122,
"kind": "interface",
"line": 1478,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 123,
"kind": "interface",
"line": 1501,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 124,
"kind": "interface",
"line": 1684,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 125,
"kind": "interface",
"line": 1703,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 126,
"kind": "interface",
"line": 1718,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 127,
"kind": "interface",
"line": 1760,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 128,
"kind": "interface",
"line": 1767,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
}
],
"status": "candidate",
"type": "api"
}
],
"name": "Generate And Maintain SCOPE.md",
"primary_class": "scope-generation",
"source_refs": [
{
"fact_id": 32,
"kind": "documentation",
"line": null,
"name": "scope-md-spec.md",
"path": "docs/scope-md-spec.md"
},
{
"fact_id": 286,
"kind": "test",
"line": null,
"name": "test_scope_generator.py",
"path": "tests/test_scope_generator.py"
},
{
"fact_id": 60,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 61,
"kind": "interface",
"line": 173,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 62,
"kind": "interface",
"line": 203,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 63,
"kind": "interface",
"line": 212,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 64,
"kind": "interface",
"line": 226,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 65,
"kind": "interface",
"line": 243,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 66,
"kind": "interface",
"line": 250,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 67,
"kind": "interface",
"line": 265,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 68,
"kind": "interface",
"line": 286,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 69,
"kind": "interface",
"line": 297,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 70,
"kind": "interface",
"line": 324,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 71,
"kind": "interface",
"line": 351,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 72,
"kind": "interface",
"line": 366,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 73,
"kind": "interface",
"line": 382,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 74,
"kind": "interface",
"line": 401,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 75,
"kind": "interface",
"line": 427,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 76,
"kind": "interface",
"line": 450,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 77,
"kind": "interface",
"line": 468,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 78,
"kind": "interface",
"line": 490,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 79,
"kind": "interface",
"line": 513,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 80,
"kind": "interface",
"line": 532,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 81,
"kind": "interface",
"line": 551,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 82,
"kind": "interface",
"line": 570,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 83,
"kind": "interface",
"line": 588,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 84,
"kind": "interface",
"line": 611,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 85,
"kind": "interface",
"line": 634,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 86,
"kind": "interface",
"line": 660,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 87,
"kind": "interface",
"line": 686,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 88,
"kind": "interface",
"line": 712,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 89,
"kind": "interface",
"line": 738,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 90,
"kind": "interface",
"line": 764,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 91,
"kind": "interface",
"line": 790,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 92,
"kind": "interface",
"line": 816,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 93,
"kind": "interface",
"line": 842,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 94,
"kind": "interface",
"line": 868,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 95,
"kind": "interface",
"line": 894,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 96,
"kind": "interface",
"line": 920,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 97,
"kind": "interface",
"line": 946,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 98,
"kind": "interface",
"line": 972,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 99,
"kind": "interface",
"line": 990,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 100,
"kind": "interface",
"line": 1013,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 101,
"kind": "interface",
"line": 1029,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 102,
"kind": "interface",
"line": 1047,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 103,
"kind": "interface",
"line": 1070,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 104,
"kind": "interface",
"line": 1086,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 105,
"kind": "interface",
"line": 1104,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 106,
"kind": "interface",
"line": 1127,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 107,
"kind": "interface",
"line": 1143,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 108,
"kind": "interface",
"line": 1161,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 109,
"kind": "interface",
"line": 1184,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 110,
"kind": "interface",
"line": 1200,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 111,
"kind": "interface",
"line": 1215,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 112,
"kind": "interface",
"line": 1241,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 113,
"kind": "interface",
"line": 1269,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 114,
"kind": "interface",
"line": 1287,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 115,
"kind": "interface",
"line": 1311,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 116,
"kind": "interface",
"line": 1327,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 117,
"kind": "interface",
"line": 1352,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 118,
"kind": "interface",
"line": 1378,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 119,
"kind": "interface",
"line": 1394,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 120,
"kind": "interface",
"line": 1416,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 121,
"kind": "interface",
"line": 1455,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 122,
"kind": "interface",
"line": 1478,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 123,
"kind": "interface",
"line": 1501,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 124,
"kind": "interface",
"line": 1684,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 125,
"kind": "interface",
"line": 1703,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 126,
"kind": "interface",
"line": 1718,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 127,
"kind": "interface",
"line": 1760,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 128,
"kind": "interface",
"line": 1767,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
}
],
"status": "candidate"
},
{
"evidence": [
{
"reference": "tests/test_web_api.py",
"source_refs": [
{
"fact_id": 294,
"kind": "test",
"line": null,
"name": "test_web_api.py",
"path": "tests/test_web_api.py"
}
],
"status": "candidate",
"strength": "strong",
"type": "test"
},
{
"reference": "docs/dependency-aware-scope-propagation.md",
"source_refs": [
{
"fact_id": 23,
"kind": "documentation",
"line": null,
"name": "dependency-aware-scope-propagation.md",
"path": "docs/dependency-aware-scope-propagation.md"
}
],
"status": "candidate",
"strength": "medium",
"type": "documentation"
},
{
"reference": "docs/dependency-visualization-exploration.md",
"source_refs": [
{
"fact_id": 24,
"kind": "documentation",
"line": null,
"name": "dependency-visualization-exploration.md",
"path": "docs/dependency-visualization-exploration.md"
}
],
"status": "candidate",
"strength": "medium",
"type": "documentation"
}
],
"features": [
{
"location": "multiple files",
"name": "Model dependencies between facts, evidence, features, capabilities, abilities, and scope",
"primary_class": "backend",
"source_refs": [
{
"fact_id": 23,
"kind": "documentation",
"line": null,
"name": "dependency-aware-scope-propagation.md",
"path": "docs/dependency-aware-scope-propagation.md"
},
{
"fact_id": 24,
"kind": "documentation",
"line": null,
"name": "dependency-visualization-exploration.md",
"path": "docs/dependency-visualization-exploration.md"
}
],
"status": "candidate",
"type": "backend"
},
{
"location": "multiple files",
"name": "Render dependency graph views and profiles",
"primary_class": "ui",
"source_refs": [
{
"fact_id": 130,
"kind": "interface",
"line": 437,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 131,
"kind": "interface",
"line": 442,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 132,
"kind": "interface",
"line": 537,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 133,
"kind": "interface",
"line": 542,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 134,
"kind": "interface",
"line": 621,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 135,
"kind": "interface",
"line": 652,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 136,
"kind": "interface",
"line": 731,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 137,
"kind": "interface",
"line": 1069,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 138,
"kind": "interface",
"line": 1107,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 139,
"kind": "interface",
"line": 1139,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 140,
"kind": "interface",
"line": 1182,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 141,
"kind": "interface",
"line": 1366,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 142,
"kind": "interface",
"line": 1439,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 143,
"kind": "interface",
"line": 1478,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 144,
"kind": "interface",
"line": 1664,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 145,
"kind": "interface",
"line": 1676,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 146,
"kind": "interface",
"line": 1693,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 147,
"kind": "interface",
"line": 1710,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 148,
"kind": "interface",
"line": 1723,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 149,
"kind": "interface",
"line": 1744,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 150,
"kind": "interface",
"line": 1771,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 151,
"kind": "interface",
"line": 1796,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 152,
"kind": "interface",
"line": 1823,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 153,
"kind": "interface",
"line": 1846,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 154,
"kind": "interface",
"line": 1856,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 155,
"kind": "interface",
"line": 1883,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 156,
"kind": "interface",
"line": 1893,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 157,
"kind": "interface",
"line": 1918,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 158,
"kind": "interface",
"line": 1928,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 159,
"kind": "interface",
"line": 1955,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 160,
"kind": "interface",
"line": 1965,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 161,
"kind": "interface",
"line": 1991,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 162,
"kind": "interface",
"line": 2015,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 163,
"kind": "interface",
"line": 2132,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 164,
"kind": "interface",
"line": 2156,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 165,
"kind": "interface",
"line": 2182,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 166,
"kind": "interface",
"line": 2201,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 167,
"kind": "interface",
"line": 2330,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 168,
"kind": "interface",
"line": 2402,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 169,
"kind": "interface",
"line": 2955,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 170,
"kind": "interface",
"line": 2969,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 171,
"kind": "interface",
"line": 2984,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 172,
"kind": "interface",
"line": 3006,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 173,
"kind": "interface",
"line": 3025,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 174,
"kind": "interface",
"line": 3047,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 175,
"kind": "interface",
"line": 3066,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 176,
"kind": "interface",
"line": 3088,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 177,
"kind": "interface",
"line": 3107,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 178,
"kind": "interface",
"line": 3129,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 179,
"kind": "interface",
"line": 3148,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 180,
"kind": "interface",
"line": 3180,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 181,
"kind": "interface",
"line": 3212,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 182,
"kind": "interface",
"line": 3246,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 183,
"kind": "interface",
"line": 3270,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 184,
"kind": "interface",
"line": 3294,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 185,
"kind": "interface",
"line": 3318,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 186,
"kind": "interface",
"line": 3342,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 187,
"kind": "interface",
"line": 3366,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 188,
"kind": "interface",
"line": 3390,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 191,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "tests/test_web_api.py"
},
{
"fact_id": 240,
"kind": "llm_provider",
"line": null,
"name": "OpenRouter",
"path": "tests/test_web_api.py"
},
{
"fact_id": 263,
"kind": "provider_registry",
"line": null,
"name": "LLM provider registry",
"path": "tests/test_web_api.py"
},
{
"fact_id": 294,
"kind": "test",
"line": null,
"name": "test_web_api.py",
"path": "tests/test_web_api.py"
}
],
"status": "candidate",
"type": "ui"
}
],
"name": "Explore Dependency And Impact Graphs",
"primary_class": "dependency-analysis",
"source_refs": [
{
"fact_id": 23,
"kind": "documentation",
"line": null,
"name": "dependency-aware-scope-propagation.md",
"path": "docs/dependency-aware-scope-propagation.md"
},
{
"fact_id": 24,
"kind": "documentation",
"line": null,
"name": "dependency-visualization-exploration.md",
"path": "docs/dependency-visualization-exploration.md"
},
{
"fact_id": 130,
"kind": "interface",
"line": 437,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 131,
"kind": "interface",
"line": 442,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 132,
"kind": "interface",
"line": 537,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 133,
"kind": "interface",
"line": 542,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 134,
"kind": "interface",
"line": 621,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 135,
"kind": "interface",
"line": 652,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 136,
"kind": "interface",
"line": 731,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 137,
"kind": "interface",
"line": 1069,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 138,
"kind": "interface",
"line": 1107,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 139,
"kind": "interface",
"line": 1139,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 140,
"kind": "interface",
"line": 1182,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 141,
"kind": "interface",
"line": 1366,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 142,
"kind": "interface",
"line": 1439,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 143,
"kind": "interface",
"line": 1478,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 144,
"kind": "interface",
"line": 1664,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 145,
"kind": "interface",
"line": 1676,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 146,
"kind": "interface",
"line": 1693,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 147,
"kind": "interface",
"line": 1710,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 148,
"kind": "interface",
"line": 1723,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 149,
"kind": "interface",
"line": 1744,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 150,
"kind": "interface",
"line": 1771,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 151,
"kind": "interface",
"line": 1796,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 152,
"kind": "interface",
"line": 1823,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 153,
"kind": "interface",
"line": 1846,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 154,
"kind": "interface",
"line": 1856,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 155,
"kind": "interface",
"line": 1883,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 156,
"kind": "interface",
"line": 1893,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 157,
"kind": "interface",
"line": 1918,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 158,
"kind": "interface",
"line": 1928,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 159,
"kind": "interface",
"line": 1955,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 160,
"kind": "interface",
"line": 1965,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 161,
"kind": "interface",
"line": 1991,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 162,
"kind": "interface",
"line": 2015,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 163,
"kind": "interface",
"line": 2132,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 164,
"kind": "interface",
"line": 2156,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 165,
"kind": "interface",
"line": 2182,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 166,
"kind": "interface",
"line": 2201,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 167,
"kind": "interface",
"line": 2330,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 168,
"kind": "interface",
"line": 2402,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 169,
"kind": "interface",
"line": 2955,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 170,
"kind": "interface",
"line": 2969,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 171,
"kind": "interface",
"line": 2984,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 172,
"kind": "interface",
"line": 3006,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 173,
"kind": "interface",
"line": 3025,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 174,
"kind": "interface",
"line": 3047,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 175,
"kind": "interface",
"line": 3066,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 176,
"kind": "interface",
"line": 3088,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 177,
"kind": "interface",
"line": 3107,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 178,
"kind": "interface",
"line": 3129,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 179,
"kind": "interface",
"line": 3148,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 180,
"kind": "interface",
"line": 3180,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 181,
"kind": "interface",
"line": 3212,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 182,
"kind": "interface",
"line": 3246,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 183,
"kind": "interface",
"line": 3270,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 184,
"kind": "interface",
"line": 3294,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 185,
"kind": "interface",
"line": 3318,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 186,
"kind": "interface",
"line": 3342,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 187,
"kind": "interface",
"line": 3366,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 188,
"kind": "interface",
"line": 3390,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 191,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "tests/test_web_api.py"
},
{
"fact_id": 240,
"kind": "llm_provider",
"line": null,
"name": "OpenRouter",
"path": "tests/test_web_api.py"
},
{
"fact_id": 263,
"kind": "provider_registry",
"line": null,
"name": "LLM provider registry",
"path": "tests/test_web_api.py"
},
{
"fact_id": 294,
"kind": "test",
"line": null,
"name": "test_web_api.py",
"path": "tests/test_web_api.py"
}
],
"status": "candidate"
},
{
"evidence": [
{
"reference": "tests/test_scope_context_api.py",
"source_refs": [
{
"fact_id": 285,
"kind": "test",
"line": null,
"name": "test_scope_context_api.py",
"path": "tests/test_scope_context_api.py"
}
],
"status": "candidate",
"strength": "strong",
"type": "test"
},
{
"reference": "docs/schemas/repo-scope-context-response.json",
"source_refs": [
{
"fact_id": 30,
"kind": "documentation",
"line": null,
"name": "repo-scope-context-response.json",
"path": "docs/schemas/repo-scope-context-response.json"
}
],
"status": "candidate",
"strength": "medium",
"type": "documentation"
}
],
"features": [
{
"location": "multiple files",
"name": "Return compact JSON scope context by repository slug",
"primary_class": "api",
"source_refs": [
{
"fact_id": 30,
"kind": "documentation",
"line": null,
"name": "repo-scope-context-response.json",
"path": "docs/schemas/repo-scope-context-response.json"
},
{
"fact_id": 60,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 61,
"kind": "interface",
"line": 173,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 62,
"kind": "interface",
"line": 203,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 63,
"kind": "interface",
"line": 212,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 64,
"kind": "interface",
"line": 226,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 65,
"kind": "interface",
"line": 243,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 66,
"kind": "interface",
"line": 250,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 67,
"kind": "interface",
"line": 265,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 68,
"kind": "interface",
"line": 286,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 69,
"kind": "interface",
"line": 297,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 70,
"kind": "interface",
"line": 324,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 71,
"kind": "interface",
"line": 351,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 72,
"kind": "interface",
"line": 366,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 73,
"kind": "interface",
"line": 382,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 74,
"kind": "interface",
"line": 401,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 75,
"kind": "interface",
"line": 427,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 76,
"kind": "interface",
"line": 450,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 77,
"kind": "interface",
"line": 468,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 78,
"kind": "interface",
"line": 490,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 79,
"kind": "interface",
"line": 513,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 80,
"kind": "interface",
"line": 532,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 81,
"kind": "interface",
"line": 551,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 82,
"kind": "interface",
"line": 570,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 83,
"kind": "interface",
"line": 588,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 84,
"kind": "interface",
"line": 611,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 85,
"kind": "interface",
"line": 634,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 86,
"kind": "interface",
"line": 660,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 87,
"kind": "interface",
"line": 686,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 88,
"kind": "interface",
"line": 712,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 89,
"kind": "interface",
"line": 738,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 90,
"kind": "interface",
"line": 764,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 91,
"kind": "interface",
"line": 790,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 92,
"kind": "interface",
"line": 816,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 93,
"kind": "interface",
"line": 842,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 94,
"kind": "interface",
"line": 868,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 95,
"kind": "interface",
"line": 894,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 96,
"kind": "interface",
"line": 920,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 97,
"kind": "interface",
"line": 946,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 98,
"kind": "interface",
"line": 972,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 99,
"kind": "interface",
"line": 990,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 100,
"kind": "interface",
"line": 1013,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 101,
"kind": "interface",
"line": 1029,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 102,
"kind": "interface",
"line": 1047,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 103,
"kind": "interface",
"line": 1070,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 104,
"kind": "interface",
"line": 1086,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 105,
"kind": "interface",
"line": 1104,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 106,
"kind": "interface",
"line": 1127,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 107,
"kind": "interface",
"line": 1143,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 108,
"kind": "interface",
"line": 1161,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 109,
"kind": "interface",
"line": 1184,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 110,
"kind": "interface",
"line": 1200,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 111,
"kind": "interface",
"line": 1215,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 112,
"kind": "interface",
"line": 1241,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 113,
"kind": "interface",
"line": 1269,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 114,
"kind": "interface",
"line": 1287,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 115,
"kind": "interface",
"line": 1311,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 116,
"kind": "interface",
"line": 1327,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 117,
"kind": "interface",
"line": 1352,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 118,
"kind": "interface",
"line": 1378,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 119,
"kind": "interface",
"line": 1394,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 120,
"kind": "interface",
"line": 1416,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 121,
"kind": "interface",
"line": 1455,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 122,
"kind": "interface",
"line": 1478,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 123,
"kind": "interface",
"line": 1501,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 124,
"kind": "interface",
"line": 1684,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 125,
"kind": "interface",
"line": 1703,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 126,
"kind": "interface",
"line": 1718,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 127,
"kind": "interface",
"line": 1760,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 128,
"kind": "interface",
"line": 1767,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 190,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "tests/test_scope_context_api.py"
},
{
"fact_id": 285,
"kind": "test",
"line": null,
"name": "test_scope_context_api.py",
"path": "tests/test_scope_context_api.py"
}
],
"status": "candidate",
"type": "api"
},
{
"location": "multiple files",
"name": "HTTP API surface: possible API surface, GET /health, @app.get(, +49 more",
"primary_class": "API",
"source_refs": [
{
"fact_id": 57,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "docs/api-contract.md"
},
{
"fact_id": 59,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "src/repo_registry/web_api/__init__.py"
},
{
"fact_id": 60,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 61,
"kind": "interface",
"line": 173,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 62,
"kind": "interface",
"line": 203,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 63,
"kind": "interface",
"line": 212,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 64,
"kind": "interface",
"line": 226,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 65,
"kind": "interface",
"line": 243,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 66,
"kind": "interface",
"line": 250,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 67,
"kind": "interface",
"line": 265,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 68,
"kind": "interface",
"line": 286,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 69,
"kind": "interface",
"line": 297,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 70,
"kind": "interface",
"line": 324,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 71,
"kind": "interface",
"line": 351,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 72,
"kind": "interface",
"line": 366,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 73,
"kind": "interface",
"line": 382,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 74,
"kind": "interface",
"line": 401,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 75,
"kind": "interface",
"line": 427,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 76,
"kind": "interface",
"line": 450,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 77,
"kind": "interface",
"line": 468,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 78,
"kind": "interface",
"line": 490,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 79,
"kind": "interface",
"line": 513,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 80,
"kind": "interface",
"line": 532,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 81,
"kind": "interface",
"line": 551,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 82,
"kind": "interface",
"line": 570,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 83,
"kind": "interface",
"line": 588,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 84,
"kind": "interface",
"line": 611,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 85,
"kind": "interface",
"line": 634,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 86,
"kind": "interface",
"line": 660,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 87,
"kind": "interface",
"line": 686,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 88,
"kind": "interface",
"line": 712,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 89,
"kind": "interface",
"line": 738,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 90,
"kind": "interface",
"line": 764,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 91,
"kind": "interface",
"line": 790,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 92,
"kind": "interface",
"line": 816,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 93,
"kind": "interface",
"line": 842,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 94,
"kind": "interface",
"line": 868,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 95,
"kind": "interface",
"line": 894,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 96,
"kind": "interface",
"line": 920,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 97,
"kind": "interface",
"line": 946,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 98,
"kind": "interface",
"line": 972,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 99,
"kind": "interface",
"line": 990,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 100,
"kind": "interface",
"line": 1013,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 101,
"kind": "interface",
"line": 1029,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 102,
"kind": "interface",
"line": 1047,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 103,
"kind": "interface",
"line": 1070,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 104,
"kind": "interface",
"line": 1086,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 105,
"kind": "interface",
"line": 1104,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 106,
"kind": "interface",
"line": 1127,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 107,
"kind": "interface",
"line": 1143,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 108,
"kind": "interface",
"line": 1161,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 109,
"kind": "interface",
"line": 1184,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 110,
"kind": "interface",
"line": 1200,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 111,
"kind": "interface",
"line": 1215,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 112,
"kind": "interface",
"line": 1241,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 113,
"kind": "interface",
"line": 1269,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 114,
"kind": "interface",
"line": 1287,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 115,
"kind": "interface",
"line": 1311,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 116,
"kind": "interface",
"line": 1327,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 117,
"kind": "interface",
"line": 1352,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 118,
"kind": "interface",
"line": 1378,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 119,
"kind": "interface",
"line": 1394,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 120,
"kind": "interface",
"line": 1416,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 121,
"kind": "interface",
"line": 1455,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 122,
"kind": "interface",
"line": 1478,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 123,
"kind": "interface",
"line": 1501,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 124,
"kind": "interface",
"line": 1684,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 125,
"kind": "interface",
"line": 1703,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 126,
"kind": "interface",
"line": 1718,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 127,
"kind": "interface",
"line": 1760,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 128,
"kind": "interface",
"line": 1767,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 129,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "src/repo_registry/web_api/schemas.py"
},
{
"fact_id": 130,
"kind": "interface",
"line": 437,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 131,
"kind": "interface",
"line": 442,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 132,
"kind": "interface",
"line": 537,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 133,
"kind": "interface",
"line": 542,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 134,
"kind": "interface",
"line": 621,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 135,
"kind": "interface",
"line": 652,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 136,
"kind": "interface",
"line": 731,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 137,
"kind": "interface",
"line": 1069,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 138,
"kind": "interface",
"line": 1107,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 139,
"kind": "interface",
"line": 1139,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 140,
"kind": "interface",
"line": 1182,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 141,
"kind": "interface",
"line": 1366,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 142,
"kind": "interface",
"line": 1439,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 143,
"kind": "interface",
"line": 1478,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 144,
"kind": "interface",
"line": 1664,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 145,
"kind": "interface",
"line": 1676,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 146,
"kind": "interface",
"line": 1693,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 147,
"kind": "interface",
"line": 1710,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 148,
"kind": "interface",
"line": 1723,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 149,
"kind": "interface",
"line": 1744,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 150,
"kind": "interface",
"line": 1771,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 151,
"kind": "interface",
"line": 1796,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 152,
"kind": "interface",
"line": 1823,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 153,
"kind": "interface",
"line": 1846,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 154,
"kind": "interface",
"line": 1856,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 155,
"kind": "interface",
"line": 1883,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 156,
"kind": "interface",
"line": 1893,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 157,
"kind": "interface",
"line": 1918,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 158,
"kind": "interface",
"line": 1928,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 159,
"kind": "interface",
"line": 1955,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 160,
"kind": "interface",
"line": 1965,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 161,
"kind": "interface",
"line": 1991,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 162,
"kind": "interface",
"line": 2015,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 163,
"kind": "interface",
"line": 2132,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 164,
"kind": "interface",
"line": 2156,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 165,
"kind": "interface",
"line": 2182,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 166,
"kind": "interface",
"line": 2201,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 167,
"kind": "interface",
"line": 2330,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 168,
"kind": "interface",
"line": 2402,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 169,
"kind": "interface",
"line": 2955,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 170,
"kind": "interface",
"line": 2969,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 171,
"kind": "interface",
"line": 2984,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 172,
"kind": "interface",
"line": 3006,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 173,
"kind": "interface",
"line": 3025,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 174,
"kind": "interface",
"line": 3047,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 175,
"kind": "interface",
"line": 3066,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 176,
"kind": "interface",
"line": 3088,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 177,
"kind": "interface",
"line": 3107,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 178,
"kind": "interface",
"line": 3129,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 179,
"kind": "interface",
"line": 3148,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 180,
"kind": "interface",
"line": 3180,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 181,
"kind": "interface",
"line": 3212,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 182,
"kind": "interface",
"line": 3246,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 183,
"kind": "interface",
"line": 3270,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 184,
"kind": "interface",
"line": 3294,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 185,
"kind": "interface",
"line": 3318,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 186,
"kind": "interface",
"line": 3342,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 187,
"kind": "interface",
"line": 3366,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 188,
"kind": "interface",
"line": 3390,
"name": "python route decorator",
"path": "src/repo_registry/web_ui/views.py"
},
{
"fact_id": 190,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "tests/test_scope_context_api.py"
},
{
"fact_id": 191,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "tests/test_web_api.py"
},
{
"fact_id": 192,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "workplans/RREG-WP-0012-activity-core-context-api.md"
}
],
"status": "candidate",
"type": "API"
}
],
"name": "Provide Scope Context To Downstream Agents",
"primary_class": "coordination",
"source_refs": [
{
"fact_id": 30,
"kind": "documentation",
"line": null,
"name": "repo-scope-context-response.json",
"path": "docs/schemas/repo-scope-context-response.json"
},
{
"fact_id": 60,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 61,
"kind": "interface",
"line": 173,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 62,
"kind": "interface",
"line": 203,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 63,
"kind": "interface",
"line": 212,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 64,
"kind": "interface",
"line": 226,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 65,
"kind": "interface",
"line": 243,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 66,
"kind": "interface",
"line": 250,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 67,
"kind": "interface",
"line": 265,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 68,
"kind": "interface",
"line": 286,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 69,
"kind": "interface",
"line": 297,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 70,
"kind": "interface",
"line": 324,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 71,
"kind": "interface",
"line": 351,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 72,
"kind": "interface",
"line": 366,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 73,
"kind": "interface",
"line": 382,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 74,
"kind": "interface",
"line": 401,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 75,
"kind": "interface",
"line": 427,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 76,
"kind": "interface",
"line": 450,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 77,
"kind": "interface",
"line": 468,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 78,
"kind": "interface",
"line": 490,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 79,
"kind": "interface",
"line": 513,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 80,
"kind": "interface",
"line": 532,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 81,
"kind": "interface",
"line": 551,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 82,
"kind": "interface",
"line": 570,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 83,
"kind": "interface",
"line": 588,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 84,
"kind": "interface",
"line": 611,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 85,
"kind": "interface",
"line": 634,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 86,
"kind": "interface",
"line": 660,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 87,
"kind": "interface",
"line": 686,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 88,
"kind": "interface",
"line": 712,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 89,
"kind": "interface",
"line": 738,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 90,
"kind": "interface",
"line": 764,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 91,
"kind": "interface",
"line": 790,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 92,
"kind": "interface",
"line": 816,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 93,
"kind": "interface",
"line": 842,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 94,
"kind": "interface",
"line": 868,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 95,
"kind": "interface",
"line": 894,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 96,
"kind": "interface",
"line": 920,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 97,
"kind": "interface",
"line": 946,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 98,
"kind": "interface",
"line": 972,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 99,
"kind": "interface",
"line": 990,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 100,
"kind": "interface",
"line": 1013,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 101,
"kind": "interface",
"line": 1029,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 102,
"kind": "interface",
"line": 1047,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 103,
"kind": "interface",
"line": 1070,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 104,
"kind": "interface",
"line": 1086,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 105,
"kind": "interface",
"line": 1104,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 106,
"kind": "interface",
"line": 1127,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 107,
"kind": "interface",
"line": 1143,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 108,
"kind": "interface",
"line": 1161,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 109,
"kind": "interface",
"line": 1184,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 110,
"kind": "interface",
"line": 1200,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 111,
"kind": "interface",
"line": 1215,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 112,
"kind": "interface",
"line": 1241,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 113,
"kind": "interface",
"line": 1269,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 114,
"kind": "interface",
"line": 1287,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 115,
"kind": "interface",
"line": 1311,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 116,
"kind": "interface",
"line": 1327,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 117,
"kind": "interface",
"line": 1352,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 118,
"kind": "interface",
"line": 1378,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 119,
"kind": "interface",
"line": 1394,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 120,
"kind": "interface",
"line": 1416,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 121,
"kind": "interface",
"line": 1455,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 122,
"kind": "interface",
"line": 1478,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 123,
"kind": "interface",
"line": 1501,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 124,
"kind": "interface",
"line": 1684,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 125,
"kind": "interface",
"line": 1703,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 126,
"kind": "interface",
"line": 1718,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 127,
"kind": "interface",
"line": 1760,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 128,
"kind": "interface",
"line": 1767,
"name": "python route decorator",
"path": "src/repo_registry/web_api/app.py"
},
{
"fact_id": 190,
"kind": "interface",
"line": null,
"name": "possible API surface",
"path": "tests/test_scope_context_api.py"
},
{
"fact_id": 285,
"kind": "test",
"line": null,
"name": "test_scope_context_api.py",
"path": "tests/test_scope_context_api.py"
}
],
"status": "candidate"
}
],
"name": "Support Repo Scoping",
"primary_class": "repository-intelligence",
"source_refs": [
{
"fact_id": 56,
"kind": "intent",
"line": null,
"name": "INTENT",
"path": "INTENT.md"
},
{
"fact_id": 15,
"kind": "documentation",
"line": null,
"name": "README",
"path": "README.md"
},
{
"fact_id": 16,
"kind": "documentation",
"line": null,
"name": "abstraction-strategy.md",
"path": "docs/abstraction-strategy.md"
},
{
"fact_id": 17,
"kind": "documentation",
"line": null,
"name": "acceptance-policy.md",
"path": "docs/acceptance-policy.md"
},
{
"fact_id": 18,
"kind": "documentation",
"line": null,
"name": "adr-dependency-graph-visualization-framework.md",
"path": "docs/adr-dependency-graph-visualization-framework.md"
},
{
"fact_id": 19,
"kind": "documentation",
"line": null,
"name": "adr-ep-cap-003-vocabulary-ref-guard.md",
"path": "docs/adr-ep-cap-003-vocabulary-ref-guard.md"
},
{
"fact_id": 20,
"kind": "documentation",
"line": null,
"name": "api-contract.md",
"path": "docs/api-contract.md"
},
{
"fact_id": 21,
"kind": "documentation",
"line": null,
"name": "characteristic-evidence-model.md",
"path": "docs/characteristic-evidence-model.md"
},
{
"fact_id": 22,
"kind": "documentation",
"line": null,
"name": "classification-strategy.md",
"path": "docs/classification-strategy.md"
},
{
"fact_id": 23,
"kind": "documentation",
"line": null,
"name": "dependency-aware-scope-propagation.md",
"path": "docs/dependency-aware-scope-propagation.md"
},
{
"fact_id": 24,
"kind": "documentation",
"line": null,
"name": "dependency-visualization-exploration.md",
"path": "docs/dependency-visualization-exploration.md"
},
{
"fact_id": 25,
"kind": "documentation",
"line": null,
"name": "trusted-auto-approval.md",
"path": "docs/migrations/trusted-auto-approval.md"
},
{
"fact_id": 26,
"kind": "documentation",
"line": null,
"name": "operations.md",
"path": "docs/operations.md"
},
{
"fact_id": 27,
"kind": "documentation",
"line": null,
"name": "README",
"path": "docs/quality-criteria/README.md"
},
{
"fact_id": 28,
"kind": "documentation",
"line": null,
"name": "acceptance-quality-criteria.v1.json",
"path": "docs/quality-criteria/acceptance-quality-criteria.v1.json"
},
{
"fact_id": 29,
"kind": "documentation",
"line": null,
"name": "quality-criteria-registry.schema.json",
"path": "docs/schemas/quality-criteria-registry.schema.json"
},
{
"fact_id": 30,
"kind": "documentation",
"line": null,
"name": "repo-scope-context-response.json",
"path": "docs/schemas/repo-scope-context-response.json"
},
{
"fact_id": 31,
"kind": "documentation",
"line": null,
"name": "self-scoping-assessment.schema.json",
"path": "docs/schemas/self-scoping-assessment.schema.json"
},
{
"fact_id": 32,
"kind": "documentation",
"line": null,
"name": "scope-md-spec.md",
"path": "docs/scope-md-spec.md"
},
{
"fact_id": 33,
"kind": "documentation",
"line": null,
"name": "README",
"path": "docs/self-scoping/README.md"
},
{
"fact_id": 34,
"kind": "documentation",
"line": null,
"name": "repo-scoping-known-bad-2026-05-15-run-39.json",
"path": "docs/self-scoping/assessments/repo-scoping-known-bad-2026-05-15-run-39.json"
},
{
"fact_id": 35,
"kind": "documentation",
"line": null,
"name": "repo-scoping-post-wp0015-clean-2026-05-15.json",
"path": "docs/self-scoping/assessments/repo-scoping-post-wp0015-clean-2026-05-15.json"
},
{
"fact_id": 36,
"kind": "documentation",
"line": null,
"name": "repo-scoping-post-wp0015-clean-2026-05-15.md",
"path": "docs/self-scoping/assessments/repo-scoping-post-wp0015-clean-2026-05-15.md"
},
{
"fact_id": 37,
"kind": "documentation",
"line": null,
"name": "repo-scoping-golden-profile.v1.json",
"path": "docs/self-scoping/golden/repo-scoping-golden-profile.v1.json"
},
{
"fact_id": 38,
"kind": "documentation",
"line": null,
"name": "README",
"path": "docs/self-scoping/outcomes/README.md"
},
{
"fact_id": 39,
"kind": "documentation",
"line": null,
"name": "workflow.md",
"path": "docs/self-scoping/workflow.md"
},
{
"fact_id": 40,
"kind": "documentation",
"line": null,
"name": "semantic-retrieval.md",
"path": "docs/semantic-retrieval.md"
},
{
"fact_id": 41,
"kind": "documentation",
"line": null,
"name": "terminology.md",
"path": "docs/terminology.md"
}
],
"status": "candidate"
}
]
},
"known_regression_patterns": [],
"notes": [
"Generated by repo-scoping self-scoping assessment exporter.",
"Artifact has enough engine identity metadata for comparison."
],
"quality_gate_outcomes": [
{
"criteria_version": "repo-scoping-quality-criteria/v1",
"criterion_id": "RREG-QC-001",
"criterion_title": "Source Role Supports The Claim",
"element_id": 3,
"element_name": "Index Source Content With Provenance",
"element_type": "capability",
"outcome": "requires_review",
"reason": "All supporting refs are weak source roles for capability truth.",
"severity": "medium"
},
{
"criteria_version": "repo-scoping-quality-criteria/v1",
"criterion_id": "RREG-QC-006",
"criterion_title": "Fixtures And Schemas Do Not Become Product Claims",
"element_id": 3,
"element_name": "Index Source Content With Provenance",
"element_type": "capability",
"outcome": "downgraded",
"reason": "Candidate is primarily supported by tests, fixtures, schemas, or examples.",
"severity": "high"
}
],
"review_decisions": [
{
"accepted_after_edits": false,
"action": "quality_gate_evaluation",
"analysis_run_id": 1,
"created_at": "2026-05-15 16:30:44",
"criteria_version": "repo-scoping-quality-criteria/v1",
"criterion_ids": [
"RREG-QC-001",
"RREG-QC-006"
],
"decision_kind": "other",
"evidence_refs": [],
"id": 1,
"notes": "criteria_version=repo-scoping-quality-criteria/v1; criteria=RREG-QC-001, RREG-QC-006; outcomes=downgraded:1, requires_review:1; quality_gate_outcomes=2; rationale=Deterministic quality gates flagged candidates for review without approving registry truth.",
"policy_version": "",
"quality_criteria_version": "repo-scoping-quality-criteria/v1",
"rationale": "Deterministic quality gates flagged candidates for review without approving registry truth.",
"repository_id": 1,
"reviewer_id": "",
"reviewer_type": "deterministic-gate"
}
],
"schema_version": "self-scoping-assessment/v1",
"target_repository": {
"dirty_state": "clean",
"file_count": 139,
"repo_slug": "repo-scoping",
"repository_id": 1,
"source": "/home/worsch/repo-scoping",
"target_branch": "main",
"target_commit": "2c3dad80d646869827335cb6de849cdca272c85b"
}
}