@ryuenn3123/agentic-senior-core 3.0.46 → 3.0.48

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.
Files changed (58) hide show
  1. package/.agent-context/prompts/init-project.md +9 -7
  2. package/.agent-context/prompts/refactor.md +1 -1
  3. package/.agent-context/prompts/review-code.md +1 -1
  4. package/.agent-context/review-checklists/pr-checklist.md +3 -0
  5. package/.agent-context/rules/api-docs.md +4 -0
  6. package/.agent-context/rules/architecture.md +16 -2
  7. package/.agent-context/state/architecture-map.md +3 -3
  8. package/.agent-context/state/dependency-map.md +2 -2
  9. package/AGENTS.md +170 -35
  10. package/CLAUDE.md +1 -44
  11. package/CONTRIBUTING.md +2 -3
  12. package/GEMINI.md +1 -44
  13. package/README.md +28 -22
  14. package/lib/cli/backup.mjs +37 -0
  15. package/lib/cli/commands/init.mjs +15 -29
  16. package/lib/cli/commands/optimize.mjs +2 -48
  17. package/lib/cli/commands/upgrade.mjs +14 -52
  18. package/lib/cli/compiler.mjs +25 -95
  19. package/lib/cli/constants.mjs +1 -9
  20. package/lib/cli/detector.mjs +0 -1
  21. package/lib/cli/init-options.mjs +1 -1
  22. package/lib/cli/project-scaffolder/constants.mjs +1 -0
  23. package/lib/cli/project-scaffolder/discovery.mjs +2 -0
  24. package/lib/cli/project-scaffolder/prompt-builders.mjs +9 -5
  25. package/lib/cli/utils/filesystem.mjs +2 -0
  26. package/lib/cli/utils/managed-surface.mjs +45 -2
  27. package/lib/cli/utils.mjs +19 -4
  28. package/package.json +1 -10
  29. package/scripts/bump-version.mjs +1 -16
  30. package/scripts/docs-quality-drift-report.mjs +0 -6
  31. package/scripts/frontend-usability-audit.mjs +2 -2
  32. package/scripts/governance-weekly-report.mjs +2 -2
  33. package/scripts/single-source-lazy-loading-audit.mjs +13 -126
  34. package/scripts/sync-thin-adapters.mjs +13 -121
  35. package/scripts/validate/config.mjs +20 -27
  36. package/scripts/validate/coverage-checks.mjs +9 -76
  37. package/scripts/validate.mjs +12 -97
  38. package/.agent-override.md +0 -36
  39. package/.agents/workflows/init-project.md +0 -12
  40. package/.agents/workflows/refactor.md +0 -12
  41. package/.agents/workflows/review-code.md +0 -11
  42. package/.cursor/mcp.json +0 -10
  43. package/.cursor/rules/agentic-senior-core.mdc +0 -49
  44. package/.cursorrules +0 -26
  45. package/.gemini/instructions.md +0 -44
  46. package/.github/copilot-instructions.md +0 -44
  47. package/.github/instructions/agentic-senior-core.instructions.md +0 -48
  48. package/.github/workflows/benchmark-detection.yml +0 -45
  49. package/.github/workflows/benchmark-intelligence.yml +0 -50
  50. package/.github/workflows/docs-quality-drift-report.yml +0 -37
  51. package/.github/workflows/frontend-usability-gate.yml +0 -36
  52. package/.github/workflows/governance-weekly-report.yml +0 -43
  53. package/.github/workflows/publish.yml +0 -32
  54. package/.github/workflows/release-gate.yml +0 -32
  55. package/.github/workflows/sbom-compliance.yml +0 -32
  56. package/.instructions.md +0 -186
  57. package/.windsurf/rules/agentic-senior-core.md +0 -44
  58. package/.windsurfrules +0 -26
@@ -16,10 +16,7 @@
16
16
  import { readdir, readFile, stat } from 'node:fs/promises';
17
17
  import { dirname, join, relative, resolve } from 'node:path';
18
18
  import { fileURLToPath } from 'node:url';
19
- import {
20
- ALLOWED_SEVERITIES,
21
- OVERRIDE_WARNING_WINDOW_DAYS,
22
- } from './validate/config.mjs';
19
+ import { ALLOWED_SEVERITIES } from './validate/config.mjs';
23
20
  import {
24
21
  validateDependencyFreshnessAutomationCoverage,
25
22
  validateDetectionTransparencyCoverage,
@@ -40,15 +37,14 @@ import {
40
37
  const SCRIPT_FILE_PATH = fileURLToPath(import.meta.url);
41
38
  const ROOT_DIR = resolve(dirname(SCRIPT_FILE_PATH), '..');
42
39
  const AGENT_CONTEXT_DIR = join(ROOT_DIR, '.agent-context');
43
- const CANONICAL_INSTRUCTION_PATH = join(ROOT_DIR, '.instructions.md');
40
+ const CANONICAL_INSTRUCTION_PATH = join(ROOT_DIR, 'AGENTS.md');
44
41
  const PACKAGE_JSON_PATH = join(ROOT_DIR, 'package.json');
45
42
  const PACKAGE_LOCK_PATH = join(ROOT_DIR, 'package-lock.json');
46
43
  const BUN_LOCK_PATH = join(ROOT_DIR, 'bun.lock');
47
44
  const CHANGELOG_PATH = join(ROOT_DIR, 'CHANGELOG.md');
48
45
  const README_PATH = join(ROOT_DIR, 'README.md');
49
46
  const POLICY_FILE_PATH = join(ROOT_DIR, '.agent-context', 'policies', 'llm-judge-threshold.json');
50
- const OVERRIDE_FILE_PATH = join(ROOT_DIR, '.agent-override.md');
51
- const GENERATED_RULE_FILES = ['.cursorrules', '.windsurfrules'];
47
+ const GENERATED_RULE_FILES = [];
52
48
 
53
49
  const validationResult = {
54
50
  passed: 0,
@@ -153,16 +149,17 @@ async function validateRequiredFiles() {
153
149
  'scripts/v3-purge-audit.mjs',
154
150
  'scripts/release-gate.mjs',
155
151
  'scripts/generate-sbom.mjs',
156
- '.cursorrules',
157
- '.windsurfrules',
158
- '.agent-override.md',
159
152
  '.agent-context/policies/llm-judge-threshold.json',
160
153
  'mcp.json',
161
154
  'AGENTS.md',
162
- '.github/copilot-instructions.md',
163
- '.gemini/instructions.md',
155
+ 'CLAUDE.md',
156
+ 'GEMINI.md',
164
157
  'README.md',
165
158
  'CHANGELOG.md',
159
+ 'docs/doc-index.md',
160
+ 'docs/project-brief.md',
161
+ 'docs/flow-overview.md',
162
+ 'docs/api-contract.md',
166
163
  'docs/faq.md',
167
164
  'docs/deep-dive.md',
168
165
  'docs/terminology-mapping.md',
@@ -292,87 +289,6 @@ async function validateChecklistConsolidation() {
292
289
  }
293
290
  }
294
291
 
295
- function stripMarkdownCodeBlocks(markdownText) {
296
- return markdownText.replace(/```[\s\S]*?```/g, '');
297
- }
298
-
299
- function parseOverrideExpiryDate(rawExpiryValue) {
300
- if (!/^\d{4}-\d{2}-\d{2}$/.test(rawExpiryValue)) {
301
- return null;
302
- }
303
-
304
- const parsedDate = new Date(`${rawExpiryValue}T00:00:00.000Z`);
305
- return Number.isNaN(parsedDate.getTime()) ? null : parsedDate;
306
- }
307
-
308
- async function validateOverrideGovernance() {
309
- console.log('\nChecking override governance...');
310
-
311
- const overrideContent = await readTextFile(OVERRIDE_FILE_PATH);
312
- const overrideContentWithoutCodeBlocks = stripMarkdownCodeBlocks(overrideContent);
313
- const overrideEntryPattern = /\[Rule:\s*([^\]]+)\]([\s\S]*?)(?=\n\[Rule:|$)/g;
314
- const overrideEntries = [];
315
- let overrideEntryMatch = overrideEntryPattern.exec(overrideContentWithoutCodeBlocks);
316
-
317
- while (overrideEntryMatch) {
318
- const ruleName = overrideEntryMatch[1].trim();
319
- const entryBody = overrideEntryMatch[2];
320
- const ownerMatch = entryBody.match(/(?:^|\n)Owner:\s*(.+)/);
321
- const expiryMatch = entryBody.match(/(?:^|\n)Expiry:\s*(.+)/);
322
-
323
- overrideEntries.push({
324
- ruleName,
325
- owner: ownerMatch ? ownerMatch[1].trim() : '',
326
- expiry: expiryMatch ? expiryMatch[1].trim() : '',
327
- });
328
-
329
- overrideEntryMatch = overrideEntryPattern.exec(overrideContentWithoutCodeBlocks);
330
- }
331
-
332
- if (overrideEntries.length === 0) {
333
- pass('No active override entries found; governance baseline remains strict');
334
- return;
335
- }
336
-
337
- const currentDate = new Date();
338
-
339
- for (const overrideEntry of overrideEntries) {
340
- const overrideContextLabel = `[Rule: ${overrideEntry.ruleName}]`;
341
-
342
- if (!overrideEntry.owner) {
343
- fail(`${overrideContextLabel} is missing Owner metadata`);
344
- continue;
345
- }
346
-
347
- pass(`${overrideContextLabel} owner is defined`);
348
-
349
- if (!overrideEntry.expiry) {
350
- fail(`${overrideContextLabel} is missing Expiry metadata`);
351
- continue;
352
- }
353
-
354
- const expiryDate = parseOverrideExpiryDate(overrideEntry.expiry);
355
- if (!expiryDate) {
356
- fail(`${overrideContextLabel} has invalid Expiry format (expected YYYY-MM-DD)`);
357
- continue;
358
- }
359
-
360
- const remainingMilliseconds = expiryDate.getTime() - currentDate.getTime();
361
- const remainingDays = Math.floor(remainingMilliseconds / (1000 * 60 * 60 * 24));
362
-
363
- if (remainingMilliseconds < 0) {
364
- fail(`${overrideContextLabel} is expired (${overrideEntry.expiry})`);
365
- continue;
366
- }
367
-
368
- pass(`${overrideContextLabel} expiry is valid (${overrideEntry.expiry})`);
369
-
370
- if (remainingDays <= OVERRIDE_WARNING_WINDOW_DAYS) {
371
- warn(`${overrideContextLabel} expires in ${remainingDays} day(s); renew or remove soon`);
372
- }
373
- }
374
- }
375
-
376
292
  async function validateCrossReferences() {
377
293
  console.log('\nChecking internal links...');
378
294
 
@@ -468,10 +384,10 @@ async function validatePackageMetadata() {
468
384
  pass('package.json has no unnecessary devDependencies');
469
385
  }
470
386
 
471
- if (Array.isArray(packageJson.files) && packageJson.files.includes('.instructions.md')) {
472
- pass('package.json publishes canonical .instructions.md');
387
+ if (Array.isArray(packageJson.files) && packageJson.files.includes('AGENTS.md')) {
388
+ pass('package.json publishes canonical AGENTS.md');
473
389
  } else {
474
- fail('package.json must publish .instructions.md so init and upgrade can copy the canonical root instructions file');
390
+ fail('package.json must publish AGENTS.md so init and upgrade can copy the canonical root instructions file');
475
391
  }
476
392
 
477
393
  if (await fileExists(BUN_LOCK_PATH)) {
@@ -639,7 +555,6 @@ async function main() {
639
555
  await validateMarkdownFiles();
640
556
  await validateRuleFiles();
641
557
  await validateChecklistConsolidation();
642
- await validateOverrideGovernance();
643
558
  await validateAgentsManifest();
644
559
  await validateCrossReferences();
645
560
  await validatePackageMetadata();
@@ -1,36 +0,0 @@
1
- # Rule Overrides
2
-
3
- > Exception file for enterprise needs.
4
- > Default policy: all rules remain strict unless explicitly overridden below.
5
-
6
- ## Override Template
7
-
8
- Use this exact structure for every exception:
9
-
10
- ```markdown
11
- [Rule: <rule-name>]
12
- Scope: <module/path>
13
- Reason: <business or technical constraint>
14
- Permitted Deviation: <what is allowed>
15
- Risk Mitigation: <how risk is controlled>
16
- Expiry: <YYYY-MM-DD>
17
- Owner: <team/person>
18
- ```
19
-
20
- ## Example Override
21
-
22
- ```markdown
23
- [Rule: Naming]
24
- Scope: legacy-erp-sync module
25
- Reason: External DB schema uses snake_case columns and strict mapping contracts.
26
- Permitted Deviation: snake_case variable names are allowed only in mapper files.
27
- Risk Mitigation: enforce mapper-only scope with codeowners and lint ignore pattern.
28
- Expiry: 2026-12-31
29
- Owner: platform-integration-team
30
- ```
31
-
32
- ## Enforcement Notes
33
-
34
- 1. Overrides must be narrow and time-bound.
35
- 2. Expired overrides are invalid and must be removed.
36
- 3. Broad overrides such as "allow any everywhere" are prohibited.
@@ -1,12 +0,0 @@
1
- ---
2
- description: Initialize a project with repo-grounded guidance and required docs
3
- ---
4
-
5
- ## Workflow: Initialize Project
6
-
7
- 1. Read `AGENTS.md`, then follow the canonical bootstrap chain only as far as the task requires.
8
- 2. Use `.agent-context/prompts/init-project.md` as the canonical init prompt.
9
- 3. For existing projects, inspect real project files before naming the product, describing the context, or recommending runtime/architecture choices.
10
- 4. For fresh projects, keep questions minimal and ask the agent to recommend unresolved runtime, framework, library, and architecture choices from the brief plus live official docs.
11
- 5. Ensure required docs exist before implementation: project brief, architecture decision, flow overview, API/public contract when relevant, data model when relevant, UI design contract when relevant, security assumptions, and testing strategy.
12
- 6. Run `.agent-context/review-checklists/pr-checklist.md` before declaring the init complete.
@@ -1,12 +0,0 @@
1
- ---
2
- description: Refactor code without changing behavior
3
- ---
4
-
5
- ## Workflow: Refactor Code
6
-
7
- 1. Read `AGENTS.md`.
8
- 2. Use `.agent-context/prompts/refactor.md` as the canonical refactor prompt.
9
- 3. Inspect the target files and existing repo conventions before changing structure.
10
- 4. Keep behavior stable unless the user explicitly approves a behavior change.
11
- 5. Update docs and tests when contracts, public surfaces, or architecture boundaries change.
12
- 6. Run `.agent-context/review-checklists/pr-checklist.md` before declaring done.
@@ -1,11 +0,0 @@
1
- ---
2
- description: Review code with project contracts and risk-first findings
3
- ---
4
-
5
- ## Workflow: Review Code
6
-
7
- 1. Read `AGENTS.md`.
8
- 2. Use `.agent-context/prompts/review-code.md` as the canonical review prompt.
9
- 3. Apply `.agent-context/review-checklists/pr-checklist.md`.
10
- 4. Load architecture, frontend, security, testing, API, event, realtime, or Docker rules only when the changed scope needs them.
11
- 5. Report findings first, ordered by severity, with file/line references and concrete fixes.
package/.cursor/mcp.json DELETED
@@ -1,10 +0,0 @@
1
- {
2
- "mcpServers": {
3
- "agentic-senior-core": {
4
- "command": "node",
5
- "args": ["./scripts/mcp-server.mjs"],
6
- "cwd": "${workspaceFolder}"
7
- }
8
- }
9
- }
10
-
@@ -1,49 +0,0 @@
1
- ---
2
- description: Agentic Senior Core bootstrap adapter
3
- alwaysApply: true
4
- ---
5
-
6
- # Cursor Rule - Thin Adapter
7
-
8
- Adapter Mode: thin
9
- Adapter Source: .instructions.md
10
- Canonical Snapshot SHA256: c66b5dfe48a25f0df297a1681aa6bab572da95d2201f09abf3767d38a2934591
11
-
12
- This repository is governed by a strict instruction contract.
13
- Use [.instructions.md](../../.instructions.md) as the canonical policy source.
14
- Use .agent-context/ for technical rules, prompts, checklists, policies, and state.
15
- Treat README.md as public and developer overview, setup, usage, and user-facing context only when governance files conflict.
16
-
17
- ## Critical Bootstrap Floor
18
-
19
- - If your host stops at this file, continue the chain manually before coding.
20
- - Read `.agent-instructions.md` next when it exists.
21
- - Memory continuity does not replace bootstrap loading.
22
- - For UI, UX, layout, screen, tailwind, frontend, or redesign requests, load [bootstrap-design.md](../../.agent-context/prompts/bootstrap-design.md) and [frontend-architecture.md](../../.agent-context/rules/frontend-architecture.md) before code edits.
23
- - For UI scope, include a one-line Motion/Palette Decision in the Bootstrap Receipt; product categories are heuristics, not style presets.
24
- - For UI scope, create or refine `docs/DESIGN.md` and `docs/design-intent.json` before UI implementation.
25
- - For documentation-first requests, create or refine required project docs in English by default and do not write application, firmware, or UI code until the user asks or approves.
26
- - Create or refine root README.md as the public and developer entrypoint before implementation.
27
- - For backend, API, data, auth, error, event, queue, worker, or distributed-system requests, load only relevant global rules from .agent-context/rules/ ([link](../../.agent-context/rules)).
28
- - For ecosystem, framework, dependency, or Docker claims, perform live web research.
29
- - Resolve runtime choices from project evidence and live official documentation; resolve structural planning from constraints and architecture boundaries.
30
-
31
- ## Mandatory Bootstrap Chain
32
-
33
- 1. Load [.instructions.md](../../.instructions.md).
34
- 2. Load `.agent-instructions.md` when present.
35
- 3. Load only relevant files from .agent-context/rules/ ([link](../../.agent-context/rules)).
36
- 4. Apply matching prompts from .agent-context/prompts/ ([link](../../.agent-context/prompts)).
37
- 5. Enforce .agent-context/review-checklists/ ([link](../../.agent-context/review-checklists/pr-checklist.md)).
38
- 6. Use .agent-context/state/ ([link](../../.agent-context/state)) and .agent-context/policies/ ([link](../../.agent-context/policies)) only when relevant.
39
- 7. Use project docs and live evidence for runtime, dependency, and architecture claims.
40
-
41
- ## Bootstrap Receipt
42
-
43
- For non-trivial coding, review, planning, or governance work, produce a short Bootstrap Receipt before implementation output: `loaded_files`, `selected_rules`, `skipped_rules`, `unreachable_files`, and `validation_plan`.
44
-
45
- ## Completion Gate
46
-
47
- Run [pr-checklist.md](../../.agent-context/review-checklists/pr-checklist.md) before declaring work complete.
48
-
49
- If this adapter drifts from canonical behavior, refresh from [.instructions.md](../../.instructions.md) and update the hash metadata.
package/.cursorrules DELETED
@@ -1,26 +0,0 @@
1
- # .cursorrules - Legacy Thin Adapter
2
-
3
- Generated by Agentic-Senior-Core CLI v3.0.46
4
- Adapter Mode: legacy-thin
5
- Adapter Source: .agent-instructions.md when present; fallback .instructions.md
6
- Canonical baseline: .instructions.md
7
-
8
- This file is kept only for older Cursor discovery.
9
- Read .agent-instructions.md for the compiled rulebook when present.
10
- Use .instructions.md as the canonical policy source.
11
-
12
- Mandatory load floor:
13
- 1. Read .agent-instructions.md when present; otherwise read .instructions.md.
14
- 2. Load only relevant .agent-context/rules/ by task scope.
15
- 3. Apply matching .agent-context/prompts/ contracts.
16
- 4. Enforce .agent-context/review-checklists/ before completion.
17
- 5. Use .agent-context/state/ and .agent-context/policies/ only when relevant.
18
- 6. Resolve Runtime Decision Signals from repo evidence and live official docs.
19
- 7. Resolve Structural Planning Signals from constraints and architecture boundaries.
20
-
21
- Current bridges:
22
- - Cursor: .cursor/rules/agentic-senior-core.mdc
23
- - Windsurf: .windsurf/rules/agentic-senior-core.md
24
- - Claude: CLAUDE.md
25
- - Gemini: GEMINI.md and .gemini/instructions.md
26
- - Copilot: .github/copilot-instructions.md and .github/instructions/agentic-senior-core.instructions.md
@@ -1,44 +0,0 @@
1
- # Gemini Instructions - Thin Adapter
2
-
3
- Adapter Mode: thin
4
- Adapter Source: .instructions.md
5
- Canonical Snapshot SHA256: c66b5dfe48a25f0df297a1681aa6bab572da95d2201f09abf3767d38a2934591
6
-
7
- This repository is governed by a strict instruction contract.
8
- Use [.instructions.md](../.instructions.md) as the canonical policy source.
9
- Use .agent-context/ for technical rules, prompts, checklists, policies, and state.
10
- Treat README.md as public and developer overview, setup, usage, and user-facing context only when governance files conflict.
11
-
12
- ## Critical Bootstrap Floor
13
-
14
- - If your host stops at this file, continue the chain manually before coding.
15
- - Read `.agent-instructions.md` next when it exists.
16
- - Memory continuity does not replace bootstrap loading.
17
- - For UI, UX, layout, screen, tailwind, frontend, or redesign requests, load [bootstrap-design.md](../.agent-context/prompts/bootstrap-design.md) and [frontend-architecture.md](../.agent-context/rules/frontend-architecture.md) before code edits.
18
- - For UI scope, include a one-line Motion/Palette Decision in the Bootstrap Receipt; product categories are heuristics, not style presets.
19
- - For UI scope, create or refine `docs/DESIGN.md` and `docs/design-intent.json` before UI implementation.
20
- - For documentation-first requests, create or refine required project docs in English by default and do not write application, firmware, or UI code until the user asks or approves.
21
- - Create or refine root README.md as the public and developer entrypoint before implementation.
22
- - For backend, API, data, auth, error, event, queue, worker, or distributed-system requests, load only relevant global rules from .agent-context/rules/ ([link](../.agent-context/rules)).
23
- - For ecosystem, framework, dependency, or Docker claims, perform live web research.
24
- - Resolve runtime choices from project evidence and live official documentation; resolve structural planning from constraints and architecture boundaries.
25
-
26
- ## Mandatory Bootstrap Chain
27
-
28
- 1. Load [.instructions.md](../.instructions.md).
29
- 2. Load `.agent-instructions.md` when present.
30
- 3. Load only relevant files from .agent-context/rules/ ([link](../.agent-context/rules)).
31
- 4. Apply matching prompts from .agent-context/prompts/ ([link](../.agent-context/prompts)).
32
- 5. Enforce .agent-context/review-checklists/ ([link](../.agent-context/review-checklists/pr-checklist.md)).
33
- 6. Use .agent-context/state/ ([link](../.agent-context/state)) and .agent-context/policies/ ([link](../.agent-context/policies)) only when relevant.
34
- 7. Use project docs and live evidence for runtime, dependency, and architecture claims.
35
-
36
- ## Bootstrap Receipt
37
-
38
- For non-trivial coding, review, planning, or governance work, produce a short Bootstrap Receipt before implementation output: `loaded_files`, `selected_rules`, `skipped_rules`, `unreachable_files`, and `validation_plan`.
39
-
40
- ## Completion Gate
41
-
42
- Run [pr-checklist.md](../.agent-context/review-checklists/pr-checklist.md) before declaring work complete.
43
-
44
- If this adapter drifts from canonical behavior, refresh from [.instructions.md](../.instructions.md) and update the hash metadata.
@@ -1,44 +0,0 @@
1
- # GitHub Copilot Instructions - Thin Adapter
2
-
3
- Adapter Mode: thin
4
- Adapter Source: .instructions.md
5
- Canonical Snapshot SHA256: c66b5dfe48a25f0df297a1681aa6bab572da95d2201f09abf3767d38a2934591
6
-
7
- This repository is governed by a strict instruction contract.
8
- Use [.instructions.md](../.instructions.md) as the canonical policy source.
9
- Use .agent-context/ for technical rules, prompts, checklists, policies, and state.
10
- Treat README.md as public and developer overview, setup, usage, and user-facing context only when governance files conflict.
11
-
12
- ## Critical Bootstrap Floor
13
-
14
- - If your host stops at this file, continue the chain manually before coding.
15
- - Read `.agent-instructions.md` next when it exists.
16
- - Memory continuity does not replace bootstrap loading.
17
- - For UI, UX, layout, screen, tailwind, frontend, or redesign requests, load [bootstrap-design.md](../.agent-context/prompts/bootstrap-design.md) and [frontend-architecture.md](../.agent-context/rules/frontend-architecture.md) before code edits.
18
- - For UI scope, include a one-line Motion/Palette Decision in the Bootstrap Receipt; product categories are heuristics, not style presets.
19
- - For UI scope, create or refine `docs/DESIGN.md` and `docs/design-intent.json` before UI implementation.
20
- - For documentation-first requests, create or refine required project docs in English by default and do not write application, firmware, or UI code until the user asks or approves.
21
- - Create or refine root README.md as the public and developer entrypoint before implementation.
22
- - For backend, API, data, auth, error, event, queue, worker, or distributed-system requests, load only relevant global rules from .agent-context/rules/ ([link](../.agent-context/rules)).
23
- - For ecosystem, framework, dependency, or Docker claims, perform live web research.
24
- - Resolve runtime choices from project evidence and live official documentation; resolve structural planning from constraints and architecture boundaries.
25
-
26
- ## Mandatory Bootstrap Chain
27
-
28
- 1. Load [.instructions.md](../.instructions.md).
29
- 2. Load `.agent-instructions.md` when present.
30
- 3. Load only relevant files from .agent-context/rules/ ([link](../.agent-context/rules)).
31
- 4. Apply matching prompts from .agent-context/prompts/ ([link](../.agent-context/prompts)).
32
- 5. Enforce .agent-context/review-checklists/ ([link](../.agent-context/review-checklists/pr-checklist.md)).
33
- 6. Use .agent-context/state/ ([link](../.agent-context/state)) and .agent-context/policies/ ([link](../.agent-context/policies)) only when relevant.
34
- 7. Use project docs and live evidence for runtime, dependency, and architecture claims.
35
-
36
- ## Bootstrap Receipt
37
-
38
- For non-trivial coding, review, planning, or governance work, produce a short Bootstrap Receipt before implementation output: `loaded_files`, `selected_rules`, `skipped_rules`, `unreachable_files`, and `validation_plan`.
39
-
40
- ## Completion Gate
41
-
42
- Run [pr-checklist.md](../.agent-context/review-checklists/pr-checklist.md) before declaring work complete.
43
-
44
- If this adapter drifts from canonical behavior, refresh from [.instructions.md](../.instructions.md) and update the hash metadata.
@@ -1,48 +0,0 @@
1
- ---
2
- applyTo: "**"
3
- ---
4
-
5
- # GitHub Copilot Path Instructions - Thin Adapter
6
-
7
- Adapter Mode: thin
8
- Adapter Source: .instructions.md
9
- Canonical Snapshot SHA256: c66b5dfe48a25f0df297a1681aa6bab572da95d2201f09abf3767d38a2934591
10
-
11
- This repository is governed by a strict instruction contract.
12
- Use [.instructions.md](../../.instructions.md) as the canonical policy source.
13
- Use .agent-context/ for technical rules, prompts, checklists, policies, and state.
14
- Treat README.md as public and developer overview, setup, usage, and user-facing context only when governance files conflict.
15
-
16
- ## Critical Bootstrap Floor
17
-
18
- - If your host stops at this file, continue the chain manually before coding.
19
- - Read `.agent-instructions.md` next when it exists.
20
- - Memory continuity does not replace bootstrap loading.
21
- - For UI, UX, layout, screen, tailwind, frontend, or redesign requests, load [bootstrap-design.md](../../.agent-context/prompts/bootstrap-design.md) and [frontend-architecture.md](../../.agent-context/rules/frontend-architecture.md) before code edits.
22
- - For UI scope, include a one-line Motion/Palette Decision in the Bootstrap Receipt; product categories are heuristics, not style presets.
23
- - For UI scope, create or refine `docs/DESIGN.md` and `docs/design-intent.json` before UI implementation.
24
- - For documentation-first requests, create or refine required project docs in English by default and do not write application, firmware, or UI code until the user asks or approves.
25
- - Create or refine root README.md as the public and developer entrypoint before implementation.
26
- - For backend, API, data, auth, error, event, queue, worker, or distributed-system requests, load only relevant global rules from .agent-context/rules/ ([link](../../.agent-context/rules)).
27
- - For ecosystem, framework, dependency, or Docker claims, perform live web research.
28
- - Resolve runtime choices from project evidence and live official documentation; resolve structural planning from constraints and architecture boundaries.
29
-
30
- ## Mandatory Bootstrap Chain
31
-
32
- 1. Load [.instructions.md](../../.instructions.md).
33
- 2. Load `.agent-instructions.md` when present.
34
- 3. Load only relevant files from .agent-context/rules/ ([link](../../.agent-context/rules)).
35
- 4. Apply matching prompts from .agent-context/prompts/ ([link](../../.agent-context/prompts)).
36
- 5. Enforce .agent-context/review-checklists/ ([link](../../.agent-context/review-checklists/pr-checklist.md)).
37
- 6. Use .agent-context/state/ ([link](../../.agent-context/state)) and .agent-context/policies/ ([link](../../.agent-context/policies)) only when relevant.
38
- 7. Use project docs and live evidence for runtime, dependency, and architecture claims.
39
-
40
- ## Bootstrap Receipt
41
-
42
- For non-trivial coding, review, planning, or governance work, produce a short Bootstrap Receipt before implementation output: `loaded_files`, `selected_rules`, `skipped_rules`, `unreachable_files`, and `validation_plan`.
43
-
44
- ## Completion Gate
45
-
46
- Run [pr-checklist.md](../../.agent-context/review-checklists/pr-checklist.md) before declaring work complete.
47
-
48
- If this adapter drifts from canonical behavior, refresh from [.instructions.md](../../.instructions.md) and update the hash metadata.
@@ -1,45 +0,0 @@
1
- name: Detection Benchmark
2
-
3
- on:
4
- push:
5
- branches:
6
- - '**'
7
- pull_request:
8
- workflow_dispatch:
9
-
10
- permissions:
11
- contents: read
12
-
13
- jobs:
14
- benchmark-detection:
15
- runs-on: ubuntu-latest
16
- timeout-minutes: 10
17
- env:
18
- FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
19
- steps:
20
- - name: Checkout repository
21
- uses: actions/checkout@v4
22
-
23
- - name: Setup Node.js
24
- uses: actions/setup-node@v4
25
- with:
26
- node-version: '22'
27
-
28
- - name: Run detection benchmark
29
- run: |
30
- node ./scripts/detection-benchmark.mjs > detection-benchmark-report.json
31
- test -s detection-benchmark-report.json
32
-
33
- - name: Run benchmark anti-regression gate
34
- run: |
35
- node ./scripts/benchmark-gate.mjs > benchmark-gate-report.json
36
- test -s benchmark-gate-report.json
37
-
38
- - name: Upload benchmark artifact
39
- if: always()
40
- uses: actions/upload-artifact@v4
41
- with:
42
- name: detection-benchmark-report
43
- path: |
44
- detection-benchmark-report.json
45
- benchmark-gate-report.json
@@ -1,50 +0,0 @@
1
- name: Benchmark Intelligence
2
-
3
- on:
4
- schedule:
5
- - cron: '0 2 * * 1'
6
- pull_request:
7
- workflow_dispatch:
8
-
9
- permissions:
10
- contents: read
11
-
12
- jobs:
13
- benchmark-intelligence:
14
- runs-on: ubuntu-latest
15
- timeout-minutes: 10
16
- env:
17
- FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
18
- steps:
19
- - name: Checkout repository
20
- uses: actions/checkout@v4
21
-
22
- - name: Setup Node.js
23
- uses: actions/setup-node@v4
24
- with:
25
- node-version: '22'
26
-
27
- - name: Run benchmark detection report
28
- run: |
29
- node ./scripts/detection-benchmark.mjs > detection-benchmark-report.json
30
- test -s detection-benchmark-report.json
31
-
32
- - name: Run benchmark anti-regression gate
33
- run: |
34
- node ./scripts/benchmark-gate.mjs > benchmark-gate-report.json
35
- test -s benchmark-gate-report.json
36
-
37
- - name: Run benchmark intelligence report
38
- run: |
39
- node ./scripts/benchmark-intelligence.mjs > benchmark-intelligence-report.json
40
- test -s benchmark-intelligence-report.json
41
-
42
- - name: Upload benchmark artifacts
43
- if: always()
44
- uses: actions/upload-artifact@v4
45
- with:
46
- name: benchmark-intelligence-report
47
- path: |
48
- detection-benchmark-report.json
49
- benchmark-gate-report.json
50
- benchmark-intelligence-report.json
@@ -1,37 +0,0 @@
1
- name: Docs Quality Drift Report
2
-
3
- on:
4
- schedule:
5
- - cron: '30 3 * * 2'
6
- pull_request:
7
- workflow_dispatch:
8
-
9
- permissions:
10
- contents: read
11
-
12
- jobs:
13
- docs-quality-drift-report:
14
- runs-on: ubuntu-latest
15
- timeout-minutes: 10
16
- env:
17
- FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
18
- steps:
19
- - name: Checkout repository
20
- uses: actions/checkout@v4
21
-
22
- - name: Setup Node.js
23
- uses: actions/setup-node@v4
24
- with:
25
- node-version: '22'
26
-
27
- - name: Run docs quality drift report
28
- run: |
29
- node ./scripts/docs-quality-drift-report.mjs > docs-quality-drift-report.json
30
- test -s docs-quality-drift-report.json
31
-
32
- - name: Upload docs quality drift artifact
33
- if: always()
34
- uses: actions/upload-artifact@v4
35
- with:
36
- name: docs-quality-drift-report
37
- path: docs-quality-drift-report.json
@@ -1,36 +0,0 @@
1
- name: Frontend Usability Gate
2
-
3
- on:
4
- push:
5
- branches:
6
- - '**'
7
- pull_request:
8
- workflow_dispatch:
9
-
10
- permissions:
11
- contents: read
12
-
13
- jobs:
14
- frontend-usability-audit:
15
- runs-on: ubuntu-latest
16
- timeout-minutes: 10
17
- env:
18
- FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
19
- steps:
20
- - name: Checkout repository
21
- uses: actions/checkout@v4
22
-
23
- - name: Setup Node.js
24
- uses: actions/setup-node@v4
25
- with:
26
- node-version: '22'
27
-
28
- - name: Run frontend usability audit
29
- run: node ./scripts/frontend-usability-audit.mjs > frontend-usability-audit-report.json
30
-
31
- - name: Upload frontend audit artifact
32
- if: always()
33
- uses: actions/upload-artifact@v4
34
- with:
35
- name: frontend-usability-audit-report
36
- path: frontend-usability-audit-report.json