Usare le viste attività
Associa fonti governate e usa viste salvate fisse in Processes.
Usare le viste attività
Le viste attività raggruppano l’attività autorizzata di Processes tramite riferimenti e associazioni espliciti. Un riferimento è un identificatore opaco nell’ambito del tenant. Non crea un record cliente, caso, richiesta o risultato di business.
Usare questa guida dopo che il proprietario della fonte ha registrato i fatti di ciclo di vita. Le viste attività mostrano quei fatti, comprese le attese e le Decision Request. Lineage Explorer resta la superficie di indagine sull’esecuzione.
Accesso e proprietà
workflow:read apre le route di Processes. Il proprietario della fonte
autorizza ogni fonte che contribuisce prima che KLA restituisca il suo
riferimento, conteggio, orario, relazione o elemento di cronologia.
activity_reference:manage gestisce le associazioni e activity_view:manage
gestisce le definizioni delle viste salvate. Una chiamata di associazione
risolve anche l’accesso in lettura alla fonte che nomina, quindi un’identità con
activity_reference:manage senza accesso in lettura a quella fonte riceve
FORBIDDEN.
| Operazione | Procedura generata del control plane |
|---|---|
| Associare una fonte | activityReferences.admit |
| Correggere un’associazione | activityReferences.correct |
| Leggere le associazioni effettive | activityReferences.listEffective |
| Creare, aggiornare, archiviare o recuperare una vista salvata | activityViews.create, activityViews.update, activityViews.archive, activityViews.unarchive |
| Interrogare gruppi, attività o lavoro correlato | activity.listGroups, activity.getGroup, activity.listActivity, activity.listRelatedGroups |
Il percorso di query legge la proiezione dell’API primaria. Non chiama l’API di un proprietario per ogni riga. Il proprietario della fonte resta responsabile dei suoi fatti di ciclo di vita, del suo contenuto e del suo dettaglio di fonte.
Associare due richieste a un riferimento cliente
Usare riferimenti espliciti forniti dal proprietario della fonte o
dall’integrazione. Non dedurre mai un riferimento dal testo di un prompt, dal
testo visualizzato di una fonte o dal contenuto di un messaggio. Il primo corpo
associa una richiesta a un riferimento cliente e a un riferimento di richiesta.
Salvarlo come request-104-association.json.
{
"references": [
{ "namespace": "customer", "key": "external_id", "value": "CMB-42" },
{ "namespace": "request", "key": "external_id", "value": "REQUEST-104" }
],
"source": {
"sourceType": "input_wait",
"sourceId": "11111111-1111-4111-8111-111111111111",
"sourceRevision": "wait-104-v1"
}
}
activityReferences.listEffective porta da solo il localizzatore di fonte e
restituisce le associazioni che contribuiscono attualmente alla proiezione.
Salvarlo come request-104-source.json.
{
"source": {
"sourceType": "input_wait",
"sourceId": "11111111-1111-4111-8111-111111111111",
"sourceRevision": "wait-104-v1"
}
}
kla api activityReferences admit --input @request-104-association.json
kla api activityReferences listEffective --input @request-104-source.json
Usare activityReferences.correct quando cambia l’associazione effettiva. La
correzione nomina l’associazione che sostituisce. L’associazione precedente
resta nella cronologia e smette di contribuire alla proiezione effettiva.
Salvare la correzione come request-104-correction.json.
{
"reference": { "namespace": "request", "key": "external_id", "value": "REQUEST-104-CORRECTED" },
"source": {
"sourceType": "input_wait",
"sourceId": "11111111-1111-4111-8111-111111111111",
"sourceRevision": "wait-104-v2"
},
"supersedesAssociationId": "22222222-2222-4222-8222-222222222222"
}
kla api activityReferences correct --input @request-104-correction.json
Le fonti con tombstone restano rimosse dopo la riproduzione. Una correzione o un
tombstone può portare la copertura a partial o unavailable; non ripristina
il contenuto rimosso.
Creare una vista salvata fissa
Le viste salvate accettano una configurazione fissa. I filtri consentiti sono l’uguaglianza di riferimento, il tipo di fonte, lo stato registrato e un intervallo di date inclusivo. API, CLI e UI rifiutano campi formula, alberi di espressione arbitrari, operatori personalizzati e un campo di risultato di business.
Una vista di ambito lavoro elenca le singole richieste. Salvare questa
definizione come customer-request-history.json.
{
"name": "Customer request history",
"grouping": { "namespace": "request", "key": "external_id" },
"labels": { "grouping": "Request" },
"scope": "work",
"orderedColumns": ["reference", "pending_work", "latest_activity", "waiting_since"],
"filters": {
"referenceEquals": [],
"sourceKinds": ["input_wait", "input_event", "execution"],
"statuses": ["waiting", "completed"]
},
"sort": { "field": "latest_activity", "direction": "desc" }
}
Il lavoro correlato appartiene a una vista di ambito soggetto che porta un
raggruppamento secondario. activity.listRelatedGroups rifiuta ogni altra
configurazione con secondary_grouping_required. Salvare questa definizione
come customer-history-view.json.
{
"name": "Customer history",
"grouping": { "namespace": "customer", "key": "external_id" },
"labels": { "grouping": "Customer", "secondaryGrouping": "Request" },
"scope": "subject",
"secondaryGrouping": { "namespace": "request", "key": "external_id" },
"orderedColumns": ["reference", "pending_work", "latest_activity", "secondary_reference"],
"filters": {
"referenceEquals": [],
"sourceKinds": ["input_wait", "input_event", "execution"],
"statuses": ["waiting", "completed"]
},
"sort": { "field": "latest_activity", "direction": "desc" }
}
Un aggiornamento sostituisce l’intera configurazione salvata. Il corpo porta
ogni campo di configurazione con l’id della vista e la sua expectedRevision
corrente. Questo aggiornamento aggiunge la colonna della scadenza. Salvarlo come
customer-request-history-update.json.
{
"id": "33333333-3333-4333-8333-333333333333",
"expectedRevision": 1,
"name": "Customer request history",
"grouping": { "namespace": "request", "key": "external_id" },
"labels": { "grouping": "Request" },
"scope": "work",
"orderedColumns": ["reference", "pending_work", "latest_activity", "waiting_since", "deadline"],
"filters": {
"referenceEquals": [],
"sourceKinds": ["input_wait", "input_event", "execution"],
"statuses": ["waiting", "completed"]
},
"sort": { "field": "latest_activity", "direction": "desc" }
}
L’archiviazione conserva la definizione e rimuove la vista dall’elenco. Richiede
l’id della vista e la revisione restituita dall’aggiornamento. Salvarla come
customer-request-history-archive.json.
{
"id": "33333333-3333-4333-8333-333333333333",
"expectedRevision": 2
}
Il recupero ripristina una vista archiviata e richiede la revisione restituita
dall’archiviazione. Salvarlo come customer-request-history-unarchive.json.
{
"id": "33333333-3333-4333-8333-333333333333",
"expectedRevision": 3
}
kla api activityViews create --input @customer-request-history.json
kla api activityViews create --input @customer-history-view.json
kla api activityViews update --input @customer-request-history-update.json
kla api activityViews archive --input @customer-request-history-archive.json
kla api activityViews unarchive --input @customer-request-history-unarchive.json
Ogni modifica di una vista salvata restituisce la revisione successiva. Ricaricare la definizione salvata prima di ritentare un conflitto.
Interrogare il lavoro e la storia cliente
Ogni query nomina una vista salvata. Un filtro richiesto restringe il filtro
salvato e un campo di ordinamento richiesto deve comparire negli
orderedColumns salvati. Ogni risposta riuscita fornisce asOf, coverage e
nextCursor. totalCount è limitato allo snapshot autorizzato e può essere
null quando la query raggiunge il suo limite di aggregazione.
activity.listGroups elenca i gruppi della vista di ambito lavoro. Salvare la
query come waiting-requests-query.json.
{
"viewId": "33333333-3333-4333-8333-333333333333",
"filters": {
"referenceEquals": [],
"sourceKinds": ["input_wait"],
"statuses": ["waiting"]
},
"limit": 25,
"sort": { "field": "latest_activity", "direction": "desc" }
}
activity.getGroup legge un gruppo. Richiede referenceId e non accetta
limit né sort. Salvare la query come request-104-group.json.
{
"viewId": "33333333-3333-4333-8333-333333333333",
"referenceId": "44444444-4444-4444-8444-444444444444"
}
activity.listActivity legge la cronologia di un riferimento e la pagina con il
cursore. Salvare la query come request-104-timeline.json.
{
"viewId": "33333333-3333-4333-8333-333333333333",
"referenceId": "44444444-4444-4444-8444-444444444444",
"limit": 25,
"sort": { "field": "latest_activity", "direction": "desc" }
}
activity.listRelatedGroups nomina la vista di ambito soggetto e il riferimento
cliente, poi restituisce i gruppi di richiesta sottostanti. Salvare la query
come customer-42-history.json.
{
"viewId": "55555555-5555-4555-8555-555555555555",
"referenceId": "66666666-6666-4666-8666-666666666666",
"limit": 25,
"sort": { "field": "latest_activity", "direction": "desc" }
}
kla api activity listGroups --input @waiting-requests-query.json
kla api activity getGroup --input @request-104-group.json
kla api activity listActivity --input @request-104-timeline.json
kla api activity listRelatedGroups --input @customer-42-history.json
Il cursore restituito lega la forma della query e lo snapshot di proiezione. Usarlo solo per la stessa vista, lo stesso riferimento, gli stessi filtri e lo stesso ordinamento. Selezionare Aggiorna per avviare un nuovo snapshot autorizzato.
Usare il client TypeScript tipizzato
Il client TypeScript del control plane usa le stesse procedure tRPC della CLI. Trasporta il token di accesso e l’intestazione di tenant attraverso il suo trasporto configurato. Gli SDK di governance Node e Python non pubblicano metodi per le viste attività.
import type { AppRouter } from '@kla/api';
import { createControlPlaneClient } from '@kla/api-client';
const client = createControlPlaneClient<AppRouter>({
baseUrl: process.env.KLA_API_URL!,
tenantId: process.env.KLA_TENANT_ID!,
token: process.env.KLA_ACCESS_TOKEN!,
});
const view = await client.activityViews.create.mutate(configuration);
const groups = await client.activity.listGroups.query({ viewId: view.id, limit: 25 });
Il client riceve lo stesso contratto di configurazione tipizzato della UI. L’autorizzazione delle fonti avviene comunque sul server per ogni query.
Esaminare l’attività corrente
Aprire Processes e selezionare una vista attività. L’elenco dei gruppi mostra riferimenti di lavoro distinti. Aprire un riferimento di lavoro per la sua cronologia. Aprire un riferimento di soggetto per il lavoro correlato. Usare i collegamenti del proprietario per proseguire l’indagine in Lineage Explorer o Decision Desk quando l’identità corrente può leggere quella fonte.
Copertura e freschezza descrivono lo snapshot di proiezione restituito. Un risultato parziale può omettere attività di una fonte. Una modifica dei permessi rimuove una fonte alla successiva lettura autorizzata.
