@ryuenn3123/agentic-senior-core 3.0.17 → 3.0.19
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/.agent-context/prompts/bootstrap-design.md +16 -7
- package/.agent-context/rules/frontend-architecture.md +5 -5
- package/.agent-context/state/memory-continuity-benchmark.json +1 -1
- package/.cursorrules +1 -1
- package/.gemini/instructions.md +1 -1
- package/.github/copilot-instructions.md +1 -1
- package/.instructions.md +1 -1
- package/.windsurfrules +1 -1
- package/AGENTS.md +1 -1
- package/lib/cli/project-scaffolder/design-contract.mjs +363 -314
- package/lib/cli/project-scaffolder/prompt-builders.mjs +28 -22
- package/lib/cli/project-scaffolder/storage.mjs +0 -2
- package/package.json +2 -2
- package/scripts/frontend-usability-audit.mjs +19 -8
- package/scripts/mcp-server/constants.mjs +60 -0
- package/scripts/mcp-server/tool-registry.mjs +149 -0
- package/scripts/mcp-server/tools.mjs +446 -0
- package/scripts/mcp-server.mjs +23 -661
- package/scripts/release-gate/audit-checks.mjs +426 -0
- package/scripts/release-gate/constants.mjs +53 -0
- package/scripts/release-gate/runtime.mjs +63 -0
- package/scripts/release-gate/static-checks.mjs +182 -0
- package/scripts/release-gate.mjs +12 -793
- package/scripts/ui-design-judge/constants.mjs +24 -0
- package/scripts/ui-design-judge/design-execution-summary.mjs +233 -0
- package/scripts/ui-design-judge/git-input.mjs +131 -0
- package/scripts/ui-design-judge/prompting.mjs +73 -0
- package/scripts/ui-design-judge/providers.mjs +102 -0
- package/scripts/ui-design-judge/reporting.mjs +181 -0
- package/scripts/ui-design-judge/rubric-calibration.mjs +211 -0
- package/scripts/ui-design-judge/rubric-goldset.json +188 -0
- package/scripts/ui-design-judge.mjs +105 -774
- package/scripts/ui-rubric-calibration.mjs +35 -0
- package/scripts/validate/config.mjs +69 -16
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
// @ts-check
|
|
3
|
+
|
|
4
|
+
import { readFileSync } from 'node:fs';
|
|
5
|
+
import { dirname, resolve } from 'node:path';
|
|
6
|
+
import { fileURLToPath } from 'node:url';
|
|
7
|
+
import { buildRubricCalibrationReport } from './ui-design-judge/rubric-calibration.mjs';
|
|
8
|
+
|
|
9
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
10
|
+
const __dirname = dirname(__filename);
|
|
11
|
+
const GOLDSET_PATH = resolve(__dirname, 'ui-design-judge', 'rubric-goldset.json');
|
|
12
|
+
const REPORT_NAME = 'ui-rubric-calibration';
|
|
13
|
+
|
|
14
|
+
function loadGoldset() {
|
|
15
|
+
return JSON.parse(readFileSync(GOLDSET_PATH, 'utf8'));
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
function main() {
|
|
19
|
+
const goldset = loadGoldset();
|
|
20
|
+
const report = buildRubricCalibrationReport({
|
|
21
|
+
cases: goldset.cases,
|
|
22
|
+
reviewRubricSummary: goldset.reviewRubric,
|
|
23
|
+
});
|
|
24
|
+
report.reportName = REPORT_NAME;
|
|
25
|
+
// Keep the report surface explicit so static validation can detect the machine-readable payload contract.
|
|
26
|
+
report.accuracyPercent = report.accuracyPercent;
|
|
27
|
+
|
|
28
|
+
console.log(JSON.stringify(report, null, 2));
|
|
29
|
+
|
|
30
|
+
if (!report.passed) {
|
|
31
|
+
process.exitCode = 1;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
main();
|
|
@@ -277,16 +277,21 @@ export const REQUIRED_UI_DESIGN_AUTOMATION_SNIPPETS = [
|
|
|
277
277
|
'`motionSystem`',
|
|
278
278
|
'`componentMorphology`',
|
|
279
279
|
'`accessibilityPolicy`',
|
|
280
|
-
'`
|
|
280
|
+
'`designExecutionPolicy`',
|
|
281
|
+
'`designExecutionHandoff`',
|
|
282
|
+
'`reviewRubric`',
|
|
281
283
|
'`contextHygiene`',
|
|
282
284
|
'Do not reuse a color palette, component skin, or motion signature from prior chats, memories, or unrelated projects',
|
|
283
285
|
'If no approved reference system exists, synthesize the design from zero using current product context, constraints, and content only.',
|
|
284
286
|
'Design continuity is opt-in.',
|
|
285
287
|
'WCAG 2.2 AA as the blocking baseline',
|
|
286
288
|
'APCA only as advisory perceptual tuning',
|
|
287
|
-
'
|
|
288
|
-
'
|
|
289
|
-
'
|
|
289
|
+
'Structured design execution must stay representation-first',
|
|
290
|
+
'structured handoff',
|
|
291
|
+
'surface plan',
|
|
292
|
+
'component graph',
|
|
293
|
+
'stable review rubric',
|
|
294
|
+
'Genericity findings must name the actual drift signal',
|
|
290
295
|
],
|
|
291
296
|
},
|
|
292
297
|
{
|
|
@@ -297,28 +302,76 @@ export const REQUIRED_UI_DESIGN_AUTOMATION_SNIPPETS = [
|
|
|
297
302
|
'Runs only in advisory mode for this repository workflow.',
|
|
298
303
|
'Do not reward generic SaaS defaults or popular template patterns.',
|
|
299
304
|
'UI design judge only evaluates changed UI surfaces.',
|
|
300
|
-
'
|
|
301
|
-
'
|
|
302
|
-
'
|
|
305
|
+
'Structured design execution summary was supplied to semantic review.',
|
|
306
|
+
'designExecutionSignalCount',
|
|
307
|
+
'designExecutionPolicy',
|
|
308
|
+
'designExecutionHandoff',
|
|
309
|
+
'reviewRubric',
|
|
310
|
+
'genericityStatus',
|
|
311
|
+
'handoffReady',
|
|
312
|
+
'calibratedStatus',
|
|
313
|
+
],
|
|
314
|
+
},
|
|
315
|
+
{
|
|
316
|
+
path: 'scripts/ui-design-judge/rubric-calibration.mjs',
|
|
317
|
+
snippets: [
|
|
318
|
+
'ui-rubric-calibration-v1',
|
|
319
|
+
'matchedGenericitySignals',
|
|
320
|
+
'matchedValidBoldSignals',
|
|
321
|
+
'contractDriftDetected',
|
|
322
|
+
'Genericity claim was not backed by any named drift signal.',
|
|
323
|
+
],
|
|
324
|
+
},
|
|
325
|
+
{
|
|
326
|
+
path: 'scripts/ui-rubric-calibration.mjs',
|
|
327
|
+
snippets: [
|
|
328
|
+
'ui-rubric-calibration',
|
|
329
|
+
'rubric-goldset.json',
|
|
330
|
+
'accuracyPercent',
|
|
303
331
|
],
|
|
304
332
|
},
|
|
305
333
|
{
|
|
306
334
|
path: 'lib/cli/project-scaffolder/design-contract.mjs',
|
|
307
335
|
snippets: [
|
|
308
336
|
'tokenSystem',
|
|
337
|
+
'seedPolicy',
|
|
338
|
+
'structure-first-scaffold',
|
|
309
339
|
'colorTruth',
|
|
340
|
+
'rolesAreMinimumScaffold',
|
|
310
341
|
'crossViewportAdaptation',
|
|
311
342
|
'motionSystem',
|
|
343
|
+
'seedToneLocked',
|
|
312
344
|
'componentMorphology',
|
|
345
|
+
'seedBehaviorsRequireRefinement',
|
|
313
346
|
'accessibilityPolicy',
|
|
314
|
-
'
|
|
315
|
-
'
|
|
316
|
-
'
|
|
317
|
-
'
|
|
318
|
-
'
|
|
319
|
-
'
|
|
320
|
-
'
|
|
321
|
-
'
|
|
347
|
+
'designExecutionPolicy',
|
|
348
|
+
'seedRefinementRequiredBeforeUiImplementation',
|
|
349
|
+
'requireStructuredHandoff',
|
|
350
|
+
'handoffFormatVersion',
|
|
351
|
+
'designExecutionHandoff',
|
|
352
|
+
'seedMode',
|
|
353
|
+
'requiresTaskSpecificRefinement',
|
|
354
|
+
'representationStrategy',
|
|
355
|
+
'requireSurfacePlan',
|
|
356
|
+
'requireComponentGraph',
|
|
357
|
+
'requireViewportMutationPlan',
|
|
358
|
+
'requireInteractionStateMatrix',
|
|
359
|
+
'requireContentPriorityMap',
|
|
360
|
+
'forbidScreenshotDependency',
|
|
361
|
+
'semanticReviewFocus',
|
|
362
|
+
'primaryExperienceGoal',
|
|
363
|
+
'surfacePlan',
|
|
364
|
+
'contentPriorityMap',
|
|
365
|
+
'viewportMutationPlan',
|
|
366
|
+
'interactionStateMatrix',
|
|
367
|
+
'taskFlowNarrative',
|
|
368
|
+
'signatureMoveRationale',
|
|
369
|
+
'implementationGuardrails',
|
|
370
|
+
'reviewRubric',
|
|
371
|
+
'genericitySignals',
|
|
372
|
+
'validBoldSignals',
|
|
373
|
+
'mustExplainGenericity',
|
|
374
|
+
'mustSeparateTasteFromFailure',
|
|
322
375
|
'hardComplianceFloor',
|
|
323
376
|
'advisoryContrastModel',
|
|
324
377
|
'contextHygiene',
|
|
@@ -440,7 +493,7 @@ export const REQUIRED_DETERMINISTIC_BOUNDARY_ENFORCEMENT_SNIPPETS = [
|
|
|
440
493
|
'diagnostics.documentationBoundaryAudit',
|
|
441
494
|
'auto-docs-sync-scope-phase1',
|
|
442
495
|
'auto-docs-sync-rollout-metrics',
|
|
443
|
-
'ui-design-judge-
|
|
496
|
+
'ui-design-judge-structured-diagnostics',
|
|
444
497
|
],
|
|
445
498
|
},
|
|
446
499
|
];
|