From fondo-pack
Automates CI/CD pipelines for Fondo tax and bookkeeping integrations: unit tests with mocked compliance data, integration tests for live API connectivity, and filing deadline monitoring.
How this skill is triggered — by the user, by Claude, or both
Slash command
/fondo-pack:fondo-ci-integrationThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Set up CI/CD for Fondo startup tax and bookkeeping integrations: run unit tests with mocked filing and compliance data on every PR, validate live API connectivity for tax filing status and bookkeeping records on merge to main. Fondo handles R&D tax credits, quarterly filings, and ongoing bookkeeping, so CI pipelines verify compliance data transforms, filing deadline monitoring, and automated al...
Set up CI/CD for Fondo startup tax and bookkeeping integrations: run unit tests with mocked filing and compliance data on every PR, validate live API connectivity for tax filing status and bookkeeping records on merge to main. Fondo handles R&D tax credits, quarterly filings, and ongoing bookkeeping, so CI pipelines verify compliance data transforms, filing deadline monitoring, and automated alert workflows.
# .github/workflows/fondo-ci.yml
name: Fondo CI
on:
pull_request:
paths: ['src/fondo/**', 'tests/**']
push:
branches: [main]
jobs:
unit-tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with: { node-version: '20' }
- run: npm ci
- run: npm test -- --reporter=verbose
integration-tests:
if: github.ref == 'refs/heads/main'
needs: unit-tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with: { node-version: '20' }
- run: npm ci
- run: npm run test:integration
env:
FONDO_API_KEY: ${{ secrets.FONDO_API_KEY }}
// tests/fondo-service.test.ts
import { describe, it, expect, vi } from 'vitest';
import { checkFilingDeadlines } from '../src/fondo-service';
vi.mock('../src/fondo-client', () => ({
FondoClient: vi.fn().mockImplementation(() => ({
listFilings: vi.fn().mockResolvedValue({
filings: [
{ id: 'fil_q1', type: '941', quarter: 'Q1-2026', status: 'filed', due_date: '2026-04-30' },
{ id: 'fil_q2', type: '941', quarter: 'Q2-2026', status: 'pending', due_date: '2026-07-31' },
],
}),
getComplianceStatus: vi.fn().mockResolvedValue({
r_and_d_credit: { status: 'eligible', estimated: 45000 },
state_filings: { ca: 'current', de: 'current' },
}),
getBookkeepingSummary: vi.fn().mockResolvedValue({
month: '2026-03', revenue: 120000, expenses: 85000, net: 35000,
}),
})),
}));
describe('Fondo Service', () => {
it('identifies upcoming filing deadlines', async () => {
const deadlines = await checkFilingDeadlines();
expect(deadlines.pending).toHaveLength(1);
expect(deadlines.pending[0].type).toBe('941');
});
});
// tests/integration/fondo.integration.test.ts
import { describe, it, expect } from 'vitest';
const hasKey = !!process.env.FONDO_API_KEY;
describe.skipIf(!hasKey)('Fondo Live API', () => {
it('retrieves compliance status', async () => {
const res = await fetch('https://api.fondo.com/v1/compliance/status', {
headers: { Authorization: `Bearer ${process.env.FONDO_API_KEY}` },
});
expect(res.status).toBe(200);
const body = await res.json();
expect(body).toHaveProperty('state_filings');
});
});
| CI Issue | Cause | Fix |
|---|---|---|
401 Unauthorized | Invalid API key | Regenerate at fondo.com dashboard settings |
| Empty filings list | No active filings for entity | Verify correct entity ID in API requests |
| Compliance data stale | Sync delay from accounting system | Add retry logic for recently updated records |
| Rate limit (429) | Too many requests in test suite | Serialize integration tests and add throttling |
| Missing R&D credit data | Entity not enrolled in R&D program | Check enrollment status before querying credit endpoint |
For deployment patterns, see fondo-deploy-integration.
npx claudepluginhub fleet-to-force/claude-code-plugins-plus --plugin fondo-pack5plugins reuse this skill
First indexed Jul 10, 2026
Automates CI/CD pipelines for Fondo tax and bookkeeping integrations: unit tests with mocked compliance data, integration tests for live API connectivity, and filing deadline monitoring.
Automate Finta data export and reporting in CI pipelines. Trigger with phrases like "finta CI", "finta automated reporting".
Sets up CI/CD for Fathom meeting integrations: mocked unit tests on PRs, live API validation on main. Trigger with 'fathom CI' or 'test fathom pipeline'.