Skip to main content

What data Pensero processes, sends to AI, and stores

Per data type (tickets, pull requests, documents, messages, calendar events, Devin sessions): what Pensero processes, what is sent to an AI model, what is stored, and what is never read or never kept.

Written by Wayne

This article lists, for every type of data Pensero ingests, whether it is processed, whether it is sent to an AI model, and whether it is stored. It complements Security, which covers our controls and certifications, and each integration article, which lists the permissions we request.

How to read the matrix

  • Processed: Pensero reads the field to compute a metric, resolve an identity or link records.

  • Sent to AI: the field is included in a prompt sent to a large language model.

  • Stored: the field is kept in Pensero’s database.

  • No: the field is not read, or is not kept.

Where AI runs

  • Every model runs on Amazon Bedrock inside Pensero’s own AWS account. Content is never sent to the public OpenAI or Anthropic APIs.

  • Your content is used for inference only. No model is trained or fine-tuned on customer data.

  • All connectors are read-only against your tools. The only thing Pensero writes is its own Slack notifications.

  • Names, emails and avatars can be anonymised across the product from Privacy settings.

What is processed, what reaches AI, and what is stored

Data element

Processed

Sent to AI

Stored

Notes

Ticket (Jira, Linear, GitHub Issues, YouTrack)

Title, description

Yes

Yes

Yes

Cleared if the ticket is skipped

State, type, project, milestone, parent, estimation, dates

Yes

Yes, as prompt context

Yes

Creator / assignee identity (name, email, avatar)

Yes

No

Yes

Anonymised at display time when enabled

Comments

Yes

Yes

Yes

Attachment files

No

No

No

Only attachment metadata, used to link pull requests

Worklogs, Tempo, plugin and admin data

No

No

No

Never requested

Git pull request (GitHub, GitLab, Bitbucket)

Title, description

Yes

Yes

Yes

Code diff

Yes

Yes

No

Read to produce the summary, features, bug and quality checks; never persisted

Changed lines

Yes

Yes

Hash only

Stored as a one-way SHA-256 digest per line

Asset files and blank lines

No

No

No

Dropped

Repository source outside the diff, secrets, environment variables, workflows, wikis

No

No

No

Never requested

Reviews and review comments

Yes

Yes

Yes

Includes sentiment

Commit SHAs, branches, labels, dates, coverage

Yes

No

Yes

Summary, features, metrics, enrichment

Derived

No

Yes

Document (Notion, Confluence, Google Drive)

Document body text

Yes

Yes, full text or the version delta

Yes, full text

Cleared if the document is skipped

Title, url, properties, mime type, dates, author

Yes

Title only

Yes

Contribution shares, similarity signature, version history

Derived

No

Yes

Comments

Yes

Yes

Yes

Binary originals, Confluence attachment content

No

No

No

Only extracted text is read

Gmail, OneDrive, SharePoint

No

No

No

A document or calendar grant does not reach them

Message (Slack, Google Chat, Microsoft Teams)

Message text

Yes

Yes, the thread plus the person's own messages

Yes

Thread structure, reply counts, timestamps, channel metadata

Yes

No

Yes

Author identity

Yes

Name only

Yes

Pull request, ticket and document links in the text

Yes

No

Yes

Resolved into references

Direct messages and group DMs

No

No

No

Only public channels and private channels the bot was invited to

Uploaded file content, reactions and emoji

No

No

No

Messages from people not mapped to a Pensero user

No

No

No

Dropped during sync

Calendar event (Google Calendar, Microsoft 365)

Event title

Yes, pattern matching only

No

Yes

Absence detection uses fixed HR-tool title patterns, not AI

Description, location, url

No

No

Yes

Stored with the event, never interpreted

Start and end times, timezone, event type

Yes

No

Yes

Organizer, creator and attendees with response status

Yes

No

Yes

Out-of-office name, flag and source

Derived

No

Yes

Cleared if the event stops being marked out of office

Unrecognised shared-calendar titles

Yes

No

Yes

Kept so absence patterns can be extended

Ordinary meetings on a personal calendar

No

No

No

Not even requested unless focus-time tracking is enabled

Devin session

Original prompt

Yes

Yes

Yes

Full transcript, every turn

Yes

Yes

Yes

Devin's own analysis, tags, ACUs, message counts, size, status

Yes

Yes, as session facts

Yes

Raw API response

No

No

Yes, verbatim

Linked pull request urls and states

Yes

No

Yes

Matched to the pull request in Pensero

Repository checkout, shell output, browser session, artifacts

No

No

No

Not exposed by the Devin API

Notes worth highlighting

  • Code never lands in our database. A pull request diff is read to produce its summary, features and quality checks, then discarded. Only one-way hashes of the changed lines are kept, which is what lets us detect rework and duplicated work without retaining your source code.

  • Calendars never reach an AI model. Absence detection is pure pattern matching on the event title.

  • Personal calendars are minimised. Without focus-time tracking, Pensero only asks your calendar for out-of-office entries; ordinary meetings are never retrieved.

  • Documents are the one type stored in full, because contribution shares and duplicate detection are computed from the text itself.

For what Pensero calculates about individuals from this data, and how profiling differs from automated decision-making, see AI, profiling and automated decision-making: what Pensero calculates about individuals.

For our certifications, subprocessors and full data-processing details, see the Trust Center.

Did this answer your question?