Skip to main content

Summary

Projects may occasionally become inaccessible or disappear due to accidental bulk deletions or system incidents. When projects are deleted through the Braintrust UI, they are soft-deleted (marked as deleted but not permanently removed from the database). Braintrust maintains backups and can restore deleted projects quickly upon request. This incident highlighted the need for better deletion safeguards, including confirmation dialogs for bulk operations and comprehensive deletion audit logging tied to specific users.

Symptoms

  • One or more projects suddenly missing from your organization’s project list
  • Previously accessible projects returning “not found” or permission errors
  • Multiple projects disappearing simultaneously (indicating a bulk deletion)
  • No clear indication in the UI or logs about what caused the disappearance

Workarounds

If you notice projects have disappeared, contact Braintrust support immediately. The support team can restore deleted projects from backups with minimal data loss. Time is critical—the faster you report the issue, the more complete the restoration will be.

Information to Provide

When contacting support, include:
- Organization name
- Project ID(s) if known
- Project name(s)
- Approximate time when projects disappeared
- Number of projects affected
- Any recent changes to team permissions or bulk operations

Expected Timeline

Typical restoration process:
1. Initial response: Within hours during business hours
2. Investigation: 1-2 hours to identify scope
3. Data restoration: Usually completed same day
4. Verification: Confirm projects are accessible

Option 2: Preventive Measures for Enterprise Customers

To prevent accidental project deletions in your organization, implement the following safeguards proactively.

Restrict Project Deletion Permissions

Recommended permission structure:
1. Remove project deletion rights from regular users
2. Grant deletion permissions only to administrators
3. Require explicit approval workflow for bulk operations
4. Use API tokens with restricted scopes for automation

Regular Backup Verification

# Python SDK - List and document all projects regularly
import braintrust
from datetime import datetime

# Initialize client
client = braintrust.login()

# Get all projects
projects = client.list_projects()

# Document project inventory
with open(f"project_inventory_{datetime.now().strftime('%Y%m%d')}.txt", "w") as f:
    for project in projects:
        f.write(f"{project.id},{project.name},{project.created}\n")

print(f"Documented {len(projects)} projects")

TypeScript SDK

// TypeScript SDK - List and document all projects regularly
import { Braintrust } from "@braintrust/api";

const client = new Braintrust();

async function documentProjects() {
  const projects = await client.projects.list();

  const timestamp = new Date().toISOString().split('T')[0];
  const inventory = projects.map(p =>
    `${p.id},${p.name},${p.created}`
  ).join('\n');

  // Save to file or logging system
  console.log(`Documented ${projects.length} projects`);
  return inventory;
}

documentProjects();

Notes

  • Projects deleted through the UI are soft-deleted, not permanently removed, making restoration possible
  • The system does not currently maintain detailed logs of which specific projects were restored during a recovery operation
  • Bulk delete operations in the UI currently do not show a secondary confirmation dialog—exercise caution when selecting multiple projects
  • API calls for project management do not include deletion capabilities by default, reducing risk from automated systems
  • Deletion operations initiated from the Braintrust-hosted webapp do not generate logs in customer-hosted dataplanes
  • Braintrust is actively implementing enhanced deletion safeguards including: confirmation dialogs for bulk operations, user-tied deletion audit logging, and improved permission controls
  • For enterprise customers, consider implementing a regular project inventory snapshot process to facilitate verification after any incident
  • Fast response is critical—report missing projects immediately to support@braintrust.dev to ensure complete data recovery

References