|
13 | 13 | }, |
14 | 14 | { |
15 | 15 | "group": ["bun", "bun:*"], |
16 | | - "message": "Bun module imports are not available in the nodejs build — use a portable alternative." |
| 16 | + "message": "Bun module imports are not available in the nodejs build \u2014 use a portable alternative." |
17 | 17 | } |
18 | 18 | ] |
19 | 19 | } |
|
28 | 28 | "error", |
29 | 29 | { |
30 | 30 | "name": "Bun", |
31 | | - "message": "Bun global is not available in the nodejs build — use a Bun-compatible API or guard with typeof Bun !== 'undefined'." |
| 31 | + "message": "Bun global is not available in the nodejs build \u2014 use a Bun-compatible API or guard with typeof Bun !== 'undefined'." |
32 | 32 | } |
33 | 33 | ], |
34 | 34 | "eslint/eqeqeq": "error", |
|
124 | 124 | }, |
125 | 125 | { |
126 | 126 | "group": ["bun", "bun:*"], |
127 | | - "message": "Bun module imports are not available in the nodejs build — use a portable alternative." |
| 127 | + "message": "Bun module imports are not available in the nodejs build \u2014 use a portable alternative." |
128 | 128 | }, |
129 | 129 | { |
130 | 130 | "group": ["~/shell/*", "~/shell/**"], |
131 | | - "message": "core/ must not import from shell/ — keep core/ pure." |
| 131 | + "message": "core/ must not import from shell/ \u2014 keep core/ pure." |
132 | 132 | }, |
133 | 133 | { |
134 | 134 | "group": ["~/domains/*", "~/domains/**"], |
|
140 | 140 | }, |
141 | 141 | { |
142 | 142 | "group": ["node:fs", "fs", "node:fs/promises", "fs/promises"], |
143 | | - "message": "core/ must not import node:fs — keep core/ pure." |
| 143 | + "message": "core/ must not import node:fs \u2014 keep core/ pure." |
144 | 144 | }, |
145 | 145 | { |
146 | 146 | "group": ["node:child_process", "child_process"], |
147 | | - "message": "core/ must not import node:child_process — keep core/ pure." |
| 147 | + "message": "core/ must not import node:child_process \u2014 keep core/ pure." |
148 | 148 | }, |
149 | 149 | { |
150 | 150 | "group": ["node:readline", "readline"], |
151 | | - "message": "core/ must not import node:readline — keep core/ pure." |
| 151 | + "message": "core/ must not import node:readline \u2014 keep core/ pure." |
152 | 152 | } |
153 | 153 | ] |
154 | 154 | } |
|
168 | 168 | }, |
169 | 169 | { |
170 | 170 | "group": ["bun", "bun:*"], |
171 | | - "message": "Bun module imports are not available in the nodejs build — use a portable alternative." |
| 171 | + "message": "Bun module imports are not available in the nodejs build \u2014 use a portable alternative." |
172 | 172 | }, |
173 | 173 | { |
174 | 174 | "group": ["~/domains/*", "~/domains/**"], |
|
196 | 196 | }, |
197 | 197 | { |
198 | 198 | "group": ["bun", "bun:*"], |
199 | | - "message": "Bun module imports are not available in the nodejs build — use a portable alternative." |
| 199 | + "message": "Bun module imports are not available in the nodejs build \u2014 use a portable alternative." |
200 | 200 | }, |
201 | 201 | { |
202 | 202 | "group": ["~/commands/*", "~/commands/**"], |
|
239 | 239 | }, |
240 | 240 | { |
241 | 241 | "group": ["node:fs", "fs", "node:fs/promises", "fs/promises"], |
242 | | - "message": "domains/ must not import node:fs — file I/O belongs in shell/." |
| 242 | + "message": "domains/ must not import node:fs \u2014 file I/O belongs in shell/." |
243 | 243 | }, |
244 | 244 | { |
245 | 245 | "group": ["node:child_process", "child_process"], |
246 | | - "message": "domains/ must not import node:child_process — use SpawnFn from shell/spawn.js." |
| 246 | + "message": "domains/ must not import node:child_process \u2014 use SpawnFn from shell/spawn.js." |
247 | 247 | }, |
248 | 248 | { |
249 | 249 | "group": ["node:readline", "readline"], |
250 | | - "message": "domains/ must not import node:readline — use UI from shell/ui/." |
| 250 | + "message": "domains/ must not import node:readline \u2014 use UI from shell/ui/." |
251 | 251 | } |
252 | 252 | ] |
253 | 253 | } |
|
267 | 267 | }, |
268 | 268 | { |
269 | 269 | "group": ["bun", "bun:*"], |
270 | | - "message": "Bun module imports are not available in the nodejs build — use a portable alternative." |
| 270 | + "message": "Bun module imports are not available in the nodejs build \u2014 use a portable alternative." |
271 | 271 | }, |
272 | 272 | { |
273 | 273 | "group": ["~/commands/*", "~/commands/**"], |
|
310 | 310 | }, |
311 | 311 | { |
312 | 312 | "group": ["node:fs", "fs", "node:fs/promises", "fs/promises"], |
313 | | - "message": "domains/ must not import node:fs — file I/O belongs in shell/." |
| 313 | + "message": "domains/ must not import node:fs \u2014 file I/O belongs in shell/." |
314 | 314 | }, |
315 | 315 | { |
316 | 316 | "group": ["node:child_process", "child_process"], |
317 | | - "message": "domains/ must not import node:child_process — use SpawnFn from shell/spawn.js." |
| 317 | + "message": "domains/ must not import node:child_process \u2014 use SpawnFn from shell/spawn.js." |
318 | 318 | }, |
319 | 319 | { |
320 | 320 | "group": ["node:readline", "readline"], |
321 | | - "message": "domains/ must not import node:readline — use UI from shell/ui/." |
| 321 | + "message": "domains/ must not import node:readline \u2014 use UI from shell/ui/." |
322 | 322 | } |
323 | 323 | ] |
324 | 324 | } |
|
338 | 338 | }, |
339 | 339 | { |
340 | 340 | "group": ["bun", "bun:*"], |
341 | | - "message": "Bun module imports are not available in the nodejs build — use a portable alternative." |
| 341 | + "message": "Bun module imports are not available in the nodejs build \u2014 use a portable alternative." |
342 | 342 | }, |
343 | 343 | { |
344 | 344 | "group": ["~/commands/*", "~/commands/**"], |
|
381 | 381 | }, |
382 | 382 | { |
383 | 383 | "group": ["node:fs", "fs", "node:fs/promises", "fs/promises"], |
384 | | - "message": "domains/ must not import node:fs — file I/O belongs in shell/." |
| 384 | + "message": "domains/ must not import node:fs \u2014 file I/O belongs in shell/." |
385 | 385 | }, |
386 | 386 | { |
387 | 387 | "group": ["node:child_process", "child_process"], |
388 | | - "message": "domains/ must not import node:child_process — use SpawnFn from shell/spawn.js." |
| 388 | + "message": "domains/ must not import node:child_process \u2014 use SpawnFn from shell/spawn.js." |
389 | 389 | }, |
390 | 390 | { |
391 | 391 | "group": ["node:readline", "readline"], |
392 | | - "message": "domains/ must not import node:readline — use UI from shell/ui/." |
| 392 | + "message": "domains/ must not import node:readline \u2014 use UI from shell/ui/." |
393 | 393 | } |
394 | 394 | ] |
395 | 395 | } |
|
409 | 409 | }, |
410 | 410 | { |
411 | 411 | "group": ["bun", "bun:*"], |
412 | | - "message": "Bun module imports are not available in the nodejs build — use a portable alternative." |
| 412 | + "message": "Bun module imports are not available in the nodejs build \u2014 use a portable alternative." |
413 | 413 | }, |
414 | 414 | { |
415 | 415 | "group": ["~/commands/*", "~/commands/**"], |
|
452 | 452 | }, |
453 | 453 | { |
454 | 454 | "group": ["node:fs", "fs", "node:fs/promises", "fs/promises"], |
455 | | - "message": "domains/ must not import node:fs — file I/O belongs in shell/." |
| 455 | + "message": "domains/ must not import node:fs \u2014 file I/O belongs in shell/." |
456 | 456 | }, |
457 | 457 | { |
458 | 458 | "group": ["node:child_process", "child_process"], |
459 | | - "message": "domains/ must not import node:child_process — use SpawnFn from shell/spawn.js." |
| 459 | + "message": "domains/ must not import node:child_process \u2014 use SpawnFn from shell/spawn.js." |
460 | 460 | }, |
461 | 461 | { |
462 | 462 | "group": ["node:readline", "readline"], |
463 | | - "message": "domains/ must not import node:readline — use UI from shell/ui/." |
| 463 | + "message": "domains/ must not import node:readline \u2014 use UI from shell/ui/." |
464 | 464 | } |
465 | 465 | ] |
466 | 466 | } |
|
480 | 480 | }, |
481 | 481 | { |
482 | 482 | "group": ["bun", "bun:*"], |
483 | | - "message": "Bun module imports are not available in the nodejs build — use a portable alternative." |
| 483 | + "message": "Bun module imports are not available in the nodejs build \u2014 use a portable alternative." |
484 | 484 | }, |
485 | 485 | { |
486 | 486 | "group": ["~/commands/*", "~/commands/**"], |
|
523 | 523 | }, |
524 | 524 | { |
525 | 525 | "group": ["node:fs", "fs", "node:fs/promises", "fs/promises"], |
526 | | - "message": "domains/ must not import node:fs — file I/O belongs in shell/." |
| 526 | + "message": "domains/ must not import node:fs \u2014 file I/O belongs in shell/." |
527 | 527 | }, |
528 | 528 | { |
529 | 529 | "group": ["node:child_process", "child_process"], |
530 | | - "message": "domains/ must not import node:child_process — use SpawnFn from shell/spawn.js." |
| 530 | + "message": "domains/ must not import node:child_process \u2014 use SpawnFn from shell/spawn.js." |
531 | 531 | }, |
532 | 532 | { |
533 | 533 | "group": ["node:readline", "readline"], |
534 | | - "message": "domains/ must not import node:readline — use UI from shell/ui/." |
| 534 | + "message": "domains/ must not import node:readline \u2014 use UI from shell/ui/." |
535 | 535 | } |
536 | 536 | ] |
537 | 537 | } |
|
551 | 551 | }, |
552 | 552 | { |
553 | 553 | "group": ["bun", "bun:*"], |
554 | | - "message": "Bun module imports are not available in the nodejs build — use a portable alternative." |
| 554 | + "message": "Bun module imports are not available in the nodejs build \u2014 use a portable alternative." |
555 | 555 | }, |
556 | 556 | { |
557 | 557 | "group": ["~/commands/*", "~/commands/**"], |
|
594 | 594 | }, |
595 | 595 | { |
596 | 596 | "group": ["node:fs", "fs", "node:fs/promises", "fs/promises"], |
597 | | - "message": "domains/ must not import node:fs — file I/O belongs in shell/." |
| 597 | + "message": "domains/ must not import node:fs \u2014 file I/O belongs in shell/." |
598 | 598 | }, |
599 | 599 | { |
600 | 600 | "group": ["node:child_process", "child_process"], |
601 | | - "message": "domains/ must not import node:child_process — use SpawnFn from shell/spawn.js." |
| 601 | + "message": "domains/ must not import node:child_process \u2014 use SpawnFn from shell/spawn.js." |
602 | 602 | }, |
603 | 603 | { |
604 | 604 | "group": ["node:readline", "readline"], |
605 | | - "message": "domains/ must not import node:readline — use UI from shell/ui/." |
| 605 | + "message": "domains/ must not import node:readline \u2014 use UI from shell/ui/." |
606 | 606 | } |
607 | 607 | ] |
608 | 608 | } |
|
622 | 622 | }, |
623 | 623 | { |
624 | 624 | "group": ["bun", "bun:*"], |
625 | | - "message": "Bun module imports are not available in the nodejs build — use a portable alternative." |
| 625 | + "message": "Bun module imports are not available in the nodejs build \u2014 use a portable alternative." |
626 | 626 | }, |
627 | 627 | { |
628 | 628 | "group": ["~/commands/*", "~/commands/**"], |
|
665 | 665 | }, |
666 | 666 | { |
667 | 667 | "group": ["node:fs", "fs", "node:fs/promises", "fs/promises"], |
668 | | - "message": "domains/ must not import node:fs — file I/O belongs in shell/." |
| 668 | + "message": "domains/ must not import node:fs \u2014 file I/O belongs in shell/." |
669 | 669 | }, |
670 | 670 | { |
671 | 671 | "group": ["node:child_process", "child_process"], |
672 | | - "message": "domains/ must not import node:child_process — use SpawnFn from shell/spawn.js." |
| 672 | + "message": "domains/ must not import node:child_process \u2014 use SpawnFn from shell/spawn.js." |
673 | 673 | }, |
674 | 674 | { |
675 | 675 | "group": ["node:readline", "readline"], |
676 | | - "message": "domains/ must not import node:readline — use UI from shell/ui/." |
| 676 | + "message": "domains/ must not import node:readline \u2014 use UI from shell/ui/." |
677 | 677 | } |
678 | 678 | ] |
679 | 679 | } |
|
693 | 693 | }, |
694 | 694 | { |
695 | 695 | "group": ["bun", "bun:*"], |
696 | | - "message": "Bun module imports are not available in the nodejs build — use a portable alternative." |
| 696 | + "message": "Bun module imports are not available in the nodejs build \u2014 use a portable alternative." |
697 | 697 | }, |
698 | 698 | { |
699 | 699 | "group": ["~/commands/*", "~/commands/**"], |
|
733 | 733 | }, |
734 | 734 | { |
735 | 735 | "group": ["node:fs", "fs", "node:fs/promises", "fs/promises"], |
736 | | - "message": "domains/ must not import node:fs — file I/O belongs in shell/." |
| 736 | + "message": "domains/ must not import node:fs \u2014 file I/O belongs in shell/." |
737 | 737 | }, |
738 | 738 | { |
739 | 739 | "group": ["node:child_process", "child_process"], |
740 | | - "message": "domains/ must not import node:child_process — use SpawnFn from shell/spawn.js." |
| 740 | + "message": "domains/ must not import node:child_process \u2014 use SpawnFn from shell/spawn.js." |
741 | 741 | }, |
742 | 742 | { |
743 | 743 | "group": ["node:readline", "readline"], |
744 | | - "message": "domains/ must not import node:readline — use UI from shell/ui/." |
| 744 | + "message": "domains/ must not import node:readline \u2014 use UI from shell/ui/." |
745 | 745 | } |
746 | 746 | ] |
747 | 747 | } |
|
761 | 761 | }, |
762 | 762 | { |
763 | 763 | "group": ["bun", "bun:*"], |
764 | | - "message": "Bun module imports are not available in the nodejs build — use a portable alternative." |
| 764 | + "message": "Bun module imports are not available in the nodejs build \u2014 use a portable alternative." |
765 | 765 | }, |
766 | 766 | { |
767 | 767 | "group": ["~/commands/*", "~/commands/**"], |
|
804 | 804 | }, |
805 | 805 | { |
806 | 806 | "group": ["node:fs", "fs", "node:fs/promises", "fs/promises"], |
807 | | - "message": "domains/ must not import node:fs — file I/O belongs in shell/." |
| 807 | + "message": "domains/ must not import node:fs \u2014 file I/O belongs in shell/." |
808 | 808 | }, |
809 | 809 | { |
810 | 810 | "group": ["node:child_process", "child_process"], |
811 | | - "message": "domains/ must not import node:child_process — use SpawnFn from shell/spawn.js." |
| 811 | + "message": "domains/ must not import node:child_process \u2014 use SpawnFn from shell/spawn.js." |
812 | 812 | }, |
813 | 813 | { |
814 | 814 | "group": ["node:readline", "readline"], |
815 | | - "message": "domains/ must not import node:readline — use UI from shell/ui/." |
| 815 | + "message": "domains/ must not import node:readline \u2014 use UI from shell/ui/." |
| 816 | + } |
| 817 | + ] |
| 818 | + } |
| 819 | + ] |
| 820 | + } |
| 821 | + }, |
| 822 | + { |
| 823 | + "files": ["src/runnerSdk/**/*.ts"], |
| 824 | + "rules": { |
| 825 | + "eslint/no-restricted-imports": [ |
| 826 | + "error", |
| 827 | + { |
| 828 | + "patterns": [ |
| 829 | + { |
| 830 | + "group": ["../*"], |
| 831 | + "message": "Use \"~/\" path alias instead of relative parent imports." |
| 832 | + }, |
| 833 | + { |
| 834 | + "group": ["bun", "bun:*"], |
| 835 | + "message": "Bun module imports are not available in the nodejs build \u2014 use a portable alternative." |
| 836 | + }, |
| 837 | + { |
| 838 | + "group": ["~/commands/*", "~/commands/**"], |
| 839 | + "message": "runnerSdk/ is the published library entry and must not import from commands/." |
816 | 840 | } |
817 | 841 | ] |
818 | 842 | } |
|
827 | 851 | { |
828 | 852 | "object": "process", |
829 | 853 | "property": "stdout", |
830 | | - "message": "core/ and domains/ must not write to process.stdout — return data and let shell/ render it." |
| 854 | + "message": "core/ and domains/ must not write to process.stdout \u2014 return data and let shell/ render it." |
831 | 855 | }, |
832 | 856 | { |
833 | 857 | "object": "process", |
834 | 858 | "property": "stderr", |
835 | | - "message": "core/ and domains/ must not write to process.stderr — return data and let shell/ render it." |
| 859 | + "message": "core/ and domains/ must not write to process.stderr \u2014 return data and let shell/ render it." |
836 | 860 | }, |
837 | 861 | { |
838 | 862 | "object": "process", |
839 | 863 | "property": "stdin", |
840 | | - "message": "core/ and domains/ must not read from process.stdin — use UI from shell/ui/." |
| 864 | + "message": "core/ and domains/ must not read from process.stdin \u2014 use UI from shell/ui/." |
841 | 865 | } |
842 | 866 | ] |
843 | 867 | } |
|
0 commit comments