@fulmenhq/tsfulmen 0.1.7 → 0.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +42 -0
- package/config/crucible-ts/library/foundry/exit-codes.snapshot.json +24 -26
- package/config/crucible-ts/library/foundry/simplified-modes.snapshot.json +25 -4
- package/config/crucible-ts/taxonomy/metrics.yaml +159 -3
- package/config/crucible-ts/taxonomy/repository-categories.yaml +51 -2
- package/dist/appidentity/index.js +248 -52
- package/dist/appidentity/index.js.map +1 -1
- package/dist/config/index.js +248 -52
- package/dist/config/index.js.map +1 -1
- package/dist/crucible/index.js +248 -52
- package/dist/crucible/index.js.map +1 -1
- package/dist/errors/index.js +248 -52
- package/dist/errors/index.js.map +1 -1
- package/dist/foundry/index.d.ts +2 -2
- package/dist/foundry/index.js +248 -52
- package/dist/foundry/index.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +249 -53
- package/dist/index.js.map +1 -1
- package/dist/pathfinder/index.d.ts +1 -1
- package/dist/pathfinder/index.js +248 -52
- package/dist/pathfinder/index.js.map +1 -1
- package/dist/{registry-x1-Qi_Tz.d.ts → registry-BoDv4iHO.d.ts} +81 -18
- package/dist/schema/index.js +248 -52
- package/dist/schema/index.js.map +1 -1
- package/dist/telemetry/index.d.ts +2 -2
- package/dist/telemetry/index.js +248 -52
- package/dist/telemetry/index.js.map +1 -1
- package/package.json +7 -1
- package/schemas/crucible-ts/api/http/v1.0.0/README.md +0 -22
- package/schemas/crucible-ts/api/http/v1.0.0/error-response.schema.json +0 -54
- package/schemas/crucible-ts/api/http/v1.0.0/health-response.schema.json +0 -70
- package/schemas/crucible-ts/api/http/v1.0.0/success-response.schema.json +0 -51
- package/schemas/crucible-ts/api/http/v1.0.0/version-response.schema.json +0 -61
package/CHANGELOG.md
CHANGED
|
@@ -9,6 +9,48 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
9
9
|
|
|
10
10
|
---
|
|
11
11
|
|
|
12
|
+
## [0.1.8] - 2025-11-08
|
|
13
|
+
|
|
14
|
+
**Remote Sync Infrastructure** - Upgraded to goneat v0.3.4 with force-remote configuration and improved build artifact testing.
|
|
15
|
+
|
|
16
|
+
### Fixed
|
|
17
|
+
|
|
18
|
+
- **Verification Script TypeScript Errors**:
|
|
19
|
+
- Fixed incorrect default import for `tmpdir` from `node:os`
|
|
20
|
+
- Corrected `run()` function return type to handle `Buffer | string`
|
|
21
|
+
- Added `'ignore'` to stdio type union
|
|
22
|
+
- Removed unused `existsSync` import
|
|
23
|
+
- **Missing await on async catalog functions**: Added proper `await` to `getSignalsVersion()` call in verification script
|
|
24
|
+
- **Build Artifacts Test Failure**: Fixed test expecting built `dist/` artifacts by ensuring build runs before tests
|
|
25
|
+
|
|
26
|
+
### Added
|
|
27
|
+
|
|
28
|
+
- **Unit Tests for Verification Script**: Created `scripts/__tests__/verify-published-package.test.ts` with 5 tests
|
|
29
|
+
- Validates TypeScript compilation
|
|
30
|
+
- Checks async/await usage for all catalog functions
|
|
31
|
+
- Verifies VERSION export validation logic
|
|
32
|
+
- Ensures proper cleanup in finally block
|
|
33
|
+
- Validates stdio options correctness
|
|
34
|
+
- **Remote-Only Sync Configuration**: Updated `.goneat/ssot-consumer.yaml` with new `force_remote: true` field
|
|
35
|
+
- Replaces deprecated `method: remote` with standardized `force_remote: true`
|
|
36
|
+
- Ensures CI/CD and fresh clones always use remote Crucible v0.2.8
|
|
37
|
+
- Prevents accidental local sync from `../crucible` directories
|
|
38
|
+
|
|
39
|
+
### Changed
|
|
40
|
+
|
|
41
|
+
- **Goneat Upgrade**: Updated from v0.3.3 to v0.3.4 with new force-remote capabilities
|
|
42
|
+
- **SSOT Configuration**: Migrated to new goneat v0.3.4 schema with `force_remote` field support
|
|
43
|
+
- **Makefile Sync Target**: Uses `--force-remote` flag to override any local auto-detection
|
|
44
|
+
- **Provenance Tracking**: Enhanced provenance metadata shows `forced_remote: true` and `forced_by: flag`
|
|
45
|
+
|
|
46
|
+
### Meta
|
|
47
|
+
|
|
48
|
+
- Addresses the "chicken and egg" problem: verification tooling now has its own verification tests
|
|
49
|
+
- Ensures code quality checks are not dismissed - all TypeScript errors resolved
|
|
50
|
+
- Guarantees reproducible remote syncs for all users regardless of local directory structure
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
12
54
|
## [0.1.7] - 2025-11-06
|
|
13
55
|
|
|
14
56
|
**Release Infrastructure** - Automated version consistency checks and workflow improvements to prevent version drift.
|
|
@@ -283,22 +283,22 @@
|
|
|
283
283
|
"129": {
|
|
284
284
|
"name": "EXIT_SIGNAL_HUP",
|
|
285
285
|
"category": "signals",
|
|
286
|
-
"description": "Hangup signal (SIGHUP)",
|
|
287
|
-
"context": "
|
|
286
|
+
"description": "Hangup signal (SIGHUP) - config reload via restart",
|
|
287
|
+
"context": "Config reload via restart-based pattern (mandatory schema validation).\nProcess exits with 129, supervisor restarts with new config.\nSee signals.yaml for reload behavior definition.",
|
|
288
288
|
"bsd_equivalent": "128 + 1"
|
|
289
289
|
},
|
|
290
290
|
"130": {
|
|
291
291
|
"name": "EXIT_SIGNAL_INT",
|
|
292
292
|
"category": "signals",
|
|
293
|
-
"description": "Interrupt signal (SIGINT)",
|
|
294
|
-
"context": "Ctrl+C pressed,
|
|
293
|
+
"description": "Interrupt signal (SIGINT) - user interrupt with Ctrl+C double-tap",
|
|
294
|
+
"context": "Ctrl+C pressed. First tap initiates graceful shutdown, second within 2s forces immediate exit.\nSame exit code (130) for both graceful and force modes.\nSee signals.yaml for double-tap behavior definition.",
|
|
295
295
|
"bsd_equivalent": "128 + 2"
|
|
296
296
|
},
|
|
297
297
|
"131": {
|
|
298
298
|
"name": "EXIT_SIGNAL_QUIT",
|
|
299
299
|
"category": "signals",
|
|
300
|
-
"description": "Quit signal (SIGQUIT)",
|
|
301
|
-
"context": "Ctrl+\\
|
|
300
|
+
"description": "Quit signal (SIGQUIT) - immediate exit",
|
|
301
|
+
"context": "Ctrl+\\ on Unix, Ctrl+Break on Windows. Immediate termination without cleanup.\nUse for emergency shutdown or debugging (core dumps).",
|
|
302
302
|
"bsd_equivalent": "128 + 3"
|
|
303
303
|
},
|
|
304
304
|
"137": {
|
|
@@ -309,43 +309,41 @@
|
|
|
309
309
|
"bsd_equivalent": "128 + 9",
|
|
310
310
|
"python_note": "Cannot be caught in Python (OS-level)"
|
|
311
311
|
},
|
|
312
|
+
"138": {
|
|
313
|
+
"name": "EXIT_SIGNAL_USR1",
|
|
314
|
+
"category": "signals",
|
|
315
|
+
"description": "User-defined signal 1 (SIGUSR1) - custom handler",
|
|
316
|
+
"context": "Application-specific signal (e.g., reopen logs, dump stats, trigger profiling).\nApplications register custom handlers. Exit code 138 on Linux (128+10).\nPlatform differences: macOS/FreeBSD use signal 30 (exit 158), not 10."
|
|
317
|
+
},
|
|
318
|
+
"140": {
|
|
319
|
+
"name": "EXIT_SIGNAL_USR2",
|
|
320
|
+
"category": "signals",
|
|
321
|
+
"description": "User-defined signal 2 (SIGUSR2) - custom handler",
|
|
322
|
+
"context": "Application-specific signal (e.g., toggle debug mode, rotate credentials).\nApplications register custom handlers. Exit code 140 on Linux (128+12).\nPlatform differences: macOS/FreeBSD use signal 31 (exit 159), not 12."
|
|
323
|
+
},
|
|
312
324
|
"141": {
|
|
313
325
|
"name": "EXIT_SIGNAL_PIPE",
|
|
314
326
|
"category": "signals",
|
|
315
|
-
"description": "Broken pipe (SIGPIPE)",
|
|
316
|
-
"context": "Writing to closed pipe/socket
|
|
327
|
+
"description": "Broken pipe (SIGPIPE) - observe only",
|
|
328
|
+
"context": "Writing to closed pipe/socket. Fulmen default is observe_only (log + graceful exit).\nApplications may override to ignore for network services.\nSee signals.yaml for SIGPIPE handling guidance.",
|
|
317
329
|
"bsd_equivalent": "128 + 13",
|
|
318
330
|
"python_note": "Raised as BrokenPipeError exception"
|
|
319
331
|
},
|
|
320
332
|
"142": {
|
|
321
333
|
"name": "EXIT_SIGNAL_ALRM",
|
|
322
334
|
"category": "signals",
|
|
323
|
-
"description": "Alarm signal (SIGALRM)",
|
|
324
|
-
"context": "
|
|
335
|
+
"description": "Alarm signal (SIGALRM) - watchdog timeout",
|
|
336
|
+
"context": "Watchdog timer expired. Treat as timeout-induced exit.\nWatchdog pattern out of scope for v1.0.0 module implementations.",
|
|
325
337
|
"bsd_equivalent": "128 + 14",
|
|
326
338
|
"python_note": "Supported by signal module, rarely used in practice"
|
|
327
339
|
},
|
|
328
340
|
"143": {
|
|
329
341
|
"name": "EXIT_SIGNAL_TERM",
|
|
330
342
|
"category": "signals",
|
|
331
|
-
"description": "Termination signal (SIGTERM)",
|
|
332
|
-
"context": "Graceful shutdown requested
|
|
343
|
+
"description": "Termination signal (SIGTERM) - graceful shutdown",
|
|
344
|
+
"context": "Graceful shutdown requested by container orchestrator or process supervisor.\nStandard 30-second timeout for cleanup. Applications run cleanup handlers before exit.\nSee signals.yaml for graceful shutdown behavior definition.",
|
|
333
345
|
"bsd_equivalent": "128 + 15",
|
|
334
346
|
"python_note": "Default signal for graceful shutdown"
|
|
335
|
-
},
|
|
336
|
-
"159": {
|
|
337
|
-
"name": "EXIT_SIGNAL_USR1",
|
|
338
|
-
"category": "signals",
|
|
339
|
-
"description": "User-defined signal 1 (SIGUSR1)",
|
|
340
|
-
"context": "Application-specific signal handling (e.g., reopen logs, dump stats)",
|
|
341
|
-
"bsd_equivalent": "128 + 31"
|
|
342
|
-
},
|
|
343
|
-
"160": {
|
|
344
|
-
"name": "EXIT_SIGNAL_USR2",
|
|
345
|
-
"category": "signals",
|
|
346
|
-
"description": "User-defined signal 2 (SIGUSR2)",
|
|
347
|
-
"context": "Application-specific signal handling (e.g., toggle debug mode)",
|
|
348
|
-
"bsd_equivalent": "128 + 32"
|
|
349
347
|
}
|
|
350
348
|
}
|
|
351
349
|
}
|
|
@@ -48,7 +48,16 @@
|
|
|
48
48
|
93,
|
|
49
49
|
94,
|
|
50
50
|
95,
|
|
51
|
-
96
|
|
51
|
+
96,
|
|
52
|
+
129,
|
|
53
|
+
130,
|
|
54
|
+
131,
|
|
55
|
+
137,
|
|
56
|
+
138,
|
|
57
|
+
140,
|
|
58
|
+
141,
|
|
59
|
+
142,
|
|
60
|
+
143
|
|
52
61
|
],
|
|
53
62
|
"2": [
|
|
54
63
|
64
|
|
@@ -92,7 +101,16 @@
|
|
|
92
101
|
51,
|
|
93
102
|
52,
|
|
94
103
|
53,
|
|
95
|
-
54
|
|
104
|
+
54,
|
|
105
|
+
129,
|
|
106
|
+
130,
|
|
107
|
+
131,
|
|
108
|
+
137,
|
|
109
|
+
138,
|
|
110
|
+
140,
|
|
111
|
+
141,
|
|
112
|
+
142,
|
|
113
|
+
143
|
|
96
114
|
],
|
|
97
115
|
"5": [
|
|
98
116
|
70,
|
|
@@ -103,14 +121,17 @@
|
|
|
103
121
|
"6": [
|
|
104
122
|
91,
|
|
105
123
|
92,
|
|
124
|
+
93,
|
|
106
125
|
94,
|
|
107
|
-
95
|
|
126
|
+
95,
|
|
127
|
+
96
|
|
108
128
|
],
|
|
109
129
|
"7": [
|
|
110
130
|
80,
|
|
111
131
|
81,
|
|
112
132
|
82,
|
|
113
|
-
83
|
|
133
|
+
83,
|
|
134
|
+
84
|
|
114
135
|
]
|
|
115
136
|
}
|
|
116
137
|
}
|
|
@@ -18,6 +18,32 @@ $defs:
|
|
|
18
18
|
- logging_emit_count
|
|
19
19
|
- logging_emit_latency_ms
|
|
20
20
|
- goneat_command_duration_ms
|
|
21
|
+
- prometheus_exporter_refresh_duration_seconds
|
|
22
|
+
- prometheus_exporter_refresh_total
|
|
23
|
+
- prometheus_exporter_refresh_errors_total
|
|
24
|
+
- prometheus_exporter_refresh_inflight
|
|
25
|
+
- prometheus_exporter_http_requests_total
|
|
26
|
+
- prometheus_exporter_http_errors_total
|
|
27
|
+
- prometheus_exporter_restarts_total
|
|
28
|
+
- foundry_mime_detections_total_json
|
|
29
|
+
- foundry_mime_detections_total_xml
|
|
30
|
+
- foundry_mime_detections_total_yaml
|
|
31
|
+
- foundry_mime_detections_total_csv
|
|
32
|
+
- foundry_mime_detections_total_plain_text
|
|
33
|
+
- foundry_mime_detections_total_unknown
|
|
34
|
+
- foundry_mime_detection_ms_json
|
|
35
|
+
- foundry_mime_detection_ms_xml
|
|
36
|
+
- foundry_mime_detection_ms_yaml
|
|
37
|
+
- foundry_mime_detection_ms_csv
|
|
38
|
+
- foundry_mime_detection_ms_plain_text
|
|
39
|
+
- foundry_mime_detection_ms_unknown
|
|
40
|
+
- error_handling_wraps_total
|
|
41
|
+
- error_handling_wrap_ms
|
|
42
|
+
- fulhash_operations_total_xxh3_128
|
|
43
|
+
- fulhash_operations_total_sha256
|
|
44
|
+
- fulhash_hash_string_total
|
|
45
|
+
- fulhash_bytes_hashed_total
|
|
46
|
+
- fulhash_operation_ms
|
|
21
47
|
metricUnit:
|
|
22
48
|
type: string
|
|
23
49
|
enum:
|
|
@@ -25,11 +51,12 @@ $defs:
|
|
|
25
51
|
- ms
|
|
26
52
|
- bytes
|
|
27
53
|
- percent
|
|
54
|
+
- s
|
|
28
55
|
properties:
|
|
29
56
|
version:
|
|
30
57
|
type: string
|
|
31
|
-
description: Taxonomy version (
|
|
32
|
-
pattern: "^\\d
|
|
58
|
+
description: Taxonomy version (SemVer, aligned with Crucible releases).
|
|
59
|
+
pattern: "^\\d+\\.\\d+\\.\\d+$"
|
|
33
60
|
defaults:
|
|
34
61
|
type: object
|
|
35
62
|
description: Default configuration applied across metrics.
|
|
@@ -66,7 +93,7 @@ required:
|
|
|
66
93
|
- version
|
|
67
94
|
- metrics
|
|
68
95
|
additionalProperties: false
|
|
69
|
-
version: "
|
|
96
|
+
version: "0.2.8"
|
|
70
97
|
defaults:
|
|
71
98
|
histogram_buckets:
|
|
72
99
|
ms_metrics:
|
|
@@ -113,3 +140,132 @@ metrics:
|
|
|
113
140
|
- name: goneat_command_duration_ms
|
|
114
141
|
unit: ms
|
|
115
142
|
description: Duration of goneat command execution (instrumentation helper).
|
|
143
|
+
- name: prometheus_exporter_refresh_duration_seconds
|
|
144
|
+
unit: s
|
|
145
|
+
description: >
|
|
146
|
+
Time to refresh/export registry data into Prometheus collectors. Uses ADR-0007 buckets converted to seconds: [0.001, 0.005, 0.01, 0.05, 0.1, 0.5, 1.0, 5.0, 10.0]. Required labels: phase (collect|convert|export), result (success|error). Optional labels: error_type.
|
|
147
|
+
|
|
148
|
+
- name: prometheus_exporter_refresh_total
|
|
149
|
+
unit: count
|
|
150
|
+
description: >
|
|
151
|
+
Total refresh cycles attempted. Use with result label for success/error breakdown. Exporters SHOULD emit both this and prometheus_exporter_refresh_errors_total. Required labels: result (success|error). Optional labels: error_type.
|
|
152
|
+
|
|
153
|
+
- name: prometheus_exporter_refresh_errors_total
|
|
154
|
+
unit: count
|
|
155
|
+
description: >
|
|
156
|
+
Failed refresh cycles with detailed error classification. Sum MUST equal prometheus_exporter_refresh_total{result="error"}. Required labels: error_type (validation|io|timeout|other). Optional labels: phase.
|
|
157
|
+
|
|
158
|
+
- name: prometheus_exporter_refresh_inflight
|
|
159
|
+
unit: count
|
|
160
|
+
description: >
|
|
161
|
+
Number of concurrent refresh operations currently running. Optional labels: phase.
|
|
162
|
+
|
|
163
|
+
- name: prometheus_exporter_http_requests_total
|
|
164
|
+
unit: count
|
|
165
|
+
description: >
|
|
166
|
+
HTTP scrape/exposition requests handled by exporter. Distinct from prom-client defaults; recommend disabling client defaults when using this. Required labels: status (HTTP code), path. Optional labels: client (high cardinality warning).
|
|
167
|
+
|
|
168
|
+
- name: prometheus_exporter_http_errors_total
|
|
169
|
+
unit: count
|
|
170
|
+
description: >
|
|
171
|
+
HTTP exposition failures (5xx, auth failures, timeouts). Required labels: status (HTTP code), path. Optional labels: client (high cardinality warning).
|
|
172
|
+
|
|
173
|
+
- name: prometheus_exporter_restarts_total
|
|
174
|
+
unit: count
|
|
175
|
+
description: >
|
|
176
|
+
Exporter refresh loop or HTTP server restarts. Required labels: reason (config_change|error|manual|other).
|
|
177
|
+
|
|
178
|
+
- name: foundry_mime_detections_total_json
|
|
179
|
+
unit: count
|
|
180
|
+
description: >
|
|
181
|
+
Total JSON MIME type detections performed by the Foundry module. Tracks usage patterns for JSON content processing.
|
|
182
|
+
|
|
183
|
+
- name: foundry_mime_detections_total_xml
|
|
184
|
+
unit: count
|
|
185
|
+
description: >
|
|
186
|
+
Total XML MIME type detections performed by the Foundry module. Tracks usage patterns for XML content processing.
|
|
187
|
+
|
|
188
|
+
- name: foundry_mime_detections_total_yaml
|
|
189
|
+
unit: count
|
|
190
|
+
description: >
|
|
191
|
+
Total YAML MIME type detections performed by the Foundry module. Tracks usage patterns for YAML content processing.
|
|
192
|
+
|
|
193
|
+
- name: foundry_mime_detections_total_csv
|
|
194
|
+
unit: count
|
|
195
|
+
description: >
|
|
196
|
+
Total CSV MIME type detections performed by the Foundry module. Tracks usage patterns for CSV content processing.
|
|
197
|
+
|
|
198
|
+
- name: foundry_mime_detections_total_plain_text
|
|
199
|
+
unit: count
|
|
200
|
+
description: >
|
|
201
|
+
Total plain text MIME type detections performed by the Foundry module. Tracks usage patterns for plain text content processing.
|
|
202
|
+
|
|
203
|
+
- name: foundry_mime_detections_total_unknown
|
|
204
|
+
unit: count
|
|
205
|
+
description: >
|
|
206
|
+
Total unknown/binary MIME type detections performed by the Foundry module. Tracks usage patterns for unknown content types.
|
|
207
|
+
|
|
208
|
+
- name: foundry_mime_detection_ms_json
|
|
209
|
+
unit: ms
|
|
210
|
+
description: >
|
|
211
|
+
JSON MIME type detection latency in milliseconds. Uses ADR-0007 buckets: [1, 5, 10, 50, 100, 500, 1000, 5000, 10000]. Enables performance analysis for JSON detection algorithms.
|
|
212
|
+
|
|
213
|
+
- name: foundry_mime_detection_ms_xml
|
|
214
|
+
unit: ms
|
|
215
|
+
description: >
|
|
216
|
+
XML MIME type detection latency in milliseconds. Uses ADR-0007 buckets: [1, 5, 10, 50, 100, 500, 1000, 5000, 10000]. Enables performance analysis for XML detection algorithms.
|
|
217
|
+
|
|
218
|
+
- name: foundry_mime_detection_ms_yaml
|
|
219
|
+
unit: ms
|
|
220
|
+
description: >
|
|
221
|
+
YAML MIME type detection latency in milliseconds. Uses ADR-0007 buckets: [1, 5, 10, 50, 100, 500, 1000, 5000, 10000]. Enables performance analysis for YAML detection algorithms.
|
|
222
|
+
|
|
223
|
+
- name: foundry_mime_detection_ms_csv
|
|
224
|
+
unit: ms
|
|
225
|
+
description: >
|
|
226
|
+
CSV MIME type detection latency in milliseconds. Uses ADR-0007 buckets: [1, 5, 10, 50, 100, 500, 1000, 5000, 10000]. Enables performance analysis for CSV detection algorithms.
|
|
227
|
+
|
|
228
|
+
- name: foundry_mime_detection_ms_plain_text
|
|
229
|
+
unit: ms
|
|
230
|
+
description: >
|
|
231
|
+
Plain text MIME type detection latency in milliseconds. Uses ADR-0007 buckets: [1, 5, 10, 50, 100, 500, 1000, 5000, 10000]. Enables performance analysis for plain text detection algorithms.
|
|
232
|
+
|
|
233
|
+
- name: foundry_mime_detection_ms_unknown
|
|
234
|
+
unit: ms
|
|
235
|
+
description: >
|
|
236
|
+
Unknown/binary MIME type detection latency in milliseconds. Uses ADR-0007 buckets: [1, 5, 10, 50, 100, 500, 1000, 5000, 10000]. Enables performance analysis for fallback detection logic.
|
|
237
|
+
|
|
238
|
+
- name: error_handling_wraps_total
|
|
239
|
+
unit: count
|
|
240
|
+
description: >
|
|
241
|
+
Total error wrap operations performed by the Error Handling module. Tracks error handling patterns and frequency across the application.
|
|
242
|
+
|
|
243
|
+
- name: error_handling_wrap_ms
|
|
244
|
+
unit: ms
|
|
245
|
+
description: >
|
|
246
|
+
Error wrap operation latency in milliseconds. Uses ADR-0007 buckets: [1, 5, 10, 50, 100, 500, 1000, 5000, 10000]. Enables detection of error handling performance regressions.
|
|
247
|
+
|
|
248
|
+
- name: fulhash_operations_total_xxh3_128
|
|
249
|
+
unit: count
|
|
250
|
+
description: >
|
|
251
|
+
Total XXH3-128 hash operations performed by the FulHash module. Tracks usage of the fast, non-cryptographic hash algorithm for performance-oriented scenarios.
|
|
252
|
+
|
|
253
|
+
- name: fulhash_operations_total_sha256
|
|
254
|
+
unit: count
|
|
255
|
+
description: >
|
|
256
|
+
Total SHA256 hash operations performed by the FulHash module. Tracks usage of the cryptographic hash algorithm for security-oriented scenarios.
|
|
257
|
+
|
|
258
|
+
- name: fulhash_hash_string_total
|
|
259
|
+
unit: count
|
|
260
|
+
description: >
|
|
261
|
+
Total string hash operations performed by the FulHash module (any algorithm). Tracks the common use case of hashing string data.
|
|
262
|
+
|
|
263
|
+
- name: fulhash_bytes_hashed_total
|
|
264
|
+
unit: bytes
|
|
265
|
+
description: >
|
|
266
|
+
Total bytes processed across all hash operations by the FulHash module. Counter value represents cumulative byte count. Enables capacity planning and throughput analysis.
|
|
267
|
+
|
|
268
|
+
- name: fulhash_operation_ms
|
|
269
|
+
unit: ms
|
|
270
|
+
description: >
|
|
271
|
+
Hash operation latency in milliseconds for all algorithms. Uses ADR-0007 buckets: [1, 5, 10, 50, 100, 500, 1000, 5000, 10000]. Enables performance benchmarking across XXH3-128 and SHA256.
|
|
@@ -19,7 +19,10 @@ categories:
|
|
|
19
19
|
typicalConsumers:
|
|
20
20
|
- "Operations automation"
|
|
21
21
|
- "MCP servers"
|
|
22
|
-
notes: "Requires request correlation IDs and Prometheus metrics"
|
|
22
|
+
notes: "Requires request correlation IDs and Prometheus metrics. Templates (forge-workhorse-*) must comply with CDRL standard."
|
|
23
|
+
references:
|
|
24
|
+
- "docs/architecture/fulmen-forge-workhorse-standard.md"
|
|
25
|
+
- "docs/architecture/fulmen-template-cdrl-standard.md"
|
|
23
26
|
- key: service
|
|
24
27
|
summary: "Long-running HTTP/gRPC services without interactive CLI UX"
|
|
25
28
|
primaryEntryPoints:
|
|
@@ -54,7 +57,10 @@ categories:
|
|
|
54
57
|
typicalConsumers:
|
|
55
58
|
- "Fulmen developers"
|
|
56
59
|
- "External stakeholders"
|
|
57
|
-
notes: "Generated assets must trace back to committed source"
|
|
60
|
+
notes: "Generated assets must trace back to committed source. Templates (forge-codex-*) must comply with CDRL standard."
|
|
61
|
+
references:
|
|
62
|
+
- "docs/architecture/fulmen-forge-codex-standard.md"
|
|
63
|
+
- "docs/architecture/fulmen-template-cdrl-standard.md"
|
|
58
64
|
- key: sdk
|
|
59
65
|
summary: "Client SDKs targeting external services or APIs"
|
|
60
66
|
primaryEntryPoints:
|
|
@@ -64,3 +70,46 @@ categories:
|
|
|
64
70
|
- "External developers"
|
|
65
71
|
- "Partner integrations"
|
|
66
72
|
notes: "Ship compatibility matrix and error taxonomy"
|
|
73
|
+
- key: forge-workhorse
|
|
74
|
+
summary: "Production-ready templates for backend services (Clone → Degit → Refit → Launch)"
|
|
75
|
+
primaryEntryPoints:
|
|
76
|
+
- "Template repository (GitHub)"
|
|
77
|
+
- "CDRL workflow (Clone → Degit → Refit → Launch)"
|
|
78
|
+
- "make validate-app-identity"
|
|
79
|
+
- "make doctor"
|
|
80
|
+
typicalConsumers:
|
|
81
|
+
- "Developers building new services"
|
|
82
|
+
- "Teams standardizing on Fulmen stack"
|
|
83
|
+
notes: "MUST comply with CDRL standard. Named with horse breeds (groningen, percheron). REQUIRED: .fulmen/app.yaml, CDRL validation targets, fulmen_cdrl_guide.md"
|
|
84
|
+
references:
|
|
85
|
+
- "docs/architecture/fulmen-forge-workhorse-standard.md"
|
|
86
|
+
- "docs/architecture/fulmen-template-cdrl-standard.md"
|
|
87
|
+
- "docs/standards/cdrl/workflow-guide.md"
|
|
88
|
+
- "docs/standards/makefile-standard.md#annex-b-template-repository-cdrl-targets"
|
|
89
|
+
- key: forge-codex
|
|
90
|
+
summary: "Production-ready templates for documentation sites (Clone → Degit → Refit → Launch)"
|
|
91
|
+
primaryEntryPoints:
|
|
92
|
+
- "Template repository (GitHub)"
|
|
93
|
+
- "CDRL workflow (Clone → Degit → Refit → Launch)"
|
|
94
|
+
- "make validate-app-identity"
|
|
95
|
+
- "make doctor"
|
|
96
|
+
typicalConsumers:
|
|
97
|
+
- "Developers building documentation portals"
|
|
98
|
+
- "Teams creating schema registries"
|
|
99
|
+
notes: "MUST comply with CDRL standard. REQUIRED: .fulmen/app.yaml, CDRL validation targets, fulmen_cdrl_guide.md. Astro/Starlight baseline."
|
|
100
|
+
references:
|
|
101
|
+
- "docs/architecture/fulmen-forge-codex-standard.md"
|
|
102
|
+
- "docs/architecture/fulmen-template-cdrl-standard.md"
|
|
103
|
+
- "docs/standards/cdrl/workflow-guide.md"
|
|
104
|
+
- "docs/standards/makefile-standard.md#annex-b-template-repository-cdrl-targets"
|
|
105
|
+
- key: forge-gymnasium
|
|
106
|
+
summary: "Experimental templates for prototyping and research (CDRL optional until graduation)"
|
|
107
|
+
primaryEntryPoints:
|
|
108
|
+
- "Template repository (GitHub)"
|
|
109
|
+
- "Experimental workflows"
|
|
110
|
+
typicalConsumers:
|
|
111
|
+
- "Researchers"
|
|
112
|
+
- "Prototype developers"
|
|
113
|
+
notes: "Experimental template category. May graduate to forge-workhorse or forge-codex upon maturity. CDRL compliance RECOMMENDED but not required until stable."
|
|
114
|
+
references:
|
|
115
|
+
- "docs/architecture/fulmen-template-cdrl-standard.md"
|