projscan 3.0.4 → 3.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +45 -25
- package/dist/cli/commands/dogfood.d.ts +1 -0
- package/dist/cli/commands/dogfood.js +78 -0
- package/dist/cli/commands/dogfood.js.map +1 -0
- package/dist/cli/commands/start.js +7 -0
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/cli/index.js +2 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/core/adoption.js +24 -2
- package/dist/core/adoption.js.map +1 -1
- package/dist/core/ast.d.ts +6 -0
- package/dist/core/ast.js +59 -11
- package/dist/core/ast.js.map +1 -1
- package/dist/core/bugHunt.js +3 -0
- package/dist/core/bugHunt.js.map +1 -1
- package/dist/core/dataflow.js +98 -9
- package/dist/core/dataflow.js.map +1 -1
- package/dist/core/dogfood.d.ts +7 -0
- package/dist/core/dogfood.js +345 -0
- package/dist/core/dogfood.js.map +1 -0
- package/dist/core/fixFirst.d.ts +8 -0
- package/dist/core/fixFirst.js +109 -0
- package/dist/core/fixFirst.js.map +1 -0
- package/dist/core/frameworkSources.d.ts +3 -1
- package/dist/core/frameworkSources.js +44 -3
- package/dist/core/frameworkSources.js.map +1 -1
- package/dist/core/indexCache.js +5 -1
- package/dist/core/indexCache.js.map +1 -1
- package/dist/core/preflight.js +12 -7
- package/dist/core/preflight.js.map +1 -1
- package/dist/core/qualityScorecard.js +5 -1
- package/dist/core/qualityScorecard.js.map +1 -1
- package/dist/core/releaseEvidence.d.ts +1 -0
- package/dist/core/releaseEvidence.js +152 -8
- package/dist/core/releaseEvidence.js.map +1 -1
- package/dist/core/start.js +47 -3
- package/dist/core/start.js.map +1 -1
- package/dist/core/taint.js +89 -9
- package/dist/core/taint.js.map +1 -1
- package/dist/core/workplan.js +3 -0
- package/dist/core/workplan.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/projscan-sbom.cdx.json +6 -6
- package/dist/tool-manifest.json +2 -2
- package/dist/types.d.ts +152 -0
- package/dist/utils/baseline.js +23 -2
- package/dist/utils/baseline.js.map +1 -1
- package/dist/utils/formatSupport.d.ts +1 -0
- package/dist/utils/formatSupport.js +1 -0
- package/dist/utils/formatSupport.js.map +1 -1
- package/package.json +4 -2
- package/public/.well-known/security.txt +6 -0
- package/public/brand/baseframe-labs/mark-dark-on-dark.png +0 -0
- package/public/brand/baseframe-labs/mark-dark.png +0 -0
- package/public/brand/baseframe-labs/mark-dark.svg +1 -0
- package/public/brand/baseframe-labs/mark-light-on-white.png +0 -0
- package/public/brand/baseframe-labs/mark-light.png +0 -0
- package/public/brand/baseframe-labs/mark-light.svg +1 -0
- package/public/brand/baseframe-labs/wordmark-dark-on-dark.png +0 -0
- package/public/brand/baseframe-labs/wordmark-dark.png +0 -0
- package/public/brand/baseframe-labs/wordmark-dark.svg +1 -0
- package/public/brand/baseframe-labs/wordmark-light-on-white.png +0 -0
- package/public/brand/baseframe-labs/wordmark-light.png +0 -0
- package/public/brand/baseframe-labs/wordmark-light.svg +1 -0
package/dist/types.d.ts
CHANGED
|
@@ -311,6 +311,17 @@ export interface WorkplanVerification {
|
|
|
311
311
|
commands: string[];
|
|
312
312
|
expected: string;
|
|
313
313
|
}
|
|
314
|
+
export interface FixFirstRecommendation {
|
|
315
|
+
id: string;
|
|
316
|
+
title: string;
|
|
317
|
+
source: string;
|
|
318
|
+
priority: WorkplanPriority;
|
|
319
|
+
whyFirst: string;
|
|
320
|
+
files: string[];
|
|
321
|
+
owner?: string;
|
|
322
|
+
commands: string[];
|
|
323
|
+
expected?: string;
|
|
324
|
+
}
|
|
314
325
|
export interface WorkplanTask {
|
|
315
326
|
id: string;
|
|
316
327
|
priority: WorkplanPriority;
|
|
@@ -339,6 +350,7 @@ export interface WorkplanReport {
|
|
|
339
350
|
summary: string;
|
|
340
351
|
topRisks: WorkplanTopRisk[];
|
|
341
352
|
tasks: WorkplanTask[];
|
|
353
|
+
fixFirst?: FixFirstRecommendation;
|
|
342
354
|
coordination: WorkplanCoordination;
|
|
343
355
|
suggestedNextActions: PreflightSuggestedAction[];
|
|
344
356
|
truncated?: boolean;
|
|
@@ -408,6 +420,7 @@ export interface BugHuntReport {
|
|
|
408
420
|
};
|
|
409
421
|
topSuspects: BugHuntFinding[];
|
|
410
422
|
fixQueue: BugHuntFinding[];
|
|
423
|
+
fixFirst?: FixFirstRecommendation;
|
|
411
424
|
verificationMatrix: Array<{
|
|
412
425
|
command: string;
|
|
413
426
|
reason: string;
|
|
@@ -450,6 +463,8 @@ export interface EvidencePackPrSummary {
|
|
|
450
463
|
trust: EvidencePackTrustCalibration;
|
|
451
464
|
topRisks: EvidencePackTopRisk[];
|
|
452
465
|
teamRoutes: EvidencePackTeamRoute[];
|
|
466
|
+
ownershipSuggestion?: string;
|
|
467
|
+
fixFirst?: FixFirstRecommendation;
|
|
453
468
|
nextCommands: string[];
|
|
454
469
|
baselineTrend?: BaselineTrend;
|
|
455
470
|
}
|
|
@@ -591,6 +606,18 @@ export interface StartAdoptionGap {
|
|
|
591
606
|
summary: string;
|
|
592
607
|
command?: string;
|
|
593
608
|
}
|
|
609
|
+
export interface StartAdoptionLoopMetric {
|
|
610
|
+
id: string;
|
|
611
|
+
label: string;
|
|
612
|
+
target: string;
|
|
613
|
+
command?: string;
|
|
614
|
+
}
|
|
615
|
+
export interface StartAdoptionLoop {
|
|
616
|
+
cadence: 'every_pr';
|
|
617
|
+
why: string;
|
|
618
|
+
metrics: StartAdoptionLoopMetric[];
|
|
619
|
+
nextCommands: string[];
|
|
620
|
+
}
|
|
594
621
|
export interface StartReport {
|
|
595
622
|
schemaVersion: 1;
|
|
596
623
|
readOnly: true;
|
|
@@ -618,11 +645,128 @@ export interface StartReport {
|
|
|
618
645
|
mcpReady: boolean;
|
|
619
646
|
};
|
|
620
647
|
topRisks: StartRisk[];
|
|
648
|
+
fixFirst?: FixFirstRecommendation;
|
|
621
649
|
adoptionGaps: StartAdoptionGap[];
|
|
650
|
+
adoptionLoop?: StartAdoptionLoop;
|
|
622
651
|
nextActions: PreflightSuggestedAction[];
|
|
623
652
|
handoff?: WorkplanHandoffPayload;
|
|
624
653
|
truncated?: boolean;
|
|
625
654
|
}
|
|
655
|
+
export type DogfoodRepoStatus = 'pass' | 'warn' | 'fail';
|
|
656
|
+
export interface DogfoodFeedbackResponse {
|
|
657
|
+
repo?: string;
|
|
658
|
+
pr?: string;
|
|
659
|
+
reviewer?: string;
|
|
660
|
+
useful?: boolean;
|
|
661
|
+
minutesSaved?: number;
|
|
662
|
+
preventedBadEdit?: boolean;
|
|
663
|
+
ownerRoutingClear?: boolean;
|
|
664
|
+
nextCommandClear?: boolean;
|
|
665
|
+
falsePositiveRules?: string[];
|
|
666
|
+
missingSignals?: string[];
|
|
667
|
+
noisyFindings?: string[];
|
|
668
|
+
note?: string;
|
|
669
|
+
}
|
|
670
|
+
export interface DogfoodFeedbackInput {
|
|
671
|
+
responses: DogfoodFeedbackResponse[];
|
|
672
|
+
}
|
|
673
|
+
export interface DogfoodRepoValidation {
|
|
674
|
+
feedbackResponses: number;
|
|
675
|
+
usefulResponses: number;
|
|
676
|
+
minutesSaved: number;
|
|
677
|
+
preventedBadEdits: number;
|
|
678
|
+
ownerRoutingClear: number;
|
|
679
|
+
nextCommandClear: number;
|
|
680
|
+
falsePositiveRules: string[];
|
|
681
|
+
missingSignals: string[];
|
|
682
|
+
noisyFindings: string[];
|
|
683
|
+
}
|
|
684
|
+
export interface DogfoodWebsiteProof {
|
|
685
|
+
headline: string;
|
|
686
|
+
metrics: string[];
|
|
687
|
+
bullets: string[];
|
|
688
|
+
markdown: string;
|
|
689
|
+
}
|
|
690
|
+
export interface DogfoodMarketValidation {
|
|
691
|
+
status: 'proven' | 'needs_feedback' | 'needs_more_repos' | 'needs_tuning';
|
|
692
|
+
summary: string;
|
|
693
|
+
repoCoverage: {
|
|
694
|
+
target: number;
|
|
695
|
+
evaluated: number;
|
|
696
|
+
targetMet: boolean;
|
|
697
|
+
};
|
|
698
|
+
feedback: {
|
|
699
|
+
responses: number;
|
|
700
|
+
usefulResponses: number;
|
|
701
|
+
usefulnessRate: number;
|
|
702
|
+
preventedBadEdits: number;
|
|
703
|
+
ownerRoutingClear: number;
|
|
704
|
+
nextCommandClear: number;
|
|
705
|
+
minutesSaved: {
|
|
706
|
+
total: number;
|
|
707
|
+
average: number;
|
|
708
|
+
max: number;
|
|
709
|
+
};
|
|
710
|
+
};
|
|
711
|
+
falsePositive: {
|
|
712
|
+
totalReports: number;
|
|
713
|
+
noisyRules: Array<{
|
|
714
|
+
rule: string;
|
|
715
|
+
count: number;
|
|
716
|
+
}>;
|
|
717
|
+
missingSignals: Array<{
|
|
718
|
+
signal: string;
|
|
719
|
+
count: number;
|
|
720
|
+
}>;
|
|
721
|
+
noisyFindings: Array<{
|
|
722
|
+
finding: string;
|
|
723
|
+
count: number;
|
|
724
|
+
}>;
|
|
725
|
+
};
|
|
726
|
+
firstPr: {
|
|
727
|
+
readyRepos: number;
|
|
728
|
+
repeatUseReadyRepos: number;
|
|
729
|
+
requiredFeedbackQuestions: string[];
|
|
730
|
+
};
|
|
731
|
+
websiteProof: DogfoodWebsiteProof;
|
|
732
|
+
}
|
|
733
|
+
export interface DogfoodRepoResult {
|
|
734
|
+
path: string;
|
|
735
|
+
name: string;
|
|
736
|
+
status: DogfoodRepoStatus;
|
|
737
|
+
healthScore: number;
|
|
738
|
+
mcpReady: boolean;
|
|
739
|
+
prCommentReady: boolean;
|
|
740
|
+
repeatUseReady: boolean;
|
|
741
|
+
verdict: EvidencePackVerdict;
|
|
742
|
+
gaps: string[];
|
|
743
|
+
feedbackQuestions: string[];
|
|
744
|
+
validation: DogfoodRepoValidation;
|
|
745
|
+
nextCommands: string[];
|
|
746
|
+
}
|
|
747
|
+
export interface DogfoodReport {
|
|
748
|
+
schemaVersion: 1;
|
|
749
|
+
readOnly: true;
|
|
750
|
+
rootPath: string;
|
|
751
|
+
targetRepoCount: number;
|
|
752
|
+
summary: string;
|
|
753
|
+
repos: DogfoodRepoResult[];
|
|
754
|
+
totals: {
|
|
755
|
+
reposEvaluated: number;
|
|
756
|
+
passingRepos: number;
|
|
757
|
+
warningRepos: number;
|
|
758
|
+
failingRepos: number;
|
|
759
|
+
prCommentReady: number;
|
|
760
|
+
repeatUseReady: number;
|
|
761
|
+
mcpReady: number;
|
|
762
|
+
usefulFeedback: number;
|
|
763
|
+
minutesSaved: number;
|
|
764
|
+
preventedBadEdits: number;
|
|
765
|
+
falsePositiveReports: number;
|
|
766
|
+
};
|
|
767
|
+
marketValidation: DogfoodMarketValidation;
|
|
768
|
+
suggestedNextActions: PreflightSuggestedAction[];
|
|
769
|
+
}
|
|
626
770
|
export interface GraphCorpusFixtureMetrics {
|
|
627
771
|
name: string;
|
|
628
772
|
fixture: string;
|
|
@@ -665,6 +809,7 @@ export interface QualityScorecardReport {
|
|
|
665
809
|
health: HealthScore;
|
|
666
810
|
dimensions: QualityScorecardDimension[];
|
|
667
811
|
topRisks: QualityScorecardRisk[];
|
|
812
|
+
fixFirst?: FixFirstRecommendation;
|
|
668
813
|
commands: string[];
|
|
669
814
|
suggestedNextActions: PreflightSuggestedAction[];
|
|
670
815
|
truncated?: boolean;
|
|
@@ -765,6 +910,13 @@ export interface BaselineRecurringRule {
|
|
|
765
910
|
export interface BaselineTrend {
|
|
766
911
|
scoreDirection: 'up' | 'down' | 'flat';
|
|
767
912
|
scoreDelta: number;
|
|
913
|
+
riskDirection?: 'up' | 'down' | 'flat';
|
|
914
|
+
riskDelta?: number;
|
|
915
|
+
qualityScoreBefore?: number;
|
|
916
|
+
qualityScoreAfter?: number;
|
|
917
|
+
newIssueCount?: number;
|
|
918
|
+
resolvedIssueCount?: number;
|
|
919
|
+
changedSinceBaseline?: string[];
|
|
768
920
|
newHotspots: string[];
|
|
769
921
|
recurringNoisyRules: BaselineRecurringRule[];
|
|
770
922
|
summary: string;
|
package/dist/utils/baseline.js
CHANGED
|
@@ -51,7 +51,7 @@ export function computeDiff(before, currentIssues, currentHotspots) {
|
|
|
51
51
|
newIssues,
|
|
52
52
|
resolvedIssues,
|
|
53
53
|
hotspotDiff,
|
|
54
|
-
trend: buildTrend(scoreDelta, before, after, hotspotDiff),
|
|
54
|
+
trend: buildTrend(scoreDelta, before, after, hotspotDiff, newIssues, resolvedIssues),
|
|
55
55
|
};
|
|
56
56
|
}
|
|
57
57
|
function diffHotspots(before, after) {
|
|
@@ -106,24 +106,45 @@ function diffHotspots(before, after) {
|
|
|
106
106
|
resolved.sort((a, b) => (b.beforeScore ?? 0) - (a.beforeScore ?? 0));
|
|
107
107
|
return { rose, fell, appeared, resolved };
|
|
108
108
|
}
|
|
109
|
-
function buildTrend(scoreDelta, before, after, hotspotDiff) {
|
|
109
|
+
function buildTrend(scoreDelta, before, after, hotspotDiff, newIssues, resolvedIssues) {
|
|
110
110
|
const roundedDelta = round1(scoreDelta);
|
|
111
|
+
const riskDelta = round1(-scoreDelta);
|
|
111
112
|
const recurringNoisyRules = recurringRules(before.issueRuleCounts ?? countBaselineIssuesById(before), after.issueRuleCounts ?? countBaselineIssuesById(after));
|
|
112
113
|
const newHotspots = (hotspotDiff?.appeared ?? []).map((entry) => entry.relativePath).slice(0, 5);
|
|
113
114
|
const scoreDirection = roundedDelta > 0 ? 'up' : roundedDelta < 0 ? 'down' : 'flat';
|
|
115
|
+
const riskDirection = riskDelta > 0 ? 'up' : riskDelta < 0 ? 'down' : 'flat';
|
|
116
|
+
const changedSinceBaseline = buildChangedSinceBaseline(newIssues, resolvedIssues, newHotspots, recurringNoisyRules);
|
|
114
117
|
const summary = [
|
|
115
118
|
`score ${scoreDirection}${roundedDelta === 0 ? '' : ` ${roundedDelta > 0 ? '+' : ''}${roundedDelta}`}`,
|
|
119
|
+
`risk ${riskDirection}${riskDelta === 0 ? '' : ` ${riskDelta > 0 ? '+' : ''}${riskDelta}`}`,
|
|
116
120
|
newHotspots.length > 0 ? `${newHotspots.length} new hotspot(s)` : 'no new hotspots',
|
|
117
121
|
recurringNoisyRules.length > 0 ? `${recurringNoisyRules.length} recurring noisy rule(s)` : 'no recurring noisy rules',
|
|
118
122
|
].join('; ');
|
|
119
123
|
return {
|
|
120
124
|
scoreDirection,
|
|
121
125
|
scoreDelta: roundedDelta,
|
|
126
|
+
riskDirection,
|
|
127
|
+
riskDelta,
|
|
128
|
+
qualityScoreBefore: before.score,
|
|
129
|
+
qualityScoreAfter: after.score,
|
|
130
|
+
newIssueCount: newIssues.length,
|
|
131
|
+
resolvedIssueCount: resolvedIssues.length,
|
|
132
|
+
changedSinceBaseline,
|
|
122
133
|
newHotspots,
|
|
123
134
|
recurringNoisyRules,
|
|
124
135
|
summary,
|
|
125
136
|
};
|
|
126
137
|
}
|
|
138
|
+
function buildChangedSinceBaseline(newIssues, resolvedIssues, newHotspots, recurringNoisyRules) {
|
|
139
|
+
const changes = [];
|
|
140
|
+
changes.push(newIssues.length > 0 ? `${newIssues.length} new issue(s): ${newIssues.slice(0, 3).join('; ')}` : '0 new issues');
|
|
141
|
+
changes.push(resolvedIssues.length > 0 ? `${resolvedIssues.length} resolved issue(s): ${resolvedIssues.slice(0, 3).join('; ')}` : '0 resolved issues');
|
|
142
|
+
changes.push(newHotspots.length > 0 ? `new hotspot(s): ${newHotspots.join(', ')}` : 'no new hotspots');
|
|
143
|
+
if (recurringNoisyRules.length > 0) {
|
|
144
|
+
changes.push(`recurring noisy rule(s): ${recurringNoisyRules.map((rule) => `${rule.id} ${rule.before}->${rule.after}`).join(', ')}`);
|
|
145
|
+
}
|
|
146
|
+
return changes.slice(0, 5);
|
|
147
|
+
}
|
|
127
148
|
function countIssuesById(issues) {
|
|
128
149
|
const counts = {};
|
|
129
150
|
for (const issue of issues)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseline.js","sourceRoot":"","sources":["../../src/utils/baseline.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"baseline.js","sourceRoot":"","sources":["../../src/utils/baseline.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,7 @@ export declare const COMMAND_FORMAT_SUPPORT: {
|
|
|
15
15
|
readonly diagram: readonly ["console", "json", "markdown"];
|
|
16
16
|
readonly diff: readonly ["console", "json", "markdown"];
|
|
17
17
|
readonly doctor: readonly ["console", "json", "markdown", "sarif", "html"];
|
|
18
|
+
readonly dogfood: readonly ["console", "json"];
|
|
18
19
|
readonly 'evidence-pack': readonly ["console", "json"];
|
|
19
20
|
readonly explain: readonly ["console", "json", "markdown"];
|
|
20
21
|
readonly 'explain-issue': readonly ["console", "json", "markdown"];
|
|
@@ -14,6 +14,7 @@ export const COMMAND_FORMAT_SUPPORT = {
|
|
|
14
14
|
diagram: ['console', 'json', 'markdown'],
|
|
15
15
|
diff: ['console', 'json', 'markdown'],
|
|
16
16
|
doctor: ['console', 'json', 'markdown', 'sarif', 'html'],
|
|
17
|
+
dogfood: ['console', 'json'],
|
|
17
18
|
'evidence-pack': ['console', 'json'],
|
|
18
19
|
explain: ['console', 'json', 'markdown'],
|
|
19
20
|
'explain-issue': ['console', 'json', 'markdown'],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatSupport.js","sourceRoot":"","sources":["../../src/utils/formatSupport.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"formatSupport.js","sourceRoot":"","sources":["../../src/utils/formatSupport.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "projscan",
|
|
3
3
|
"mcpName": "io.github.abhiyoheswaran1/projscan",
|
|
4
|
-
"version": "3.0.
|
|
4
|
+
"version": "3.0.6",
|
|
5
5
|
"description": "Agent-first code intelligence. MCP server (2025-03-26) with AST parsing for JavaScript, TypeScript, Python, Go, Java, Ruby, Rust, PHP, C#, Kotlin, Swift, and C++; stable v3 semantic graph (projscan_semantic_graph), dataflow risk engine with bridge-helper detection (projscan_dataflow), code graph, file + per-function AST cyclomatic complexity, per-function fan-in + fan-out, coupling + cycle detection, structural PR diff with HTML reporter, coverage report with HTML reporter, intent-grounded one-call PR review (projscan_review with optional `intent` arg, new taint flows, contract changes, and newDataflowRisks) and long-running PR-watch mode with structured per-bucket deltas (projscan_review_watch), first-60-seconds workflow orientation (projscan_start), agent workplans (projscan_workplan), bug-hunt queues (projscan_bug_hunt), product-line planning (projscan_release_train), evidence packs (projscan_evidence_pack), regression planning (projscan_regression_plan), agent briefs (projscan_agent_brief), quality scorecards (projscan_quality_scorecard), and preflight with supply-chain IOC evidence, rule-driven fix suggestions + mechanical apply layer with rollback (projscan_apply_fix, projscan_fix_suggest, projscan_explain_issue), source-to-sink taint analysis (projscan_taint) with truncation reporting, transitive blast-radius analysis with cross-repo mode (projscan_impact for files and symbols), cross-repo workspace registration + intelligence (projscan_workspace_graph), per-function semantic search chunks (sub-file embeddings), per-rule confidence + severity drift + cost-summary analytics with live streaming (projscan_cost_summary), stable local analyzer + reporter plugin API (projscan_plugin, CLI --reporter, opt-in via PROJSCAN_PLUGINS_PREVIEW=1), monorepo workspace awareness with cross-package import policy + per-package dependencies / outdated / audit, BM25 + optional semantic search, cursor pagination, progress notifications, context-budgeted output, and a stable-surface CI guard. CLI on the side.",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"main": "./dist/index.js",
|
|
@@ -16,7 +16,9 @@
|
|
|
16
16
|
"docs/PLUGIN-AUTHORING.md",
|
|
17
17
|
"docs/PLUGIN-GALLERY.md",
|
|
18
18
|
"docs/plugin.schema.json",
|
|
19
|
-
"docs/examples/plugins"
|
|
19
|
+
"docs/examples/plugins",
|
|
20
|
+
"public/brand/baseframe-labs",
|
|
21
|
+
"public/.well-known/security.txt"
|
|
20
22
|
],
|
|
21
23
|
"scripts": {
|
|
22
24
|
"build": "tsc && node scripts/copy-wasm.mjs && node scripts/generate-tool-manifest.mjs",
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg viewBox="0 0 32 32" width="512" height="512" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="3.5" y="3.5" width="25" height="25" rx="6" stroke="#f3f0e8" stroke-width="2"/><line x1="9" y1="22" x2="23" y2="22" stroke="#ff6444" stroke-width="2" stroke-linecap="round"/><rect x="13" y="11" width="6" height="6" rx="1.4" fill="#f3f0e8"/></svg>
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg viewBox="0 0 32 32" width="512" height="512" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="3.5" y="3.5" width="25" height="25" rx="6" stroke="#1a1812" stroke-width="2"/><line x1="9" y1="22" x2="23" y2="22" stroke="#d8472a" stroke-width="2" stroke-linecap="round"/><rect x="13" y="11" width="6" height="6" rx="1.4" fill="#1a1812"/></svg>
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 40" width="500" height="100" fill="none"><g transform="translate(4,6)"><rect x="3.5" y="3.5" width="25" height="25" rx="6" stroke="#f3f0e8" stroke-width="2"/><line x1="9" y1="22" x2="23" y2="22" stroke="#ff6444" stroke-width="2" stroke-linecap="round"/><rect x="13" y="11" width="6" height="6" rx="1.4" fill="#f3f0e8"/></g><text x="45" y="26" font-family="Geist, ui-sans-serif, system-ui, sans-serif" font-size="17" font-weight="600" letter-spacing="-0.3" fill="#f3f0e8">Baseframe<tspan font-family="'Geist Mono', ui-monospace, monospace" font-size="12" font-weight="400" letter-spacing="2" fill="#948e80" dx="7">LABS</tspan></text></svg>
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 200 40" width="500" height="100" fill="none"><g transform="translate(4,6)"><rect x="3.5" y="3.5" width="25" height="25" rx="6" stroke="#1a1812" stroke-width="2"/><line x1="9" y1="22" x2="23" y2="22" stroke="#d8472a" stroke-width="2" stroke-linecap="round"/><rect x="13" y="11" width="6" height="6" rx="1.4" fill="#1a1812"/></g><text x="45" y="26" font-family="Geist, ui-sans-serif, system-ui, sans-serif" font-size="17" font-weight="600" letter-spacing="-0.3" fill="#1a1812">Baseframe<tspan font-family="'Geist Mono', ui-monospace, monospace" font-size="12" font-weight="400" letter-spacing="2" fill="#79746a" dx="7">LABS</tspan></text></svg>
|