standout 0.5.23 → 0.5.25
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.
|
@@ -469,6 +469,7 @@ export function aggregateView(args) {
|
|
|
469
469
|
total_tokens_percentile: rankSummary.total_tokens_percentile ?? null,
|
|
470
470
|
avg_agents_percentile: rankSummary.avg_agents_percentile ?? null,
|
|
471
471
|
weekend_pct_percentile: rankSummary.weekend_pct_percentile ?? null,
|
|
472
|
+
ai_assisted_pct_percentile: rankSummary.ai_assisted_pct_percentile ?? null,
|
|
472
473
|
},
|
|
473
474
|
proficiency: parseProficiency(computedObj.proficiency),
|
|
474
475
|
tokens,
|
package/dist/wrapped/preview.js
CHANGED
package/dist/wrapped/render.js
CHANGED
|
@@ -200,12 +200,11 @@ function card1Open(view) {
|
|
|
200
200
|
: perDay >= 1
|
|
201
201
|
? "a daily habit at this point."
|
|
202
202
|
: "just getting warmed up.";
|
|
203
|
-
const
|
|
203
|
+
const bench = benchmarkInline(view, view.rank_summary.hours_percentile);
|
|
204
204
|
const lines = [
|
|
205
205
|
chalk.dim("YOU MANAGED"),
|
|
206
206
|
"",
|
|
207
|
-
bigNumber(` ${hours} session-hours`),
|
|
208
|
-
...(badge ? ["", badge] : []),
|
|
207
|
+
bigNumber(` ${hours} session-hours`) + (bench ? ` ${bench}` : ""),
|
|
209
208
|
"",
|
|
210
209
|
chalk.white(` ${verdict}`),
|
|
211
210
|
chalk.dim(" across parallel agent sessions, last 30 days"),
|
|
@@ -261,7 +260,7 @@ function cardRhythm(view) {
|
|
|
261
260
|
: "no clear peak";
|
|
262
261
|
const weekendPct = Math.round(view.weekend_ratio * 100);
|
|
263
262
|
const weekdayPct = 100 - weekendPct;
|
|
264
|
-
const
|
|
263
|
+
const weekendBench = benchmarkInline(view, view.rank_summary.weekend_pct_percentile);
|
|
265
264
|
const isNightOwl = critter?.key === "night_owl";
|
|
266
265
|
const subhead = isNightOwl
|
|
267
266
|
? "while the 9-5ers sleep, you ship."
|
|
@@ -281,7 +280,7 @@ function cardRhythm(view) {
|
|
|
281
280
|
"",
|
|
282
281
|
` ${chalk.white("weekdays".padEnd(9))} ${bar(weekdayPct, 100, 20)} ${chalk.dim(weekdayPct + "%")}`,
|
|
283
282
|
` ${chalk.white("weekends".padEnd(9))} ${bar(weekendPct, 100, 20)} ${chalk.dim(weekendPct + "%")}`,
|
|
284
|
-
...(
|
|
283
|
+
...(weekendBench ? ["", ` ${weekendBench}`] : []),
|
|
285
284
|
"",
|
|
286
285
|
];
|
|
287
286
|
if (view.rhythm_comment) {
|
|
@@ -350,13 +349,20 @@ function card7AINative(view) {
|
|
|
350
349
|
: pct > 0
|
|
351
350
|
? "Claude's in your commit history. no going back."
|
|
352
351
|
: "no AI-co-authored commits yet.";
|
|
352
|
+
const bench = benchmarkInline(view, view.rank_summary.ai_assisted_pct_percentile);
|
|
353
|
+
const streak = view.streak_days;
|
|
353
354
|
const lines = [
|
|
354
355
|
chalk.dim("YOU'RE AI-NATIVE"),
|
|
355
356
|
"",
|
|
356
357
|
` commits since 2024: ${chalk.white(view.total_commits.toLocaleString())}`,
|
|
357
358
|
` AI co-authored: ${chalk.white(view.ai_assisted_commits.toLocaleString())}`,
|
|
358
359
|
"",
|
|
359
|
-
` ${bar(pct, 100,
|
|
360
|
+
` ${bar(pct, 100, 22)} ${chalk.white(pct + "%")}${bench ? ` ${bench}` : ""}`,
|
|
361
|
+
...(streak >= 2
|
|
362
|
+
? [
|
|
363
|
+
` ${chalk.white(`${streak}-day streak`)}${chalk.dim(", coding without missing a day.")}`,
|
|
364
|
+
]
|
|
365
|
+
: []),
|
|
360
366
|
"",
|
|
361
367
|
chalk.dim(subhead),
|
|
362
368
|
].join("\n");
|
|
@@ -399,16 +405,20 @@ function topPercent(percentile) {
|
|
|
399
405
|
const top = topPercentNumber(percentile);
|
|
400
406
|
return top === null ? null : `top ${top}%`;
|
|
401
407
|
}
|
|
402
|
-
// Inline "top X%" benchmark
|
|
403
|
-
//
|
|
404
|
-
//
|
|
405
|
-
|
|
408
|
+
// Inline "(top X% of users)" cohort benchmark appended to a metric. Faint, except
|
|
409
|
+
// when the user lands in the top <10% the percentile renders in the rainbow
|
|
410
|
+
// gradient (the rest stays faint). Returns "" (omitted) for early adopters or
|
|
411
|
+
// until the metric has a percentile, so callers can append conditionally.
|
|
412
|
+
function benchmarkInline(view, percentile) {
|
|
406
413
|
if (view.early_adopter)
|
|
407
|
-
return
|
|
414
|
+
return "";
|
|
408
415
|
const top = topPercentNumber(percentile);
|
|
409
416
|
if (top === null)
|
|
410
|
-
return
|
|
411
|
-
|
|
417
|
+
return "";
|
|
418
|
+
const pct = `${top}%`;
|
|
419
|
+
return top < 10
|
|
420
|
+
? chalk.dim("(top ") + TITLE_GRADIENT(pct) + chalk.dim(" of users)")
|
|
421
|
+
: chalk.dim(`(top ${pct} of users)`);
|
|
412
422
|
}
|
|
413
423
|
function cardRankSummary(view) {
|
|
414
424
|
if (!usageReady(view) || view.total_sessions <= 0)
|
|
@@ -485,6 +495,7 @@ function cardTokens(view) {
|
|
|
485
495
|
if (!usageReady(view) || (t.work_tokens <= 0 && t.cache_tokens <= 0))
|
|
486
496
|
return "";
|
|
487
497
|
const totalLine = bigNumber(formatTokens(t.total_30d) + " tokens");
|
|
498
|
+
const tokensBench = benchmarkInline(view, view.rank_summary.total_tokens_percentile);
|
|
488
499
|
const max = Math.max(...t.by_tool.map((x) => x.tokens), 1);
|
|
489
500
|
const toolRows = t.by_tool.length > 0
|
|
490
501
|
? t.by_tool
|
|
@@ -517,8 +528,7 @@ function cardTokens(view) {
|
|
|
517
528
|
const lines = [
|
|
518
529
|
chalk.dim("YOU BURNED THIS MANY TOKENS"),
|
|
519
530
|
"",
|
|
520
|
-
` ${totalLine}`,
|
|
521
|
-
benchmarkBadge(view, view.rank_summary.total_tokens_percentile, "of devs by tokens") ?? "",
|
|
531
|
+
` ${totalLine}${tokensBench ? ` ${tokensBench}` : ""}`,
|
|
522
532
|
"",
|
|
523
533
|
cachedNote,
|
|
524
534
|
generatedLine,
|
|
@@ -754,12 +764,11 @@ function cardConcurrency(view) {
|
|
|
754
764
|
const longest = days >= 1.5
|
|
755
765
|
? `${days.toFixed(0)} days`
|
|
756
766
|
: `${Math.round(c.longest_session_hours)}h`;
|
|
757
|
-
const
|
|
767
|
+
const bench = benchmarkInline(view, view.rank_summary.avg_agents_percentile);
|
|
758
768
|
const lines = [
|
|
759
769
|
chalk.dim("HOW MANY AGENTS YOU JUGGLE"),
|
|
760
770
|
"",
|
|
761
|
-
` ${bigNumber(`~${c.open_tab_avg}`)} ${chalk.white("agents open at once")}`,
|
|
762
|
-
...(badge ? ["", badge] : []),
|
|
771
|
+
` ${bigNumber(`~${c.open_tab_avg}`)} ${chalk.white("agents open at once")}${bench ? ` ${bench}` : ""}`,
|
|
763
772
|
"",
|
|
764
773
|
` ${chalk.white("peak".padEnd(14))} ${chalk.dim(`${c.open_tab_peak} at once`)}`,
|
|
765
774
|
` ${chalk.white("longest tab".padEnd(14))} ${chalk.dim(`${longest} open`)}`,
|
package/dist/wrapped/types.d.ts
CHANGED
|
@@ -97,6 +97,7 @@ export interface WrappedAggregateView {
|
|
|
97
97
|
total_tokens_percentile: number | null;
|
|
98
98
|
avg_agents_percentile: number | null;
|
|
99
99
|
weekend_pct_percentile: number | null;
|
|
100
|
+
ai_assisted_pct_percentile: number | null;
|
|
100
101
|
};
|
|
101
102
|
proficiency: ProficiencyView | null;
|
|
102
103
|
tokens: {
|