feat(context): add repo indexing service
CI / benchmark-publish (pull_request) Has been skipped
CI / lint (pull_request) Successful in 16s
CI / build (pull_request) Successful in 16s
CI / quality (pull_request) Successful in 23s
CI / security (pull_request) Successful in 35s
CI / typecheck (pull_request) Successful in 43s
CI / unit_tests (pull_request) Successful in 2m40s
CI / integration_tests (pull_request) Successful in 3m10s
CI / docker (pull_request) Successful in 40s
CI / coverage (pull_request) Successful in 5m1s
CI / benchmark-regression (pull_request) Successful in 31m13s

Add RepoIndexingService with incremental refresh, language detection,
SHA-256 hashing, and policy enforcement. Includes domain models,
DB persistence, DI wiring, Behave/Robot/ASV tests, and reference docs.

ISSUES CLOSED: #195
This commit is contained in:
2026-03-06 02:26:52 +00:00
parent 83f2f3a0a1
commit 7d958121ad
24 changed files with 3644 additions and 159 deletions
+6 -2
View File
@@ -267,7 +267,8 @@ def step_then_triple_pred_obj_uri_contains(
context: Context, pred: str, fragment: str
) -> None:
found = any(
t.predicate == pred and fragment in t.object_uri for t in context.triples
t.predicate == pred and t.object_uri is not None and fragment in t.object_uri
for t in context.triples
)
assert found, (
f"No triple with predicate={pred!r} and object_uri containing "
@@ -286,7 +287,10 @@ def step_then_triple_links_subject_to_object(
found = any(
t.predicate == pred
and s_frag in t.subject_uri
and (o_frag in t.object_uri or o_frag in t.object_value)
and (
(t.object_uri is not None and o_frag in t.object_uri)
or o_frag in t.object_value
)
for t in context.triples
)
assert found, (