@flancer32/teq-web 0.10.0 → 0.11.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.
- package/CHANGELOG.md +11 -0
- package/ai/abstractions.md +2 -2
- package/ai/examples/minimal-server.md +13 -13
- package/ai/rules.md +1 -0
- package/package.json +1 -1
- package/src/Back/Config/Runtime/Tls.mjs +3 -3
- package/src/Back/Config/Runtime.mjs +6 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.11.0] - 2026-04-01 - TeqFW spec alignment and runtime contract updates
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
- Added TeqFW specification documents for DI usage, ES module conventions, and package metadata expectations.
|
|
7
|
+
|
|
8
|
+
### Changed
|
|
9
|
+
- Reworked runtime configuration docs and examples to follow the current spec-level contract.
|
|
10
|
+
- Tightened runtime configuration implementation and unit tests to match the updated contract.
|
|
11
|
+
- Replaced legacy TeqFW convention documents with the current spec-oriented documentation layout.
|
|
12
|
+
- Updated package version metadata to `0.11.0`.
|
|
13
|
+
|
|
3
14
|
## [0.10.0] - 2026-03-31 - Validator conformance and release preparation
|
|
4
15
|
|
|
5
16
|
### Changed
|
package/ai/abstractions.md
CHANGED
|
@@ -22,7 +22,7 @@ Default transport settings come from flat fields of `Fl32_Web_Back_Config_Runtim
|
|
|
22
22
|
- `http2`
|
|
23
23
|
- `https`
|
|
24
24
|
|
|
25
|
-
`https` requires `
|
|
25
|
+
`https` requires `config.tls` to contain both `key` and `cert`.
|
|
26
26
|
|
|
27
27
|
## Handler Contract
|
|
28
28
|
|
|
@@ -63,7 +63,7 @@ Only `PROCESS` handlers may mark the request as completed.
|
|
|
63
63
|
|
|
64
64
|
## Built-in Static Handler
|
|
65
65
|
|
|
66
|
-
`Fl32_Web_Back_Handler_Static$` is a PROCESS-stage handler for static file delivery. Before use, call `init({sources})` with source DTOs created by `
|
|
66
|
+
`Fl32_Web_Back_Handler_Static$` is a PROCESS-stage handler for static file delivery. Before use, call `init({sources})` with source DTOs created by `Fl32_Web_Back_Dto_Source__Factory$`.
|
|
67
67
|
|
|
68
68
|
Each source describes:
|
|
69
69
|
|
|
@@ -6,17 +6,17 @@ This example shows the preferred TeqFW-style usage path: external code resolves
|
|
|
6
6
|
// App/Web/Handler/Hello.mjs
|
|
7
7
|
// @ts-check
|
|
8
8
|
|
|
9
|
-
export const __deps__ = {
|
|
9
|
+
export const __deps__ = Object.freeze({
|
|
10
|
+
default: Object.freeze({}),
|
|
10
11
|
dtoInfoFactory: 'Fl32_Web_Back_Dto_Info__Factory$',
|
|
11
12
|
STAGE: 'Fl32_Web_Back_Enum_Stage$',
|
|
12
|
-
};
|
|
13
|
+
});
|
|
13
14
|
|
|
14
15
|
export default class App_Web_Handler_Hello {
|
|
15
16
|
/**
|
|
16
|
-
* @param {
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
* }} deps
|
|
17
|
+
* @param {object} deps
|
|
18
|
+
* @param {Fl32_Web_Back_Dto_Info$Factory} deps.dtoInfoFactory
|
|
19
|
+
* @param {Fl32_Web_Back_Enum_Stage} deps.STAGE
|
|
20
20
|
*/
|
|
21
21
|
constructor({dtoInfoFactory, STAGE}) {
|
|
22
22
|
const info = dtoInfoFactory.create({
|
|
@@ -40,19 +40,19 @@ export default class App_Web_Handler_Hello {
|
|
|
40
40
|
// App/Web/Server/Start.mjs
|
|
41
41
|
// @ts-check
|
|
42
42
|
|
|
43
|
-
export const __deps__ = {
|
|
43
|
+
export const __deps__ = Object.freeze({
|
|
44
|
+
default: Object.freeze({}),
|
|
44
45
|
pipeline: 'Fl32_Web_Back_PipelineEngine$',
|
|
45
46
|
server: 'Fl32_Web_Back_Server$',
|
|
46
47
|
helloHandler: 'App_Web_Handler_Hello$',
|
|
47
|
-
};
|
|
48
|
+
});
|
|
48
49
|
|
|
49
50
|
export default class App_Web_Server_Start {
|
|
50
51
|
/**
|
|
51
|
-
* @param {
|
|
52
|
-
*
|
|
53
|
-
*
|
|
54
|
-
*
|
|
55
|
-
* }} deps
|
|
52
|
+
* @param {object} deps
|
|
53
|
+
* @param {Fl32_Web_Back_PipelineEngine} deps.pipeline
|
|
54
|
+
* @param {Fl32_Web_Back_Server} deps.server
|
|
55
|
+
* @param {App_Web_Handler_Hello} deps.helloHandler
|
|
56
56
|
*/
|
|
57
57
|
constructor({pipeline, server, helloHandler}) {
|
|
58
58
|
this.execute = async function () {
|
package/ai/rules.md
CHANGED
|
@@ -42,3 +42,4 @@
|
|
|
42
42
|
- TLS startup configuration belongs to the dedicated runtime component `Fl32_Web_Back_Config_Runtime_Tls$`, even though consumers read it through `config.tls`.
|
|
43
43
|
- Configure runtime values during startup only; once the runtime configuration is frozen for use, consumers must treat `Fl32_Web_Back_Config_Runtime$` and `Fl32_Web_Back_Config_Runtime_Tls$` as immutable read-only state.
|
|
44
44
|
- Treat helper internals under deep implementation paths as non-essential unless the task specifically requires them. Preferred consumer entry points are the Pipeline Engine, Server, handler API, DTO factories, enums, and built-in handlers.
|
|
45
|
+
- Use `Object.freeze({})` for `__deps__` declarations in examples and application code that is meant to be container-managed.
|
package/package.json
CHANGED
|
@@ -86,8 +86,8 @@ export class Factory {
|
|
|
86
86
|
* `Factory` is the DI-managed component described by `__deps__`.
|
|
87
87
|
*/
|
|
88
88
|
export const __deps__ = Object.freeze({
|
|
89
|
-
default: {},
|
|
90
|
-
Factory: {
|
|
89
|
+
default: Object.freeze({}),
|
|
90
|
+
Factory: Object.freeze({
|
|
91
91
|
cast: 'Fl32_Web_Back_Helper_Cast$',
|
|
92
|
-
},
|
|
92
|
+
}),
|
|
93
93
|
});
|
|
@@ -70,10 +70,10 @@ export class Factory {
|
|
|
70
70
|
};
|
|
71
71
|
|
|
72
72
|
/**
|
|
73
|
-
* @returns {
|
|
73
|
+
* @returns {Fl32_Web_Back_Config_Runtime}
|
|
74
74
|
*/
|
|
75
75
|
this.freeze = function () {
|
|
76
|
-
if (frozen) return;
|
|
76
|
+
if (frozen) return proxy;
|
|
77
77
|
if (cfg.port === undefined) cfg.port = 3000;
|
|
78
78
|
if (cfg.type === undefined) cfg.type = SERVER_TYPE.HTTP;
|
|
79
79
|
const tls = tlsFactory.freeze();
|
|
@@ -86,6 +86,7 @@ export class Factory {
|
|
|
86
86
|
}
|
|
87
87
|
Object.freeze(cfg);
|
|
88
88
|
frozen = true;
|
|
89
|
+
return proxy;
|
|
89
90
|
};
|
|
90
91
|
}
|
|
91
92
|
}
|
|
@@ -97,10 +98,10 @@ export class Factory {
|
|
|
97
98
|
* `Factory` is the DI-managed component described by `__deps__`.
|
|
98
99
|
*/
|
|
99
100
|
export const __deps__ = Object.freeze({
|
|
100
|
-
default: {},
|
|
101
|
-
Factory: {
|
|
101
|
+
default: Object.freeze({}),
|
|
102
|
+
Factory: Object.freeze({
|
|
102
103
|
cast: 'Fl32_Web_Back_Helper_Cast$',
|
|
103
104
|
SERVER_TYPE: 'Fl32_Web_Back_Enum_Server_Type$',
|
|
104
105
|
tlsFactory: 'Fl32_Web_Back_Config_Runtime_Tls__Factory$',
|
|
105
|
-
},
|
|
106
|
+
}),
|
|
106
107
|
});
|