@theglitchking/hit-em-with-the-docs 2.5.0 → 2.6.0

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 (80) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/README.md +74 -0
  4. package/commands/domain.md +48 -0
  5. package/dist/action/core/audit/rules.d.ts.map +1 -1
  6. package/dist/action/core/domains/constants.d.ts +28 -23
  7. package/dist/action/core/domains/constants.d.ts.map +1 -1
  8. package/dist/action/core/domains/detector.d.ts +1 -1
  9. package/dist/action/core/domains/detector.d.ts.map +1 -1
  10. package/dist/action/core/domains/manage.d.ts +76 -0
  11. package/dist/action/core/domains/manage.d.ts.map +1 -0
  12. package/dist/action/core/domains/registry.d.ts +54 -0
  13. package/dist/action/core/domains/registry.d.ts.map +1 -0
  14. package/dist/action/core/links/tracker.d.ts.map +1 -1
  15. package/dist/action/generators/index-generator.d.ts.map +1 -1
  16. package/dist/action/generators/regenerate.d.ts.map +1 -1
  17. package/dist/action/generators/registry-generator.d.ts.map +1 -1
  18. package/dist/action/generators/scaffold.d.ts.map +1 -1
  19. package/dist/action/index.d.ts +1 -0
  20. package/dist/action/index.d.ts.map +1 -1
  21. package/dist/action/index.js +4 -4
  22. package/dist/action/utils/config.d.ts +139 -0
  23. package/dist/action/utils/config.d.ts.map +1 -1
  24. package/dist/action/utils/glob.d.ts +13 -1
  25. package/dist/action/utils/glob.d.ts.map +1 -1
  26. package/dist/cli/index.js +127 -5
  27. package/dist/cli/index.js.map +1 -1
  28. package/dist/core/audit/auditor.js +2 -2
  29. package/dist/core/audit/auditor.js.map +1 -1
  30. package/dist/core/audit/rules.d.ts.map +1 -1
  31. package/dist/core/audit/rules.js +3 -2
  32. package/dist/core/audit/rules.js.map +1 -1
  33. package/dist/core/domains/constants.d.ts +28 -23
  34. package/dist/core/domains/constants.d.ts.map +1 -1
  35. package/dist/core/domains/constants.js +11 -41
  36. package/dist/core/domains/constants.js.map +1 -1
  37. package/dist/core/domains/detector.d.ts +1 -1
  38. package/dist/core/domains/detector.d.ts.map +1 -1
  39. package/dist/core/domains/detector.js +5 -5
  40. package/dist/core/domains/detector.js.map +1 -1
  41. package/dist/core/domains/manage.d.ts +76 -0
  42. package/dist/core/domains/manage.d.ts.map +1 -0
  43. package/dist/core/domains/manage.js +171 -0
  44. package/dist/core/domains/manage.js.map +1 -0
  45. package/dist/core/domains/registry.d.ts +54 -0
  46. package/dist/core/domains/registry.d.ts.map +1 -0
  47. package/dist/core/domains/registry.js +116 -0
  48. package/dist/core/domains/registry.js.map +1 -0
  49. package/dist/core/links/tracker.d.ts.map +1 -1
  50. package/dist/core/links/tracker.js +8 -5
  51. package/dist/core/links/tracker.js.map +1 -1
  52. package/dist/core/maintain/orchestrator.js +2 -2
  53. package/dist/core/maintain/orchestrator.js.map +1 -1
  54. package/dist/core/metadata/schema.d.ts +48 -48
  55. package/dist/generators/index-generator.d.ts.map +1 -1
  56. package/dist/generators/index-generator.js +10 -10
  57. package/dist/generators/index-generator.js.map +1 -1
  58. package/dist/generators/regenerate.d.ts.map +1 -1
  59. package/dist/generators/regenerate.js +5 -4
  60. package/dist/generators/regenerate.js.map +1 -1
  61. package/dist/generators/registry-generator.d.ts.map +1 -1
  62. package/dist/generators/registry-generator.js +6 -6
  63. package/dist/generators/registry-generator.js.map +1 -1
  64. package/dist/generators/scaffold.d.ts.map +1 -1
  65. package/dist/generators/scaffold.js +43 -9
  66. package/dist/generators/scaffold.js.map +1 -1
  67. package/dist/index.d.ts +1 -0
  68. package/dist/index.d.ts.map +1 -1
  69. package/dist/index.js +1 -0
  70. package/dist/index.js.map +1 -1
  71. package/dist/utils/config.d.ts +139 -0
  72. package/dist/utils/config.d.ts.map +1 -1
  73. package/dist/utils/config.js +82 -5
  74. package/dist/utils/config.js.map +1 -1
  75. package/dist/utils/glob.d.ts +13 -1
  76. package/dist/utils/glob.d.ts.map +1 -1
  77. package/dist/utils/glob.js +23 -2
  78. package/dist/utils/glob.js.map +1 -1
  79. package/package.json +1 -1
  80. package/templates/claude/CLAUDE.md +5 -1
@@ -6,13 +6,13 @@
6
6
  },
7
7
  "metadata": {
8
8
  "description": "Official marketplace for hit-em-with-the-docs - Self-managing documentation system",
9
- "version": "2.5.0"
9
+ "version": "2.6.0"
10
10
  },
11
11
  "plugins": [
12
12
  {
13
13
  "name": "hit-em-with-the-docs",
14
14
  "description": "Self-managing documentation system with hierarchical structure, intelligent automation, pattern discovery, and agent orchestration",
15
- "version": "2.5.0",
15
+ "version": "2.6.0",
16
16
  "author": {
17
17
  "name": "TheGlitchKing"
18
18
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "hit-em-with-the-docs",
3
3
  "description": "Self-managing documentation system with hierarchical structure, intelligent automation, pattern discovery, and agent orchestration",
4
- "version": "2.5.0",
4
+ "version": "2.6.0",
5
5
  "author": {
6
6
  "name": "TheGlitchKing",
7
7
  "email": "theglitchking@users.noreply.github.com"
package/README.md CHANGED
@@ -249,6 +249,7 @@ These commands run in your terminal and manage your documentation.
249
249
  | `hewtd maintain` | Run full health check and fix problems |
250
250
  | `hewtd integrate <file>` | Add a document to the system |
251
251
  | `hewtd list` | Show all 15 documentation categories |
252
+ | `hewtd domain list\|add\|remove` | Manage custom domains beyond the built-in 15 |
252
253
  | `hewtd search <query>` | Search for content in your docs |
253
254
  | `hewtd metadata-sync` | Update document information tags |
254
255
  | `hewtd link-check` | Find broken links between documents |
@@ -908,12 +909,25 @@ When you run `hewtd init`, it creates this structure:
908
909
  ├── backups/ # Backup/recovery (priority: 4)
909
910
  ├── plans/ # Planning docs (priority: 3)
910
911
 
912
+ ├── archive/ # Deprecated docs — EXCLUDED from all scans
913
+ ├── drafts/ # Work-in-progress
911
914
  └── reports/ # Generated reports
912
915
  ├── maintenance-YYYYMMDD-HHMMSS.md
913
916
  ├── audit-YYYYMMDD-HHMMSS.md
914
917
  └── links-YYYYMMDD-HHMMSS.md
915
918
  ```
916
919
 
920
+ #### Archived / deprecated docs (`archive/`)
921
+
922
+ Move a doc to `.documentation/archive/` to retire it without deleting it. hewtd
923
+ **excludes the entire `archive/` subtree from every scan** — `audit`,
924
+ `link-check`, `metadata-sync`, `integrate` duplicate-detection, the link graph,
925
+ and `search`. Archived docs are never validated against the frontmatter schema,
926
+ never appear in any INDEX.md/REGISTRY.md, and won't break audit/link-check with
927
+ stale frontmatter. `init` scaffolds the folder with a README explaining the
928
+ convention. `archive` is a reserved name and cannot be registered as a domain.
929
+ To un-deprecate a doc, move it back into a domain folder and run `hewtd maintain`.
930
+
917
931
  ### Domain System
918
932
 
919
933
  The system organizes documentation into 15 specialized domains with different priorities (1-10 scale, higher = more important):
@@ -944,6 +958,66 @@ The system organizes documentation into 15 specialized domains with different pr
944
958
  - **features**: Feature-specific documentation (features, procedures, workflows, quickstart)
945
959
  - **advanced**: Specialized content (troubleshooting, agents, backups, plans)
946
960
 
961
+ #### Custom Domains (2.6.0+)
962
+
963
+ The 15 domains above are **built-in** — they're part of the compiled contract and are always present. Beyond those, you can register your own **custom domains** at runtime (no recompile) via the `hewtd domain` command. Custom domains are stored in your project's `.claude/hit-em-with-the-docs.json` under a `domains: []` array:
964
+
965
+ ```json
966
+ {
967
+ "domains": [
968
+ {
969
+ "id": "ml-pipeline",
970
+ "name": "ML Pipeline",
971
+ "description": "Model training and inference pipeline docs",
972
+ "keywords": ["ml", "model", "training", "inference", "pipeline"],
973
+ "loadPriority": 6,
974
+ "category": "features"
975
+ }
976
+ ]
977
+ }
978
+ ```
979
+
980
+ Entry fields: `id` (kebab-case; can't collide with a built-in), `name`, `description`, `keywords` (at least one — they drive auto-classification in `hewtd integrate`), `loadPriority` (1-10), and `category` (one of `core`, `development`, `features`, `advanced`). You normally don't hand-edit this file — use the commands below.
981
+
982
+ **`hewtd domain list`** — list built-in + custom domains, marked by kind:
983
+
984
+ ```bash
985
+ hewtd domain list
986
+ hewtd domain list --json
987
+ ```
988
+
989
+ **`hewtd domain add <id>`** — validate, write the config entry, scaffold `.documentation/<id>/` (with INDEX.md/REGISTRY.md), and refresh the root indexes. Keywords are required.
990
+
991
+ ```bash
992
+ # Preview first (writes nothing) — shows the proposed config entry + folder
993
+ hewtd domain add ml-pipeline -k "ml,model,training,inference,pipeline" --dry-run
994
+
995
+ # Apply it
996
+ hewtd domain add ml-pipeline \
997
+ -n "ML Pipeline" \
998
+ -d "Model training and inference pipeline docs" \
999
+ -k "ml,model,training,inference,pipeline" \
1000
+ -c features \
1001
+ --load-priority 6
1002
+
1003
+ # Then refresh indexes everywhere
1004
+ hewtd maintain
1005
+ ```
1006
+
1007
+ Guardrails: a built-in id is rejected, duplicate custom ids are rejected, non-kebab-case ids are rejected, empty keywords are rejected, and a bad `category` is rejected.
1008
+
1009
+ **`hewtd domain remove <id>`** (alias `rm`) — remove a custom domain from config. This is **non-destructive**: it never deletes the folder or the docs inside it. Any docs in `.documentation/<id>/` simply become *orphaned* (left on disk, no longer a recognized domain), and the command reports how many. Built-in domains cannot be removed.
1010
+
1011
+ ```bash
1012
+ # Preview — reports how many docs would be orphaned
1013
+ hewtd domain remove ml-pipeline --dry-run
1014
+
1015
+ # Apply
1016
+ hewtd domain remove ml-pipeline
1017
+ ```
1018
+
1019
+ In Claude Code, the `/hit-em-with-the-docs:domain` slash command wraps these and adds a confirm step before `add` (dry-run preview) and `remove` (orphaned-doc count) apply.
1020
+
947
1021
  ### Metadata Schema
948
1022
 
949
1023
  Every document includes YAML frontmatter with up to 22 fields:
@@ -0,0 +1,48 @@
1
+ ---
2
+ description: Manage custom documentation domains (list | add | remove) beyond the built-in 15
3
+ allowed-tools: Bash(npx:*)
4
+ argument-hint: "list | add <id> -k <keywords> | remove <id>"
5
+ ---
6
+
7
+ Arguments: $ARGUMENTS
8
+
9
+ This command wraps `npx --no @theglitchking/hit-em-with-the-docs domain ...`. The plugin ships 15 built-in domains; this lets the user add/remove their own at runtime without recompiling. Dispatch on the first word of `$ARGUMENTS`:
10
+
11
+ ## `list` (or empty arguments)
12
+
13
+ - Run `npx --no @theglitchking/hit-em-with-the-docs domain list` and report the built-in vs custom domains, their category, load priority, and description. Nothing to confirm — this is read-only.
14
+
15
+ ## `add <id>`
16
+
17
+ Adds a custom domain: writes the entry to `.claude/hit-em-with-the-docs.json` (under `domains: []`), scaffolds `.documentation/<id>/` with INDEX.md/REGISTRY.md, and refreshes the root indexes.
18
+
19
+ - Required fields the user must supply:
20
+ - `<id>` — kebab-case (e.g. `mobile`, `ml-pipeline`). A built-in id (e.g. `security`, `api`) is rejected.
21
+ - `-k <comma,separated,keywords>` — **REQUIRED**. These drive auto-classification in `integrate`. If the user did not provide keywords, **ask for them** before running.
22
+ - Optional fields (ask only if relevant): `-n <name>` (defaults to a title-cased id), `-d <description>`, `-c <category>` (one of `core | development | features | advanced`, default `features`), `--load-priority <n>` (1-10, default 5).
23
+ - **Preview first:** run with `--dry-run` to show the user the proposed config entry and the folder that will be scaffolded:
24
+ ```bash
25
+ npx --no @theglitchking/hit-em-with-the-docs domain add <id> -k "<keywords>" [-n "<name>"] [-d "<desc>"] [-c <category>] [--load-priority <n>] --dry-run
26
+ ```
27
+ - Show the user the proposed config entry and folder path. On their confirmation, re-run the **exact same command without `--dry-run`** to apply.
28
+ - After it applies, suggest the user run `hewtd maintain` to fully refresh the indexes and pick the new domain up everywhere.
29
+
30
+ ## `remove <id>` (alias `rm`) — DESTRUCTIVE INTENT, confirm before applying
31
+
32
+ Removes a custom domain from config. It is NON-DESTRUCTIVE on disk — it never deletes the folder or docs — but any docs in `.documentation/<id>/` become **orphaned** (no longer a recognized domain). Built-in domains cannot be removed.
33
+
34
+ - **Always run the dry-run first** to get the orphaned-doc count:
35
+ ```bash
36
+ npx --no @theglitchking/hit-em-with-the-docs domain remove <id> --dry-run
37
+ ```
38
+ - Show the user exactly what will happen, e.g.:
39
+ > Will remove custom domain `<id>`. N document(s) in `.documentation/<id>/` will be ORPHANED (left on disk, NOT deleted).
40
+ - **Only on EXPLICIT confirmation** from the user, re-run for real:
41
+ ```bash
42
+ npx --no @theglitchking/hit-em-with-the-docs domain remove <id>
43
+ ```
44
+ - If the dry-run reports a rejection (e.g. the id is a built-in domain, or no such custom domain exists), relay the error and do not re-run.
45
+
46
+ ## Notes
47
+
48
+ - If the first word is anything other than `list`, `add`, `remove`, or `rm`, tell the user the valid subcommands are `list`, `add <id>`, and `remove <id>`.
@@ -1 +1 @@
1
- {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/core/audit/rules.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACvC,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,eAAe,CAAC;CAChE;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,eAAe,CA+CvE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,cAAc,CAAC,EAAE,MAAM,GACtB,eAAe,CAkDjB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,MAAM,GACZ,eAAe,CA+BjB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,GACZ,eAAe,CAuCjB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,GAChB,eAAe,CAqCjB;AASD;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,SAAS,EAelC,CAAC"}
1
+ {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/core/audit/rules.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACvC,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,eAAe,CAAC;CAChE;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,eAAe,CA+CvE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,cAAc,CAAC,EAAE,MAAM,GACtB,eAAe,CAkDjB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,MAAM,GACZ,eAAe,CA+BjB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,GACZ,eAAe,CAuCjB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,GAChB,eAAe,CAqCjB;AASD;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,SAAS,EAelC,CAAC"}
@@ -3,38 +3,43 @@
3
3
  * The system organizes documentation into 15 specialized domains.
4
4
  */
5
5
  export declare const DOMAINS: readonly ["agents", "api", "architecture", "backups", "database", "devops", "features", "plans", "procedures", "quickstart", "security", "standards", "testing", "troubleshooting", "workflows"];
6
- export type Domain = (typeof DOMAINS)[number];
6
+ /**
7
+ * The 15 compiled-in domains. These are guaranteed present in every project.
8
+ */
9
+ export type BuiltinDomain = (typeof DOMAINS)[number];
10
+ /**
11
+ * A domain id. Widened from the built-in union to also accept arbitrary
12
+ * (config-supplied) custom domain ids, while preserving autocomplete and
13
+ * compile-time safety for references to the built-ins (e.g. `'security'`).
14
+ *
15
+ * The active set at runtime — built-ins plus any custom domains from
16
+ * `.claude/hit-em-with-the-docs.json` — is resolved by the registry
17
+ * (`./registry.ts`). Use the registry's accessors (`getAllDomains`,
18
+ * `isValidDomain`, `getDomainDefinition`, …) for the live set; the `DOMAINS`
19
+ * and `DOMAIN_DEFINITIONS` exports below are the BUILT-INS ONLY.
20
+ */
21
+ export type Domain = BuiltinDomain | (string & {});
22
+ export type DomainCategory = 'core' | 'development' | 'features' | 'advanced';
7
23
  export interface DomainDefinition {
8
24
  id: Domain;
9
25
  name: string;
10
26
  description: string;
11
27
  keywords: string[];
12
28
  loadPriority: number;
13
- category: 'core' | 'development' | 'features' | 'advanced';
29
+ category: DomainCategory;
14
30
  }
15
- export declare const DOMAIN_DEFINITIONS: Record<Domain, DomainDefinition>;
16
- /**
17
- * Get domain definition by ID
18
- */
19
- export declare function getDomainDefinition(domain: Domain): DomainDefinition;
20
- /**
21
- * Get all domain IDs
22
- */
23
- export declare function getAllDomains(): readonly Domain[];
24
- /**
25
- * Get domains by category
26
- */
27
- export declare function getDomainsByCategory(category: DomainDefinition['category']): Domain[];
28
- /**
29
- * Get domains sorted by load priority (highest first)
30
- */
31
- export declare function getDomainsByPriority(): Domain[];
32
31
  /**
33
- * Check if a string is a valid domain
32
+ * Built-in domain definitions ONLY. The runtime-active set (built-ins +
33
+ * custom) lives in the registry — do not iterate this directly in feature
34
+ * code; call `getAllDomains()` / `getDomainDefinition()` from `./registry.ts`.
34
35
  */
35
- export declare function isValidDomain(value: string): value is Domain;
36
+ export declare const DOMAIN_DEFINITIONS: Record<BuiltinDomain, DomainDefinition>;
36
37
  /**
37
- * Get all keywords across all domains
38
+ * Check whether a string is one of the 15 BUILT-IN domains. This is a pure,
39
+ * registry-independent check used where built-in-ness specifically matters
40
+ * (e.g. `hewtd domain remove` refusing to remove a built-in). For "is this a
41
+ * valid domain in the active set (built-in OR custom)", use `isValidDomain()`
42
+ * from `./registry.ts`.
38
43
  */
39
- export declare function getAllKeywords(): Map<string, Domain[]>;
44
+ export declare function isBuiltinDomain(value: string): value is BuiltinDomain;
40
45
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/core/domains/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,OAAO,kMAgBV,CAAC;AAEX,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9C,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,GAAG,aAAa,GAAG,UAAU,GAAG,UAAU,CAAC;CAC5D;AAED,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAwL/D,CAAC;AAEF;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAEpE;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,SAAS,MAAM,EAAE,CAEjD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,gBAAgB,CAAC,UAAU,CAAC,GACrC,MAAM,EAAE,CAEV;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,EAAE,CAI/C;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,MAAM,CAE5D;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAatD"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/core/domains/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,OAAO,kMAgBV,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;AAErD;;;;;;;;;;GAUG;AACH,MAAM,MAAM,MAAM,GAAG,aAAa,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAEnD,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,aAAa,GAAG,UAAU,GAAG,UAAU,CAAC;AAE9E,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAwLtE,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,aAAa,CAErE"}
@@ -1,4 +1,4 @@
1
- import { Domain } from './constants.js';
1
+ import { type Domain } from './constants.js';
2
2
  export interface DomainDetectionResult {
3
3
  domain: Domain | null;
4
4
  confidence: number;
@@ -1 +1 @@
1
- {"version":3,"file":"detector.d.ts","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/core/domains/detector.ts"],"names":[],"mappings":"AACA,OAAO,EACL,MAAM,EAKP,MAAM,gBAAgB,CAAC;AAExB,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;IACjD,kBAAkB,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC9D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAyB,GAClC,qBAAqB,CA8BvB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAyB,GAClC,qBAAqB,CA8CvB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,qBAAqB,CAyD9E;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAyBhE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAyB,GAClC;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAWtF"}
1
+ {"version":3,"file":"detector.d.ts","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/core/domains/detector.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAQ7C,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;IACjD,kBAAkB,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC9D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAyB,GAClC,qBAAqB,CA8BvB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAyB,GAClC,qBAAqB,CA8CvB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,qBAAqB,CAyD9E;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAyBhE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,MAAM,EAChB,QAAQ,GAAE,MAAyB,GAClC;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAWtF"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Custom-domain management: the deterministic WRITER behind
3
+ * `hewtd domain add|remove|list`.
4
+ *
5
+ * All mutation logic lives here (not in the slash command) so it is unit-
6
+ * testable and reused across the CLI, the GitHub Action, and the library
7
+ * export — none of which have an LLM present. The slash command is a thin
8
+ * interaction wrapper that calls this via the CLI.
9
+ */
10
+ import { DOMAIN_CATEGORY_VALUES, type CustomDomainConfig } from '../../utils/config.js';
11
+ import { type DomainDefinition } from './constants.js';
12
+ export interface DomainListResult {
13
+ builtin: DomainDefinition[];
14
+ custom: DomainDefinition[];
15
+ }
16
+ /**
17
+ * List the active domain set, partitioned into built-in vs custom. Reads the
18
+ * registry for the given project root (uncached, so it reflects on-disk config
19
+ * even mid-process).
20
+ */
21
+ export declare function listDomains(projectRoot: string): DomainListResult;
22
+ export interface AddDomainInput {
23
+ projectRoot: string;
24
+ /** Documentation root (e.g. absolute path to `.documentation`). */
25
+ docsPath: string;
26
+ spec: {
27
+ id: string;
28
+ name: string;
29
+ description: string;
30
+ keywords: string[];
31
+ loadPriority: number;
32
+ category: string;
33
+ };
34
+ dryRun?: boolean;
35
+ }
36
+ export interface AddDomainResult {
37
+ ok: boolean;
38
+ /** Validation / collision errors (empty when ok). */
39
+ errors: string[];
40
+ action: 'added' | 'dry_run' | 'rejected';
41
+ spec?: CustomDomainConfig;
42
+ configPath: string;
43
+ domainFolder?: string;
44
+ filesWritten?: string[];
45
+ }
46
+ /**
47
+ * Validate and add a custom domain: writes the entry into config and scaffolds
48
+ * its `.documentation/<id>/` folder (+ INDEX/REGISTRY), then refreshes the root
49
+ * indexes so the new domain is listed. Idempotency: refuses an id that is a
50
+ * built-in or already a configured custom domain.
51
+ */
52
+ export declare function addDomain(input: AddDomainInput): Promise<AddDomainResult>;
53
+ export interface RemoveDomainInput {
54
+ projectRoot: string;
55
+ docsPath: string;
56
+ id: string;
57
+ dryRun?: boolean;
58
+ }
59
+ export interface RemoveDomainResult {
60
+ ok: boolean;
61
+ errors: string[];
62
+ action: 'removed' | 'dry_run' | 'rejected';
63
+ configPath: string;
64
+ /** Number of documents left behind in the folder (NOT deleted). */
65
+ orphanedDocs: number;
66
+ domainFolder: string;
67
+ }
68
+ /**
69
+ * Remove a custom domain from config. NON-DESTRUCTIVE: the
70
+ * `.documentation/<id>/` folder and any docs in it are left on disk — the
71
+ * caller is told how many docs are now orphaned. Refuses to remove a built-in.
72
+ */
73
+ export declare function removeDomain(input: RemoveDomainInput): Promise<RemoveDomainResult>;
74
+ /** Re-exported for the CLI's `--category` help text. */
75
+ export { DOMAIN_CATEGORY_VALUES };
76
+ //# sourceMappingURL=manage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manage.d.ts","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/core/domains/manage.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAKL,sBAAsB,EACtB,KAAK,kBAAkB,EACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAmB,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAYxE,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAC5B,MAAM,EAAE,gBAAgB,EAAE,CAAC;CAC5B;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,gBAAgB,CAUjE;AAMD,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,mEAAmE;IACnE,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,OAAO,CAAC;IACZ,qDAAqD;IACrD,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,UAAU,CAAC;IACzC,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED;;;;;GAKG;AACH,wBAAsB,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC,CA8E/E;AAMD,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAChC,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,kBAAkB,CAAC,CAiE7B;AAED,wDAAwD;AACxD,OAAO,EAAE,sBAAsB,EAAE,CAAC"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Runtime domain registry.
3
+ *
4
+ * The set of valid domains used to be a compile-time constant. As of the
5
+ * custom-domains feature it is resolved at runtime: the 15 built-ins
6
+ * (`DOMAINS` / `DOMAIN_DEFINITIONS`) merged with any custom domains declared
7
+ * in `.claude/hit-em-with-the-docs.json` (`domains: [...]`).
8
+ *
9
+ * This module is the single source of truth for the ACTIVE set. The helper
10
+ * functions here (getAllDomains, getDomainDefinition, isValidDomain, …)
11
+ * replace the const-based versions that previously lived in `constants.ts`;
12
+ * every consumer should import them from here.
13
+ *
14
+ * The registry is a cached singleton. The CLI is a short-lived per-invocation
15
+ * process, so reading config once and caching is correct and keeps the
16
+ * consumer surface synchronous. Tests must call `resetRegistry()` between
17
+ * cases that change config.
18
+ */
19
+ import { type Domain, type DomainDefinition } from './constants.js';
20
+ export interface DomainRegistry {
21
+ /** Ordered ids: built-ins first (declared order), then custom (config order). */
22
+ ids: Domain[];
23
+ definitions: Map<Domain, DomainDefinition>;
24
+ }
25
+ /**
26
+ * Build a fresh registry from disk config (no caching). Exposed mainly for
27
+ * tests and for callers that need a registry for a specific project root.
28
+ */
29
+ export declare function buildRegistry(projectRoot?: string): DomainRegistry;
30
+ /**
31
+ * The cached active registry. Built lazily on first access from the config at
32
+ * `process.cwd()` (or `projectRoot` if passed on the first call).
33
+ */
34
+ export declare function getRegistry(projectRoot?: string): DomainRegistry;
35
+ /** Clear the cached registry. Call this in test setup after mutating config. */
36
+ export declare function resetRegistry(): void;
37
+ /** All active domain ids (built-in + custom), in registry order. */
38
+ export declare function getAllDomains(): Domain[];
39
+ /**
40
+ * Definition for an active domain. Throws on an unknown id — callers iterate
41
+ * `getAllDomains()` or guard with `isValidDomain()` first, so a miss is a bug.
42
+ */
43
+ export declare function getDomainDefinition(domain: Domain): DomainDefinition;
44
+ /** True if `value` is a valid domain in the active set (built-in OR custom). */
45
+ export declare function isValidDomain(value: string): value is Domain;
46
+ /** Active domains in a given category. */
47
+ export declare function getDomainsByCategory(category: DomainCategoryArg): Domain[];
48
+ type DomainCategoryArg = DomainDefinition['category'];
49
+ /** Active domains sorted by load priority (highest first). */
50
+ export declare function getDomainsByPriority(): Domain[];
51
+ /** Map of keyword → domains that declare it, across the active set. */
52
+ export declare function getAllKeywords(): Map<string, Domain[]>;
53
+ export {};
54
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/core/domains/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH,OAAO,EAGL,KAAK,MAAM,EACX,KAAK,gBAAgB,EACtB,MAAM,gBAAgB,CAAC;AAExB,MAAM,WAAW,cAAc;IAC7B,iFAAiF;IACjF,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;CAC5C;AAID;;;GAGG;AACH,wBAAgB,aAAa,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,cAAc,CAkClE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,cAAc,CAKhE;AAED,gFAAgF;AAChF,wBAAgB,aAAa,IAAI,IAAI,CAEpC;AAMD,oEAAoE;AACpE,wBAAgB,aAAa,IAAI,MAAM,EAAE,CAExC;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAMpE;AAED,gFAAgF;AAChF,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,MAAM,CAE5D;AAED,0CAA0C;AAC1C,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,EAAE,CAG1E;AACD,KAAK,iBAAiB,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;AAEtD,8DAA8D;AAC9D,wBAAgB,oBAAoB,IAAI,MAAM,EAAE,CAM/C;AAED,uEAAuE;AACvE,wBAAgB,cAAc,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CActD"}
@@ -1 +1 @@
1
- {"version":3,"file":"tracker.d.ts","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/core/links/tracker.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAGtD,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,KAAK,EAAE,QAAQ,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAiEzE;AAED;;GAEG;AACH,wBAAsB,2BAA2B,CAC/C,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,sBAAsB,CAAC,CA+BjC;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,QAAQ,EAAE,MAAM,EAChB,KAAK,GAAE,MAAW,GACjB,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,CAoBxD;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,CAWrE;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAWzE;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,QAAQ,EAAE,MAAM,EAChB,SAAS,GAAE,MAAU,GACpB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAMrB;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IACjE,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,qBAAqB,EAAE,MAAM,CAAC;CAC/B,CAAC,CA8BD"}
1
+ {"version":3,"file":"tracker.d.ts","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/core/links/tracker.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAGtD,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,KAAK,EAAE,QAAQ,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAiEzE;AAED;;GAEG;AACH,wBAAsB,2BAA2B,CAC/C,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,sBAAsB,CAAC,CAmCjC;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,QAAQ,EAAE,MAAM,EAChB,KAAK,GAAE,MAAW,GACjB,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,CAoBxD;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,CAWrE;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAWzE;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,QAAQ,EAAE,MAAM,EAChB,SAAS,GAAE,MAAU,GACpB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAMrB;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IACjE,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,qBAAqB,EAAE,MAAM,CAAC;CAC/B,CAAC,CA8BD"}
@@ -1 +1 @@
1
- {"version":3,"file":"index-generator.d.ts","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/generators/index-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAGxF,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,GAAG,MAAM,CA+DhF;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,UAAU,EAAO,GACzB,MAAM,CA0ER"}
1
+ {"version":3,"file":"index-generator.d.ts","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/generators/index-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAI3D,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,GAAG,MAAM,CA+DhF;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,UAAU,EAAO,GACzB,MAAM,CA0ER"}
@@ -1 +1 @@
1
- {"version":3,"file":"regenerate.d.ts","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/generators/regenerate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAW,KAAK,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAkBpE,MAAM,WAAW,iBAAiB;IAChC,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,0EAA0E;IAC1E,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,8DAA8D;IAC9D,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,0CAA0C;IAC1C,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,EAAE,CAAC,CASnB;AAkED;;;;;;;;;GASG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,gBAAgB,CAAC,CAiE3B"}
1
+ {"version":3,"file":"regenerate.d.ts","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/generators/regenerate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAmB3D,MAAM,WAAW,iBAAiB;IAChC,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,0EAA0E;IAC1E,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,8DAA8D;IAC9D,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,0CAA0C;IAC1C,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,EAAE,CAAC,CASnB;AAkED;;;;;;;;;GASG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,gBAAgB,CAAC,CAkE3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"registry-generator.d.ts","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/generators/registry-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAExF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvD;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CA+D7C;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,UAAU,EAAO,GACzB,MAAM,CA8ER"}
1
+ {"version":3,"file":"registry-generator.d.ts","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/generators/registry-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAO3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvD;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CA6D7C;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,UAAU,EAAO,GACzB,MAAM,CA8ER"}
@@ -1 +1 @@
1
- {"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/generators/scaffold.ts"],"names":[],"mappings":"AAEA,OAAO,EAA+B,KAAK,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAQxF,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAsDtF;AA6KD;;GAEG;AACH,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAGvE;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IACjE,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B,CAAC,CA4BD"}
1
+ {"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/generators/scaffold.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAS3D,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAsDtF;AAuND;;GAEG;AACH,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAGvE;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IACjE,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B,CAAC,CA4BD"}
@@ -5,6 +5,7 @@
5
5
  * intelligent automation, pattern discovery, and agent orchestration.
6
6
  */
7
7
  export * from './core/domains/constants.js';
8
+ export * from './core/domains/registry.js';
8
9
  export * from './core/domains/detector.js';
9
10
  export * from './core/domains/classifier.js';
10
11
  export * from './core/metadata/schema.js';
@@ -1 +1 @@
1
- {"version":3,"file":"","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,cAAc,6BAA6B,CAAC;AAC5C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAG7C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAG7C,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iCAAiC,CAAC;AAChD,cAAc,oCAAoC,CAAC;AACnD,cAAc,4BAA4B,CAAC;AAG3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAGhD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iCAAiC,CAAC;AAGhD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AAGzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iCAAiC,CAAC;AAChD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"","sourceRoot":"","sources":["file:///home/tmarlette/workspace/the-glitch-kingdom/hit-em-with-the-docs/src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,cAAc,6BAA6B,CAAC;AAC5C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAG7C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAG7C,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iCAAiC,CAAC;AAChD,cAAc,oCAAoC,CAAC;AACnD,cAAc,4BAA4B,CAAC;AAG3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAGhD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,iCAAiC,CAAC;AAGhD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AAGzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iCAAiC,CAAC;AAChD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC"}