w-web-perm 1.0.69 → 1.0.71
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/README.md +1 -1
- package/dist/css/{chunk-vendors.f6e4c9e1.css → chunk-vendors.695187ec.css} +1 -1
- package/dist/index.tmp +1 -1
- package/dist/js/{app-legacy.6c9b2364.js → app-legacy.a8a679a7.js} +1 -1
- package/dist/js/{app.6c9b2364.js → app.a8a679a7.js} +1 -1
- package/dist/js/{chunk-vendors.d018402b.js → chunk-vendors-legacy.644eda7c.js} +2 -2
- package/dist/js/{chunk-vendors-legacy.d018402b.js → chunk-vendors.644eda7c.js} +2 -2
- package/dist/w-web-perm.umd.js +1 -1
- package/docs/WWebPerm.html +2 -2
- package/docs/WWebPerm.mjs.html +2 -2
- package/docs/index.html +1 -1
- package/{g.backupDb.mjs → g_backupDb.mjs} +2 -2
- package/{g.initialData.mjs → g_initialData.mjs} +2 -2
- package/{g.initialTestData.mjs → g_initialTestData.mjs} +2 -2
- package/{g.mOrm.mjs → g_mOrm.mjs} +1 -1
- package/{g.provideGrups.mjs → g_provideGrups.mjs} +1 -1
- package/{g.providePemis.mjs → g_providePemis.mjs} +1 -1
- package/{g.provideTargets.mjs → g_provideTargets.mjs} +1 -1
- package/{g.provideUsers.mjs → g_provideUsers.mjs} +1 -1
- package/logs/2026-08-25T19.log +4704 -0
- package/logs/2026-08-25T20.log +5144 -0
- package/logs/2026-08-25T21.log +2116 -0
- package/logs/2026-08-26T05.log +1678 -0
- package/logs/2026-08-26T06.log +4561 -0
- package/logs/2026-08-26T07.log +4916 -0
- package/logs/2026-08-26T08.log +260 -0
- package/logs/2026-08-26T09.log +1543 -0
- package/logs/2026-08-26T13.log +2559 -0
- package/logs/2026-08-26T14.log +5526 -0
- package/logs/2026-08-26T15.log +2271 -0
- package/package.json +12 -12
- package/server/WWebPerm.mjs +1 -1
- package/src/components/LayoutContent.vue +6 -6
- package/srv.mjs +1 -1
- package/tableTags.json +1 -1
- package/z/344/277/256/346/255/243/350/246/217/345/212/203/346/233/270.md +2 -2
- /package/{g.getSettings.mjs → g_getSettings.mjs} +0 -0
package/package.json
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "w-web-perm",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.71",
|
|
4
4
|
"main": "dist/w-web-perm.umd.js",
|
|
5
5
|
"dependencies": {
|
|
6
6
|
"axios": "^1.18.1",
|
|
7
7
|
"json5": "^2.2.3",
|
|
8
|
-
"w-aggrid-vue": "^2.0.
|
|
9
|
-
"w-component-vue": "^2.5.
|
|
10
|
-
"w-data-collector": "^1.0.
|
|
11
|
-
"w-echarts-vue": "^1.0.
|
|
12
|
-
"w-serv-hapi": "^1.0.
|
|
13
|
-
"w-serv-orm": "^1.0.
|
|
14
|
-
"w-syslog": "^1.0.
|
|
15
|
-
"w-ui-loginout": "^1.0.
|
|
16
|
-
"wsemi": "^1.8.
|
|
8
|
+
"w-aggrid-vue": "^2.0.76",
|
|
9
|
+
"w-component-vue": "^2.5.6",
|
|
10
|
+
"w-data-collector": "^1.0.33",
|
|
11
|
+
"w-echarts-vue": "^1.0.5",
|
|
12
|
+
"w-serv-hapi": "^1.0.83",
|
|
13
|
+
"w-serv-orm": "^1.0.50",
|
|
14
|
+
"w-syslog": "^1.0.22",
|
|
15
|
+
"w-ui-loginout": "^1.0.21",
|
|
16
|
+
"wsemi": "^1.8.80"
|
|
17
17
|
},
|
|
18
18
|
"devDependencies": {
|
|
19
19
|
"@vue/cli-plugin-babel": "^5.0.8",
|
|
@@ -28,10 +28,10 @@
|
|
|
28
28
|
"eslint-plugin-vue": "^9.10.0",
|
|
29
29
|
"vue": "^2.7.16",
|
|
30
30
|
"vuex": "^3.6.2",
|
|
31
|
-
"w-orm-lmdb": "^1.0.
|
|
31
|
+
"w-orm-lmdb": "^1.0.27",
|
|
32
32
|
"w-package-tools": "^1.1.15",
|
|
33
33
|
"w-package-tools-e2e": "^1.0.0",
|
|
34
|
-
"w-screenctl": "^1.0.
|
|
34
|
+
"w-screenctl": "^1.0.15"
|
|
35
35
|
},
|
|
36
36
|
"scripts": {
|
|
37
37
|
"serve": "vue-cli-service serve",
|
package/server/WWebPerm.mjs
CHANGED
|
@@ -59,7 +59,7 @@ import procStaInfor from './procStaInfor.mjs'
|
|
|
59
59
|
*
|
|
60
60
|
* import WOrm from 'w-orm-lmdb/src/WOrmLmdb.mjs'
|
|
61
61
|
* import WWebPerm from './server/WWebPerm.mjs'
|
|
62
|
-
* import getSettings from './
|
|
62
|
+
* import getSettings from './g_getSettings.mjs'
|
|
63
63
|
*
|
|
64
64
|
*
|
|
65
65
|
* //st
|
|
@@ -165,7 +165,7 @@ export default {
|
|
|
165
165
|
mdiArrowLeftBoldHexagonOutline,
|
|
166
166
|
mdiArrowRightBoldHexagonOutline,
|
|
167
167
|
|
|
168
|
-
menuKey: '
|
|
168
|
+
menuKey: 'mmStaInfor',
|
|
169
169
|
|
|
170
170
|
panelHeight: 0,
|
|
171
171
|
|
|
@@ -186,6 +186,11 @@ export default {
|
|
|
186
186
|
menus: function() {
|
|
187
187
|
let vo = this
|
|
188
188
|
let ms = [
|
|
189
|
+
{
|
|
190
|
+
key: 'mmStaInfor',
|
|
191
|
+
text: vo.$t('mmStaInfor'),
|
|
192
|
+
icon: mdiChartBoxOutline,
|
|
193
|
+
},
|
|
189
194
|
{
|
|
190
195
|
key: 'mmTargets',
|
|
191
196
|
text: vo.$t('mmTargets'),
|
|
@@ -206,11 +211,6 @@ export default {
|
|
|
206
211
|
text: vo.$t('mmUsers'),
|
|
207
212
|
icon: mdiAccountGroupOutline,
|
|
208
213
|
},
|
|
209
|
-
{
|
|
210
|
-
key: 'mmStaInfor',
|
|
211
|
-
text: vo.$t('mmStaInfor'),
|
|
212
|
-
icon: mdiChartBoxOutline,
|
|
213
|
-
},
|
|
214
214
|
]
|
|
215
215
|
return ms
|
|
216
216
|
},
|
package/srv.mjs
CHANGED
package/tableTags.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"grups":"2026-
|
|
1
|
+
{"grups":"2026-08-26T15:16:24+08:00|pGTU3s","pemis":"2026-08-26T15:16:24+08:00|wYLwmy","targets":"2026-08-26T15:16:24+08:00|MZsetZ","users":"2026-08-26T15:24:04+08:00|XJoOY1"}
|
|
@@ -70,8 +70,8 @@
|
|
|
70
70
|
> **第二層 — 合併模式下 e2e 繼承 api 相之後端, 對話框 grid 列序(`sortBy order`)被 api 還原 RPC 正規化 → pixel mismatch**
|
|
71
71
|
> - 第一層修好後, before-all cascade 消失, 但浮現 64 顆**對話框類 case 之 pixel mismatch**(grups E2E-008、pemis E2E-008-crules、rela-pemi-rule 整支等)。
|
|
72
72
|
> - **§4 規則 3 紀律: 讀 diff 圖不臆測** —— grups E2E-008 之 diff/capture/baseline 三圖顯示: **同一份資料、grid 列序相反**(baseline `peter,mary,john,admin` vs capture `admin,john,mary,peter`), 非渲染雜訊。
|
|
73
|
-
> - 根因(讀碼+實驗): 對話框 grid 依 `sortBy(rs, 'order')` 排序;合併模式下 e2e 檔**重用 api 相先 spawn 的後端**, 而 `api-updateTabs`(32 處寫入)與 `api-syncAndReplaceTabs` 之 suite-after 以 `updateXxx` RPC 整表寫回還原, 該 RPC **重給 `order` 欄位** → 還原後 order 值序與 `
|
|
74
|
-
> - **既有性確證**: 這批 case **單檔跑全綠**(solo 各自 spawn 全新後端 = 純
|
|
73
|
+
> - 根因(讀碼+實驗): 對話框 grid 依 `sortBy(rs, 'order')` 排序;合併模式下 e2e 檔**重用 api 相先 spawn 的後端**, 而 `api-updateTabs`(32 處寫入)與 `api-syncAndReplaceTabs` 之 suite-after 以 `updateXxx` RPC 整表寫回還原, 該 RPC **重給 `order` 欄位** → 還原後 order 值序與 `g_initialTestData` 原始不同 → 對話框列序遂與「solo 自產 baseline」不符。**e2e 之 `resetDb` 僅還原 grups 表, 不還原 users/pemis/targets**, 故窗外汙染殘留。
|
|
74
|
+
> - **既有性確證**: 這批 case **單檔跑全綠**(solo 各自 spawn 全新後端 = 純 g_initialTestData 種子);僅合併模式失敗。本專案 e2e 檔本就設計為逐檔獨立(自 seedDb + 自 spawn 後端 + --baseline 直跑入口), 塞進單一 mocha 進程共用後端才是錯誤執行模型。對照組: w-web-sso 之 `resetToBaseSeed` 以 `delAll`+程式常數**重建全表**, 故其合併 e2e 可綠。
|
|
75
75
|
> - **修法(零改 baseline / 零改 production)**: 新增 `test/run-e2e-isolated.mjs` —— 每個 browser e2e 檔以獨立 mocha 進程執行, 每檔前只殺後端(11006)使其重 seed+spawn 全新後端、前端(8090)保持暖機共用。`package.json` 之 `test` 改為 `test:apiunit`(unit+api+e2e-doubleclick 合跑)`&& test:e2e`(逐檔隔離)。
|
|
76
76
|
> - 驗證: 先前失敗之 grups **20/0**、rela-pemi-rule **12/0** 於隔離機制下轉綠。**全量 `npm test`(新結構)終驗(2026-07-10 22:47)**: 階段一 `test:apiunit` **82 passing** / 階段二 `test:e2e` **9 個 e2e 檔逐檔 exit 0** = **全綠 0 failing**。
|
|
77
77
|
> - **2026-07-11 審計輪補強(pattern 化)**: 初版 `test:apiunit` 與 runner 用**寫死檔名清單**, 未來新增測試檔會被靜默漏跑(違反全域 §14.3「納入規則用 pattern 白名單」)。已改: `test:apiunit` 用 mocha glob(`test/unit-*.test.mjs test/api-*.test.mjs test/getUserRules.test.mjs`), runner 以 `readdirSync` 動態列舉 `^e2e-.*\.test\.mjs$`(e2e-doubleclick 一併納入隔離跑, 換取零遺漏)。**pattern 化後全量終驗(2026-07-11 01:35)**: 階段一 78 passing + 階段二 **10 個 e2e 檔全 exit 0**(doubleclick 4 + 原 9 檔)= **全綠**。
|
|
File without changes
|