tabnine

Identity

  • Names: com.tabnine.cli; short alias tabnine.
  • Native format: tabnine-chat-jsonl, a Gemini-family recording dialect. Gemini writer pins do not qualify Tabnine.
  • Session ID: First native header sessionId, not a shortened filename. No namespace is specified by the fixture evidence.
  • Notes: thoughts[].description supplies reasoning. Message tokens are usage summaries because one-model-call boundaries are unproved. Explicit success/completed/error/cancelled tool statuses map; missing outcome is unknown. startTime supplies session start. Saved checkpoints are outside this journal mapping and require a declared loss.

Position basis

Use only positions established by the stated format and mapping evidence. Current-state rows without transcript positions form the snapshot tail. A protocol commit boundary takes precedence over physical EOF; uncommitted bytes are not a gap.

Destinations

tabnine: native facts without a standard field

  • Entity keys and links: Message id; toolCalls[].id, name and args. A result embedded in the same unique call object supplies raw output, not proof of model rendering. A later record with the same message ID replaces the entire earlier record; retain revisions or declare the loss when folding them. Reused call IDs across effective messages are ambiguous.
  • Lineage: The fixture describes kind: subagent and chats/<parent>/<agent>.jsonl, but has no native versioned writer contract for delegation. Retain header kind and parent-directory evidence; leave normalized spawning absent pending qualification. No copy or root mapping is qualified.

Usage

Use recorded per-message totals as a usage_summary covering that message. These totals do not establish that the message corresponds to a single model call. Keep alternate totals in native evidence, and do not add them to the selected summary. Select one report per native accounting identity only when this entry establishes that identity. Keep unjoinable or overlapping reports as native evidence. Declare incomplete semantic coverage. Schema defaults and placeholder zeros are not reported usage. Rules for what a backend includes in its usage counts require evidence; do not infer them from a model name.

Lane and unassigned facts

Facts without established session ownership use manifest _meta["com.tabnine.cli/unassigned"] with the common shape. Selection may retain these facts with any session subset, including an empty subset, but must not imply session ownership. State the selection policy in the export report.

Losses

Declare every applicable loss under ASR-157. Missing model rendering, accounting joins, lineage or exact context boundaries remain losses when this entry does not qualify them. Unknown ownership is not itself lost data. For omitted unassigned facts, use a documented vendor loss or report; do not create a new core category.

Evidence

Basis: fixture-verified: JSONL parser and authored tabnine-cli fixtures in ctxrs/ctx at 74f63227f1c7416607d704668f38b9c7c9de6a16. Schema notes refer to installer bundle 0.25.1; this is not a native capture or proprietary version-level conformance claim. Evidence applies only to the named formats and explicit mappings above. A real capture covers only exercised behavior. A no-model writer probe covers persistence, not model or tool execution. Authored tests do not qualify an agent version. Unlisted formats and link mappings remain unqualified.