Skip to content

chore(release): staging to production - 2025.11.12 - #683

Merged
maxtechera merged 16 commits into
productionfrom
staging
Nov 12, 2025
Merged

chore(release): staging to production - 2025.11.12#683
maxtechera merged 16 commits into
productionfrom
staging

Conversation

@github-actions

@github-actions github-actions Bot commented Nov 10, 2025

Copy link
Copy Markdown

🚀 Release: Staging to Production

Release Date: 2025-11-12

Changes in this release

  • "Claude Code Review workflow" (56026ec)
  • "Claude PR Assistant workflow" (0bec076)
  • fix(AGENT-153): add billing metadata to agentflow follow-up prompts (5b4c369)
  • fix(AGENT-153): use billingStripeCustomerId in handler and reduce logging (8c0818d)
  • fix(AGENT-153): add complete billing metadata to follow-up prompt traces (5c320e3)
  • fix(AGENT-127): ensure document store chunks always have userId/organizationId for multi-tenancy (c9baea7)
  • fix(AGENT-64): use flexible error.param matching for Stripe customer errors (3e72a6a)
  • fix(AGENT-64): handle Stripe customer not found errors gracefully (526379e)
  • feat(AGENT-132): add Linear MCP node integration (27f80d2)
  • fix(AGENT-133): fix back button navigation for agent canvas (8979815)

This PR is automatically created/updated when commits are pushed to staging.
Merging this PR will trigger the release workflow to create a new GitHub release.

diecoscai and others added 3 commits November 7, 2025 14:28
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Implements Linear MCP server integration with the following components:

- Linear API credential (LinearApi.credential.ts) for secure API key storage
- Linear MCP node (LinearMCP.ts) using SSE transport to connect to https://mcp.linear.app/sse
- Linear icon (linear.svg) for UI display
- Dynamic action loading via asyncMultiOptions
- Comprehensive error handling for invalid credentials

Follows TheAnswer MCP node patterns with tags: ['AAI'] and category: 'MCP Servers'.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
…r-mcp-node-to-theanswer

feat(AGENT-132): add Linear MCP node integration
@vercel

vercel Bot commented Nov 10, 2025

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Updated (UTC)
answerai-docs Building Building Preview Nov 10, 2025 4:52pm
the-answerai Building Building Preview Nov 10, 2025 4:52pm

…vas-back-button

fix(AGENT-133): fix back button navigation for agent canvas
diecoscai and others added 9 commits November 10, 2025 14:29
Add validation and error handling for invalid Stripe customer IDs in usage sync:

- Add customer ID validation before Stripe API calls (StripeProvider.ts:398-414)
- Handle "Customer not found" errors with automatic fallback to default customer (StripeProvider.ts:463-486, 509-513)
- Validate BILLING_DEFAULT_STRIPE_CUSTOMER_ID at server startup (config.ts:12-18)
- Fix null safety by removing unsafe non-null assertions (LangfuseProvider.ts:589)
- Document BILLING_DEFAULT_STRIPE_CUSTOMER_ID as required in .env.template

This prevents the billing sync cron job from failing when encountering invalid customer IDs from Langfuse trace metadata.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
…errors

Use .includes() instead of exact match to handle variations in Stripe error parameter format:
- Handles 'payload[stripe_customer_id]', 'stripe_customer_id', etc.
- Adds optional chaining (?.) for null safety
- More robust against future Stripe API changes

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
…izationId for multi-tenancy

- Add safeguard in _saveChunksToStorage to set userId/organizationId from entity
- Create migration to backfill existing chunks with NULL values
- Prevents privacy/multi-tenancy issues where users can't access their chunks

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Follow-up prompt traces were missing critical billing metadata fields,
causing billing sync to fail. This adds all required fields to match
the metadata structure of regular message traces.

Changes:
- Add billedUserId resolution (authenticated user OR chatflow owner)
- Pass messageId, organizationId, trackingMetadata to follow-up prompts
- Pass billingStripeCustomerId for correct billing attribution
- Update followUpPrompts.ts metadata to match handler.ts structure
- Add detailed comments explaining billing customer ID pattern

Metadata now includes:
✅ messageId - Links to parent message
✅ organizationId - Multi-tenancy filtering
✅ trackingMetadata - Custom tracking fields
✅ stripeCustomerId/customerId - Billing attribution
✅ userId - Actual user context

Files modified:
- packages/server/src/utils/buildChatflow.ts (agent + regular flows)
- packages/components/src/followUpPrompts.ts (metadata structure)

Related: AGENT-153
…ging

Updates handler.ts to use billingStripeCustomerId (from billedUserId
pattern) for trace metadata, ensuring correct billing attribution when
user is undefined (public/embedded chatflows bill the chatflow owner).

Also removes verbose logging in StripeProvider.getUpcomingInvoice to
reduce log noise.

Changes:
- handler.ts: Use billingStripeCustomerId with fallback to user.stripeCustomerId
- handler.ts: Add comments explaining billedUserId pattern
- StripeProvider.ts: Remove debug log.info statements

Related: AGENT-153
The executeAgentFlow path was missing the same billing metadata fields
that were added to buildChatflow.ts. Agent flows executed through this
path had traces missing organizationId, customerId/stripeCustomerId,
and tracking data, causing billing sync to fail.

This updates the agentflow generateFollowUpPrompts call to match the
pattern used in buildChatflow.ts:
- Add billedUserId resolution (authenticated user OR chatflow owner)
- Pass messageId, organizationId, trackingMetadata
- Pass billingStripeCustomerId for correct billing attribution
- Import User entity and billing config constants

Now all three follow-up prompt call sites have identical metadata:
1. buildChatflow.ts agent flows (lines 679-700)
2. buildChatflow.ts regular flows (lines 895-916)
3. buildAgentflow.ts (lines 1898-1925) ✅ FIXED

Related: AGENT-153
…762986183547

Add Claude Code GitHub Workflow
@github-actions github-actions Bot changed the title chore(release): staging to production - 2025.11.10 chore(release): staging to production - 2025.11.12 Nov 12, 2025
…ent-loader-chunk-count

fix(AGENT-127): ensure document store chunks always have userId/organizationId for multi-tenancy
…ge-sync-handle-customer-not-found-errors

fix(AGENT-64): handle Stripe customer not found errors gracefully
…ng-billing-metadata-in-follow-up-prompt-traces

fix(AGENT-153): add complete billing metadata to follow-up prompt traces
@maxtechera
maxtechera merged commit 55c0658 into production Nov 12, 2025
13 of 14 checks passed
@maxtechera
maxtechera temporarily deployed to staging - aai-unified2-flowise-moonstruck November 12, 2025 22:33 — with Render Inactive
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants