Latest Updates

Documenting code, one commit at a time.

Improving Database Transaction Handling in Tests

Introduction

During recent testing of the social login functionality in our application, we encountered intermittent failures. These "flaky" tests were traced back to how database transactions were being handled, particularly in PostgreSQL.

The Challenge

The core issue was that within a test, a failed database query (e.g., due to a validation error during profile synchronization) would

Read more

Enhancing Prompt Handling in Post Generation

Introduction

We recently refined our post generation process to provide users with greater control over the final output, especially when incorporating creative or specific instructions. These enhancements focus on improving how user prompts are interpreted and applied during the content creation process.

Key Improvements

Prioritizing User Instructions

Previously, user-provided

Read more

Improving API Rate Limit Detection: A Percentage-Based Approach

When interacting with external APIs, especially those with rate limits, it's crucial to implement robust detection mechanisms to prevent service disruptions and ensure smooth operation. A recent adjustment in our application focused on refining the rate limit detection for the GitHub Search API, highlighting the importance of adaptable strategies.

The Problem with Fixed Thresholds

Read more

Seeding Initial Data for Tenant-Specific Features

Introduction

This post details the process of seeding initial data, specifically post examples, for tenant-specific features in our application. This approach allows for features like auto-generated posts or random content display that is tailored to each tenant.

The Need for Seed Data

When building multi-tenant applications, providing default or example data for each tenant can greatly

Read more

Enhancing Application Security with Rate Limiting and Fine-Grained Access Control

Securing web applications requires a multi-layered approach. Recent updates to our application focused on bolstering security through rate limiting on authentication routes and implementing granular access control for administrative resources.

Rate Limiting Authentication Routes

To mitigate brute-force attacks and other forms of abuse, we've implemented rate limiting on critical

Read more

Enhancing Application Logging with Tenant Context

Introduction

Effective logging is crucial for monitoring and debugging applications, especially in multi-tenant environments. This post explores how to enhance application logging by incorporating tenant-specific context, enabling better isolation and analysis of log data.

The Importance of Tenant-Aware Logging

In a multi-tenant system, logs from different tenants are often interleaved,

Read more