Commit graph

2936 commits

Author SHA1 Message Date
CREDO23
232cc937c5 docs: remove ADR 0001 (RAG/citation architecture shipped)
The RAG/citation/context redesign in ADR 0001 is implemented and validated
(KB + web on the unified [n] citation spine, pull-based retrieval, eager path
retired). Drop the ADR and the one stale docstring reference to it.
2026-06-25 18:50:58 +02:00
CREDO23
2beafbdec8 agent: retire eager KB priority/planner path and its dead flags
The pull-based KB design (on-demand search_knowledge_base tool + pre-injected
workspace tree) fully replaced the old eager retrieval path. Remove its last
remnants:

- Delete KnowledgePriorityMiddleware (knowledge_search.py) and its tests.
- Drop the kb_priority state field + reducer default; trim
  KbContextProjectionMiddleware to project only workspace_tree_text.
- Remove the now-dead feature flags enable_kb_priority_preinjection and
  enable_kb_planner_runnable across backend (flags, route schema, tests,
  env examples) and frontend (settings toggle, zod schema).
- Scrub <priority_documents> and stale KnowledgePriorityMiddleware references
  from prompts, docstrings, and the ADR.

No functional change: nothing wrote kb_priority and neither flag gated live
behavior after the cutover. Full backend suite green (pre-existing unrelated
failures aside).
2026-06-25 18:37:14 +02:00
CREDO23
0148647b98 prompts: remove orphaned system_prompt_composer surface
The legacy system_prompt_composer fragments and its default_system_instructions
wrapper were no longer referenced by any live code path (the main-agent prompt
builder owns composition now). Delete the whole orphaned tree and its test.
2026-06-25 18:37:04 +02:00
CREDO23
5bda944321 citations: normalize word-glued [n] markers
The model frequently writes citations glued to the preceding word
(docs[17]); the (?<!\w) lookbehind (added to dodge arr[1] array indexing)
silently skipped these, leaving raw [n] that fails to render and reads
like array access. Drop the lookbehind so glued citations resolve; genuine
code/array syntax stays protected by the existing code-region carve-out and
unresolved ordinals still drop harmlessly.
2026-06-25 16:28:31 +02:00
CREDO23
ce15016533 citations: consolidate prompts, retire eager path, refresh ADR
Rewrite the main-agent citation contract to a single [n] channel and sync
the orphaned system_prompt_composer surface to match; drop stale
[citation:chunk_id] / <chunk_index> references from dynamic_context and
provider hints. Reuse the shared hybrid search in the deliverables report
(citations omitted for now) and delete the orphaned report KB helper.
Remove the dead eager KnowledgePriorityMiddleware wiring (knowledge_priority
+ stack) and its legacy browse test. Update ADR 0001 to reflect the cutover.
2026-06-25 15:27:09 +02:00
CREDO23
49d675c065 web-search: register results on the citation registry (Channel B -> A)
web_search now registers each result as a WEB_RESULT (locator {url}) and
renders a <web_results> block of <document view="excerpt"> [n] passages,
returning Command(update={messages, citation_registry}) like
search_knowledge_base. Collapse the duplicate research-subagent web_search
into the shared tool and teach the prompts to cite web hits with [n].
2026-06-25 15:26:51 +02:00
CREDO23
c98bdea5cf search-kb: on-demand KB tool on the [n] spine; drop kb_matched_chunk_ids
The main agent's search_knowledge_base tool runs the hybrid spine, renders
a <retrieved_context> of numbered [n] passages, and persists the registry.
KB subagent prompts teach citing [n] from <document view="full"> reads
(evidence.chunk_ids -> evidence.citations). Delete the now-unused
search->read highlighting hand-off: the kb_matched_chunk_ids state field,
its reducer default, the tool's _matched_chunk_ids writer, and the dead
KnowledgePriorityMiddleware writes.
2026-06-25 15:26:39 +02:00
CREDO23
04a76b163b citations: conversation-scoped registry with finalize-time [n] resolution
Add the checkpointed CitationRegistry (load/merge helpers + state field)
and a lightweight CitationStateMiddleware so subagents can register into
the same conversation registry. Resolve [n] -> [citation:<payload>] at
stream finalize from the registry, polymorphically by source type.
2026-06-25 15:26:25 +02:00
CREDO23
265888d21c document-render: unify KB/web rendering on numbered [n] passages
Add a shared document_render package that renders sources as
<document view="excerpt|full"> blocks with server-assigned [n] passage
labels (KB locator {document_id, chunk_id}, web locator {url}). Wire the
KB read backend (kb_postgres) and read_file to the new renderer and drop
the legacy per-document XML renderer (document_xml, retrieved_context) and
the old chunk_index / matched="true" / <chunk id> read format.
2026-06-25 15:26:16 +02:00
CREDO23
852ab3a576 retrieval: add hybrid search behavior tests 2026-06-25 09:15:59 +02:00
CREDO23
e72b17fbed retrieval: instrument hybrid search; note deferred citation markers 2026-06-25 09:00:23 +02:00
CREDO23
e16a2af44e prompts: add ordinal citation contract 2026-06-25 08:35:59 +02:00
CREDO23
915ad80e19 retrieval: add unit tests for pure components 2026-06-25 08:23:30 +02:00
CREDO23
4fe208557a retrieval: add reranking wrapper and context service 2026-06-25 08:23:29 +02:00
CREDO23
407bfcd94f retrieval: add source label and retrieved-document adapter 2026-06-25 08:23:29 +02:00
CREDO23
608192057f retrieval: add search scope models and hybrid chunk search 2026-06-25 08:23:29 +02:00
CREDO23
26a1431e87 retrieved_context: drop document completeness concept 2026-06-25 08:23:29 +02:00
CREDO23
6bb20df510 citations: rewrite model [n] ordinals to frontend [citation:] markers 2026-06-25 06:48:25 +02:00
CREDO23
b043911325 references: route @chat through chat/ slice 2026-06-24 22:54:58 +02:00
CREDO23
e8a4239151 references: chat package surface 2026-06-24 22:54:58 +02:00
CREDO23
0179473f57 references: chat reference resolver 2026-06-24 22:54:58 +02:00
CREDO23
c0ebb9c26b references: chat access-checked thread lookup 2026-06-24 22:54:58 +02:00
CREDO23
db442b3961 retrieved_context: renderer tests 2026-06-24 22:38:47 +02:00
CREDO23
9ffbba8d8c retrieved_context: package surface 2026-06-24 22:38:47 +02:00
CREDO23
1f5da25ef5 retrieved_context: renderer 2026-06-24 22:38:47 +02:00
CREDO23
4d68fa8998 retrieved_context: models 2026-06-24 22:38:47 +02:00
CREDO23
939bfb2c18 references: discriminated per-kind reference types 2026-06-24 22:07:54 +02:00
CREDO23
efe9429133 references: connector field tests 2026-06-24 21:52:31 +02:00
CREDO23
bffe2491d6 references: resolve_references fan-out 2026-06-24 21:52:31 +02:00
CREDO23
9954a2d960 references: chat resolver 2026-06-24 21:52:31 +02:00
CREDO23
db9b32c72f references: connector resolver 2026-06-24 21:52:31 +02:00
CREDO23
5faf0da5bf references: folder path tests 2026-06-24 21:48:52 +02:00
CREDO23
b5a6e4c32a references: folder resolver 2026-06-24 21:48:52 +02:00
CREDO23
a5848f1d43 references: document resolver 2026-06-24 21:48:52 +02:00
CREDO23
7e147137d6 references: pointer renderer tests 2026-06-24 21:42:17 +02:00
CREDO23
ce67c282b9 references: package surface 2026-06-24 21:42:17 +02:00
CREDO23
0afaf94ee9 references: pointer renderer 2026-06-24 21:41:27 +02:00
CREDO23
ee9b9af8d3 references: models 2026-06-24 21:41:27 +02:00
CREDO23
ff5ea157bb test(chat): add citation registry tests 2026-06-24 21:35:19 +02:00
CREDO23
85b999a52d feat(chat): add citations package surface 2026-06-24 21:35:19 +02:00
CREDO23
61b8af0af4 feat(chat): add citation registry 2026-06-24 21:35:19 +02:00
CREDO23
98b164c2d3 feat(chat): add citation entry data shapes 2026-06-24 21:35:19 +02:00
CREDO23
5d79f91352 fix(chat): let search-space owners reference legacy null-creator chats
Mirror search_threads visibility in the referenced-chat resolver: a
search-space owner can now @-mention legacy threads that predate creator
tracking (null created_by_id), instead of those being silently dropped.
2026-06-23 18:30:15 +02:00
CREDO23
208ad9a643 test(chat): cover referenced-chat resolver and transcript budgeting
Add unit tests for role-specific turn extraction in the resolver and for
the transcript renderer: full rendering within budget, dropping oldest
turns with a marker, partial-tail fill of an overflowing turn, and
multi-chat tagging.
2026-06-23 17:04:43 +02:00
CREDO23
0e5ce83ee5 feat(chat): persist referenced-chat mention chips on user turns
Recognise the "thread" chip kind when building stored user content so
referenced-chat mentions survive reloads and regeneration.
2026-06-23 17:04:43 +02:00
CREDO23
857f1bb279 feat(chat): inject referenced-chat context into the new-chat agent input
Thread mentioned_thread_ids from the route through the orchestrator into
input-state assembly, resolve them for the requesting user, and append
the rendered referenced-chat block to the agent's query context.
2026-06-23 17:04:32 +02:00
CREDO23
afc555d971 feat(chat): resolve and render @-mentioned chats as read-only context
Add the referenced_chat_context slice: models for the data shapes, a
fail-closed resolver that fetches mentioned threads and their visible
turns under the same access rules as thread search, and a transcript
renderer that emits a budgeted <referenced_chat_context> block. When a
chat exceeds the per-reference character budget, recent turns are kept
and any leftover budget is filled with the overflowing turn's tail, with
truncation markers signalling the cut.
2026-06-23 17:04:27 +02:00
CREDO23
7169c22d29 feat(chat): allow @-mentioning chat threads in new-chat requests
Extend the chat contract so a turn can reference other conversations:
add the "thread" kind to MentionedDocumentInfo and a mentioned_thread_ids
field on NewChatRequest and RegenerateRequest.
2026-06-23 17:04:21 +02:00
Rohan Verma
cb9da1bc8b
Merge pull request #1533 from Glodykajabika/test/blocknote-to-markdown-unit-tests
Test/blocknote to markdown unit tests
2026-06-23 02:25:42 -07:00
Anish Sarkar
8a6c30c660 fix(chore): rename alembic migration for PATs 2026-06-23 13:11:07 +05:30