Skip to content

Models: F

View as Markdown
  • id: str
  • revision_id: str | None (revisionId on the wire) (optional)
  • type: str
  • scope: kindgi.client.FactScope
  • version: int
  • created_at: AwareDatetime (createdAt on the wire)
  • updated_at: AwareDatetime | None (updatedAt on the wire) (optional)
  • content: Any | None (optional)
  • content_ref: str | None (contentRef on the wire) (optional)
  • content_hash: str | None (contentHash on the wire) (optional)
  • size: int | None (optional)
  • embedding_model: str | None (embeddingModel on the wire) (optional)
  • retention: kindgi.client.Retention | None (optional)
  • source: kindgi.client.FactSource | None (optional)
  • caused_by_log_id: list[str] | None (causedByLogId on the wire) (optional)
  • supersedes: str | None (optional)
  • trust: Optional[Annotated[Union[Literal['verified', 'asserted', 'unverified'], str], <kindgi.client._open.OpenEnum object at 0x107c4bdd0>]] (optional)
  • verified_by: str | None (verifiedBy on the wire) (optional)
  • verified_at: AwareDatetime | None (verifiedAt on the wire) (optional)
  • attributed_to: kindgi.client.FactAttribution | None (attributedTo on the wire) (optional)
  • generated_by: kindgi.client.FactGeneratedBy | None (generatedBy on the wire) (optional)
  • subjects: list[kindgi.client.FactSubject] | None (optional)
  • valid_from: AwareDatetime | None (validFrom on the wire) (optional)
  • valid_until: AwareDatetime | None (validUntil on the wire) (optional)
  • observed_at: AwareDatetime | None (observedAt on the wire) (optional)
  • invalidated_at: AwareDatetime | None (invalidatedAt on the wire) (optional)
  • invalidated_by: str | None (invalidatedBy on the wire) (optional)
  • invalidation_reason: Optional[Annotated[Union[Literal['superseded', 'deleted', 'erased', 'expired'], str], <kindgi.client._open.OpenEnum object at 0x107c4bdd0>]] (invalidationReason on the wire) (optional)
  • review: Optional[Annotated[Union[Literal['pending'], str], <kindgi.client._open.OpenEnum object at 0x107c4bdd0>]] (optional)
  • expires_at: AwareDatetime | None (expiresAt on the wire) (optional)

Who asserted a fact, set by the server from the writer.

  • kind: Union[Literal['user', 'service', 'agent'], str]
  • id: str
  • agent_version: str | None (agentVersion on the wire) (optional)
  • data: list[kindgi.client.Fact]
  • next_cursor: str | None (nextCursor on the wire) (optional)
  • has_more: bool (hasMore on the wire)

The run step that wrote a fact, for one an agent wrote.

  • run_id: str (runId on the wire)
  • step_id: str | None (stepId on the wire) (optional)
  • tool_call_id: str | None (toolCallId on the wire) (optional)
  • data: list[kindgi.client.Fact]

Fact scope object. tenantId is required; every optional key narrows the fact (userId, orgId, projectId, threadId, sessionId, participantId). A fact is readable by whoever has every container it names. Additional keys accepted for forward compatibility.

  • tenant_id: str (tenantId on the wire)
  • user_id: str | None (userId on the wire) (optional)
  • org_id: str | None (orgId on the wire) (optional)
  • project_id: str | None (projectId on the wire) (optional)
  • thread_id: str | None (threadId on the wire) (optional)
  • session_id: str | None (sessionId on the wire) (optional)
  • participant_id: str | None (participantId on the wire) (optional)
  • kind: Union[Literal['http-api', 'blob', 'mcp-tool', 'external-db', 'user-input'], str]
  • uri: str | None (optional)
  • freshness: kindgi.client.SourceFreshness
  • refresh: kindgi.client.SourceRefresh

Whom a fact is about: what access and erasure requests by person find.

  • kind: Union[Literal['participant', 'user', 'external'], str]
  • id: str

One group of failed runs: the same cause, subject and version.

  • code: str | None (optional)
  • reason: str | None (optional)
  • subject: kindgi.client.FailureSubject
  • version: str | None (optional)
  • count: int
  • first_seen: AwareDatetime (firstSeen on the wire)
  • last_seen: AwareDatetime (lastSeen on the wire)
  • example_run_id: uuid.UUID (exampleRunId on the wire)

Whose runs a failure group counts: an agent's turns, or a flow's runs.

  • kind: Union[Literal['agent', 'flow'], str]
  • id: str

Optional filter narrowing the export set. Composition is AND — every populated field must match. Absent / empty filter exports every record for the tenant.

  • run_id: str | None (runId on the wire) (optional)
  • agent_id: str | None (agentId on the wire) (optional)
  • flow_id: str | None (flowId on the wire) (optional)
  • kind: str | None (optional)
  • from_: AwareDatetime | None (from on the wire) (optional)
  • to: AwareDatetime | None (optional)

A finished top-level run: its identity and outcome, never its input or output. Field names match GET /v1/runs/{runId}.

  • id: uuid.UUID
  • project_id: uuid.UUID (projectId on the wire)
  • flow_id: str (flowId on the wire)
  • flow_version: str (flowVersion on the wire)
  • status: Union[Literal['completed', 'failed', 'cancelled'], str]
  • dry_run: bool (dryRun on the wire)
  • failure_message: str | None (failureMessage on the wire)
  • failure: kindgi.client.RunFailure | None (optional)
  • created_at: AwareDatetime (createdAt on the wire)
  • completed_at: AwareDatetime (completedAt on the wire)
  • usage: kindgi.client.RunTreeUsage | None (optional)
  • agent: kindgi.client.RunAgent | None (optional)

The person made the tenant's admin and member, by email: the runtime's own sign-in finds them. The runtime gives them every capability but secrets:reveal, to put on the keys they make. Absent: the answer carries an admin key instead, which takes the full system capability.

  • email: str
  • name: str
  • person_id: str (personId on the wire)

An improvement proposal: a change to one data block an agent version pins, for one live scope, taken through the same comparison, gate and promotion as any other version.

  • id: uuid.UUID
  • agent_id: str (agentId on the wire)
  • from_version: str (fromVersion on the wire)
  • scope: kindgi.client.LiveScopeTenant | kindgi.client.LiveScopeOrg | kindgi.client.LiveScopeProject | kindgi.client.LiveScopeSegment | kindgi.client.LiveScopeUnrecognized
  • tier: Union[Literal['settings-block', 'prompt-block'], str]
  • change: kindgi.client.ProposalChange
  • hypothesis: str
  • evidence: kindgi.client.Evidence1 | None (optional)
  • drafter: kindgi.client.ProposalDrafter
  • status: Union[Literal['draft', 'evaluating', 'evaluated', 'not-better', 'evaluation-failed', 'in-review', 'promoted', 'refused', 'rejected', 'expired', 'superseded', 'rolled-back', 'withdrawn'], str]
  • candidate: kindgi.client.ProposalCandidate | None (optional)
  • evaluation: kindgi.client.ProposalEvaluation | None (optional)
  • promotion: kindgi.client.ProposalPromotion | None (optional)
  • rolled_back: kindgi.client.RolledBack | None (rolledBack on the wire) (optional)
  • withdrawn: kindgi.client.Withdrawn | None (optional)
  • created_at: AwareDatetime (createdAt on the wire)
  • updated_at: AwareDatetime (updatedAt on the wire)
  • data: list[kindgi.client.FixProposal]
  • has_more: bool (hasMore on the wire)
  • next_cursor: str | None (nextCursor on the wire) (optional)
  • id: str
  • version: str
  • project_id: uuid.UUID | None (projectId on the wire) (optional)
  • name: str | None (optional)
  • description: str | None (optional)
  • nodes: list[kindgi.client.FlowNode]
  • edges: list[kindgi.client.FlowEdge]
  • max_parallelism: int | None (maxParallelism on the wire) (optional)
  • metadata: dict[str, Any] | None (optional)
  • pins: kindgi.client.FlowPins | None (optional)
  • pins_digest: str | None (pinsDigest on the wire) (optional)
  • derived_from: kindgi.client.VersionDerivation | None (derivedFrom on the wire) (optional)
  • unregistered_at: AwareDatetime | None (unregisteredAt on the wire) (optional)
  • data: list[kindgi.client.Flow]
  • next_cursor: str | None (nextCursor on the wire) (optional)
  • has_more: bool (hasMore on the wire)
  • id: str
  • from_: str (from on the wire)
  • to: str
  • when: dict[str, Any] | None (optional)
  • policy: dict[str, Any] | None (optional)
  • root: str
  • id: str
  • kind: Union[Literal['tool', 'agent', 'loop', 'fanout', 'subgraph'], str]
  • ref: str | None (optional)
  • config: dict[str, Any] | None (optional)

The exact tool and agent versions a flow version runs: its lockfile. Set by the runtime when the version is published, never in the publish body: each tool the flow runs, and each agent it runs at no named version, resolves once to its latest version then, which every run of that flow version uses. Absent on a version published before pins existed (it binds the latest versions per run).

  • tools: dict[str, str]
  • agents: dict[str, str]
  • id: str
  • version: str

Agents and tools a flow runs at other exact versions than the flow version's pins ("this flow, with acme.scorer at 0.4.0"), without publishing a new flow version: a comparison's flow candidate (versions on the start body and the run's comparison), and the flow runs that replay it (a run's versions). Each id must be an agent or tool the flow uses.

  • tools: dict[str, str] | None (optional)
  • agents: dict[str, str] | None (optional)

The part of these sums judged on this output itself (a replay judged after it ran). Absent when none was.

  • yes_weight: float (yesWeight on the wire)
  • total_weight: float (totalWeight on the wire)
  • items: int