Cross-Project Learning
Opt-in sharing of anonymized patterns and insights across the Bootspring community
Cross-Project Learning enables sharing anonymized development patterns and insights across the Bootspring community, improving recommendations for everyone.
Overview#
When enabled, Bootspring:
- Anonymizes your development patterns
- Contributes insights to the community pool
- Receives aggregated learnings from other projects
- Enhances your recommendations with community data
Privacy First#
All data is:
- Opt-in only - Nothing shared without explicit consent
- Fully anonymized - No identifying information
- Aggregated - Individual data never exposed
- Deletable - Right to be forgotten supported
What Gets Shared#
Patterns (if enabled)#
- Development workflow patterns
- Successful code patterns
- Error resolution patterns
Decisions (if enabled)#
- Decision types (not content)
- Outcome success rates
- Impact scores
Workflows (if enabled)#
- Workflow completion rates
- Phase durations
- Success metrics
What's Never Shared#
- Project names or identifiers
- File paths or code content
- User information
- API keys or secrets
- Business logic
- Any identifying information
Enabling Cross-Project Learning#
Grant Consent#
1# Enable all sharing
2bootspring cross-project enable
3
4# Enable specific sharing types
5bootspring cross-project enable --patterns --decisions
6
7# Check status
8bootspring cross-project statusConfiguration#
1// Via API
2const crossProject = require('bootspring/intelligence/cross-project');
3
4crossProject.grantConsent({
5 sharePatterns: true,
6 shareDecisions: true,
7 shareWorkflows: true
8});
9
10// Check consent status
11const status = crossProject.getConsentStatus();
12// {
13// active: true,
14// projectId: 'proj_abc123def456',
15// sharing: { patterns: true, decisions: true, workflows: true }
16// }Community Insights#
Viewing Insights#
Access aggregated community learnings:
1const insights = crossProject.fetchCommunityInsights();
2// {
3// patterns: [
4// { insight: 'Using database migrations reduces deployment failures by 85%',
5// confidence: 0.92, sampleSize: 1250 }
6// ],
7// decisions: [
8// { insight: 'OAuth providers reduce auth support tickets by 70%',
9// confidence: 0.85, sampleSize: 720 }
10// ],
11// workflows: [
12// { insight: 'Feature development workflow average completion: 4.2 days',
13// confidence: 0.90, sampleSize: 1800 }
14// ]
15// }Using Insights#
Insights automatically enhance recommendations:
1const enhanced = crossProject.enhanceWithCommunityInsights(recommendation);
2// {
3// ...recommendation,
4// communityInsights: [...],
5// communityConfidence: 0.89
6// }Filtering Insights#
// Get insights for a specific category
const dbInsights = crossProject.getRelevantInsights('database');
const authInsights = crossProject.getRelevantInsights('auth');Contributing Data#
Manual Contribution#
1// Contribute a pattern
2crossProject.contributePattern({
3 type: 'development',
4 category: 'testing',
5 pattern: 'integration-first',
6 outcome: 'success'
7});
8
9// Contribute a decision outcome
10crossProject.contributeDecision({
11 type: 'architecture',
12 category: 'database',
13 outcome: 'success',
14 impactScore: 0.8
15});
16
17// Contribute workflow completion
18crossProject.contributeWorkflow({
19 name: 'feature-development',
20 phases: 4,
21 completedPhases: 4,
22 success: true
23});Viewing Your Contributions#
1bootspring cross-project contributions
2
3# Output:
4# Your Contributions
5# ─────────────────────────────────
6# Total: 15
7# Patterns: 8
8# Decisions: 5
9# Workflows: 2
10# Last contribution: 2 hours agoData Transparency#
Export Your Data#
See exactly what has been shared:
1const myData = crossProject.exportMyData();
2// {
3// consent: { projectId: '...', givenAt: '...', sharing: {...} },
4// contributions: [
5// { id: '...', type: 'pattern', data: {...}, contributedAt: '...' }
6// ],
7// totalContributions: 15
8// }bootspring cross-project export > my-data.jsonDelete Your Data#
Exercise your right to be forgotten:
crossProject.deleteMyData();
// Revokes consent, deletes local data, requests server deletionbootspring cross-project delete-dataRevoking Consent#
bootspring cross-project disable
# Or via API
crossProject.revokeConsent();After revoking:
- No new data will be shared
- Previous contributions are deleted
- You can still view public community insights
How Anonymization Works#
Path Anonymization#
// Original
'/Users/john/projects/my-secret-app/src/auth/login.ts'
// Anonymized
'[PROJECT]/auth/anon_a7b3c9d2.ts'Field Removal#
Sensitive fields are automatically removed:
email,password,secret,key,tokenapi_key,auth,credential,privatephone,address,name,username
Identifier Hashing#
Remaining identifiers are hashed:
// Original
'user_12345'
// Anonymized
'anon_8f4d2e6a9b1c'API Reference#
1const crossProject = require('bootspring/intelligence/cross-project');
2
3// Consent management
4crossProject.grantConsent(options);
5crossProject.revokeConsent();
6crossProject.hasConsent();
7crossProject.getConsentStatus();
8
9// Contributing
10crossProject.contributePattern(pattern);
11crossProject.contributeDecision(decision);
12crossProject.contributeWorkflow(workflow);
13crossProject.getContributionStats();
14
15// Receiving insights
16crossProject.fetchCommunityInsights();
17crossProject.getRelevantInsights(category);
18crossProject.enhanceWithCommunityInsights(recommendation);
19
20// Transparency
21crossProject.getStatus();
22crossProject.exportMyData();
23crossProject.deleteMyData();