@arcforge/err 2.0.129 → 2.0.131

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 (2) hide show
  1. package/package.json +2 -2
  2. package/src/map.ts +49 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arcforge/err",
3
- "version": "2.0.129",
3
+ "version": "2.0.131",
4
4
  "description": "Structured Axon errors — the code map every user-facing failure is rendered from.",
5
5
  "type": "module",
6
6
  "private": false,
@@ -15,7 +15,7 @@
15
15
  "deploy": "echo \"This package is published ONLY by apps/tui/scripts/release.ts, which pins workspace:* deps to concrete versions first. Publishing it directly ships an unresolvable dependency.\" && exit 1"
16
16
  },
17
17
  "dependencies": {
18
- "@arcforge/types": "2.0.129"
18
+ "@arcforge/types": "2.0.131"
19
19
  },
20
20
  "devDependencies": {
21
21
  "@types/bun": "latest",
package/src/map.ts CHANGED
@@ -1495,6 +1495,47 @@ export const errorMap = {
1495
1495
  source: "manifest",
1496
1496
  severity: "fatal",
1497
1497
  },
1498
+ // ── README assets (build/project/bundle/assets.ts) ──────────────────────
1499
+ ASSET_TYPE_REFUSED: {
1500
+ code: "AX-PROJECT-038",
1501
+ title: "Unsupported Asset Type",
1502
+ description: "A file in assets/ is not a type the registry serves. Images (png, jpg, jpeg, webp, gif) and video (mp4, webm, mov) are accepted. SVG is deliberately refused: it is an executable document that would be served from our own storage origin, so a published SVG is a script-injection surface for every visitor reading that README.",
1503
+ source: "manifest",
1504
+ severity: "fatal",
1505
+ expected: true,
1506
+ },
1507
+ ASSET_TOO_LARGE: {
1508
+ code: "AX-PROJECT-039",
1509
+ title: "Asset Exceeds Size Limit",
1510
+ description: "A single file in assets/ is over the per-asset limit. Assets exist to illustrate a README, not to distribute media — compress the file or link to it externally.",
1511
+ source: "manifest",
1512
+ severity: "fatal",
1513
+ expected: true,
1514
+ },
1515
+ ASSETS_BUDGET_EXCEEDED: {
1516
+ code: "AX-PROJECT-040",
1517
+ title: "Assets Exceed Total Budget",
1518
+ description: "The assets/ folder as a whole is over budget for one published version. Every version stores its own copy of every asset, so the total is what determines how much a package costs to host forever.",
1519
+ source: "manifest",
1520
+ severity: "fatal",
1521
+ expected: true,
1522
+ },
1523
+ ASSET_PATH_INVALID: {
1524
+ code: "AX-PROJECT-041",
1525
+ title: "Unsafe Asset Path",
1526
+ description: "An entry under assets/ is a symlink, or its name escapes the assets directory. Both are refused: a published asset must be a real file that lands where its name says it does, or extraction on the server could write outside the target directory.",
1527
+ source: "manifest",
1528
+ severity: "fatal",
1529
+ expected: true,
1530
+ },
1531
+ ASSET_UNREADABLE: {
1532
+ code: "AX-PROJECT-042",
1533
+ title: "Asset Could Not Be Processed",
1534
+ description: "A file in assets/ has an image extension but could not be decoded, so it is either corrupt or not the format its name claims. Publishing it would ship a broken image into a README.",
1535
+ source: "manifest",
1536
+ severity: "fatal",
1537
+ expected: true,
1538
+ },
1498
1539
  PORT_UNAVAILABLE: {
1499
1540
  code: "AX-PROJECT-031",
1500
1541
  title: "No Free Port",
@@ -1722,6 +1763,14 @@ export const errorMap = {
1722
1763
  severity: "degraded",
1723
1764
  expected: true,
1724
1765
  },
1766
+ EXTENSION_UNINSTALL_FAILED: {
1767
+ code: "AX-EXT-028",
1768
+ title: "Extension Uninstall Failed",
1769
+ description: "An extension could not be removed from profile.config.ts — most often the file is unreadable or has been edited into a shape the editor cannot find the extensions list in. The extension is still declared and will load on the next launch.",
1770
+ source: "tui",
1771
+ severity: "degraded",
1772
+ expected: true,
1773
+ },
1725
1774
  EXTENSION_NOT_AN_EXTENSION: {
1726
1775
  code: "AX-EXT-006",
1727
1776
  title: "Not an Extension",