|
| 1 | +%%{init: {'theme': 'base', 'themeVariables': {'fontSize': '13px'}}}%% |
| 2 | +sequenceDiagram |
| 3 | + participant Dumont as Viglet Dumont DEP<br/>(Connector) |
| 4 | + participant API as Turing ES REST API |
| 5 | + participant Artemis as Apache Artemis Queue |
| 6 | + participant Pipeline as Indexing Pipeline |
| 7 | + participant SNSite as SN Site Configuration |
| 8 | + participant Merge as Merge Provider Engine |
| 9 | + participant Solr as Apache Solr |
| 10 | + participant DB as Database |
| 11 | + participant Emb as Embedding Store<br/>(Chroma / PgVector / Milvus) |
| 12 | + |
| 13 | + Dumont->>API: POST document to SN Site |
| 14 | + API->>SNSite: Load site configuration<br/>(fields, facets, search behavior, spotlights) |
| 15 | + SNSite-->>API: Site config |
| 16 | + API->>Artemis: Enqueue indexing job (async) |
| 17 | + Artemis->>Pipeline: Deliver job |
| 18 | + |
| 19 | + Pipeline->>Merge: Check Merge Provider rules<br/>for this site and document |
| 20 | + alt Merge rule matched |
| 21 | + Merge->>Solr: Fetch existing document by join key |
| 22 | + Solr-->>Merge: Existing document fields |
| 23 | + Merge-->>Pipeline: Merged document<br/>(overwrite configured fields) |
| 24 | + else No merge rule |
| 25 | + Merge-->>Pipeline: Document unchanged |
| 26 | + end |
| 27 | + |
| 28 | + Pipeline->>Solr: Index document with mapped fields and facets |
| 29 | + alt Document matches a Spotlight |
| 30 | + Pipeline->>DB: Persist spotlight content<br/>(title, description, URL, position) |
| 31 | + end |
| 32 | + Pipeline->>Emb: Store vector embedding<br/>(if GenAI enabled for this site) |
0 commit comments