qgraphflow 0.0.6 → 0.0.7

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 (89) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/.codex-plugin/plugin.json +2 -2
  4. package/.cursor-plugin/plugin.json +1 -1
  5. package/.qoder-plugin/plugin.json +1 -1
  6. package/README.md +119 -70
  7. package/docs/clients.de.md +15 -24
  8. package/docs/clients.es.md +15 -24
  9. package/docs/clients.ja.md +15 -24
  10. package/docs/clients.md +15 -24
  11. package/docs/clients.pt.md +15 -24
  12. package/docs/clients.ru.md +15 -24
  13. package/docs/clients.zh-CN.md +15 -24
  14. package/docs/readme/README.de.md +120 -71
  15. package/docs/readme/README.es.md +120 -71
  16. package/docs/readme/README.ja.md +120 -71
  17. package/docs/readme/README.pt.md +120 -71
  18. package/docs/readme/README.ru.md +120 -71
  19. package/docs/readme/README.zh-CN.md +106 -59
  20. package/examples/jeepay/README.md +23 -0
  21. package/examples/jeepay/capabilities.graph.json +270 -0
  22. package/examples/jeepay/class.graph.json +237 -0
  23. package/examples/jeepay/collection.graph.json +3057 -0
  24. package/examples/jeepay/dataflow.graph.json +212 -0
  25. package/examples/jeepay/deployment.graph.json +222 -0
  26. package/examples/jeepay/engineering.graph.json +277 -0
  27. package/examples/jeepay/er.graph.json +482 -0
  28. package/examples/jeepay/flowchart.graph.json +312 -0
  29. package/examples/jeepay/relations.graph.json +289 -0
  30. package/examples/jeepay/sequence.graph.json +355 -0
  31. package/examples/jeepay/source.json +95 -0
  32. package/examples/jeepay/state.graph.json +175 -0
  33. package/examples/jeepay/usecase.graph.json +222 -0
  34. package/package.json +14 -3
  35. package/skills/q-flow/SKILL.md +28 -20
  36. package/skills/q-flow/agents/openai.yaml +1 -1
  37. package/skills/q-flow/assets/viewer/package.json +1 -1
  38. package/skills/q-flow/assets/viewer/src/architecture-overview-theme.js +22 -0
  39. package/skills/q-flow/assets/viewer/src/architecture-overview.js +340 -0
  40. package/skills/q-flow/assets/viewer/src/diagrams/architecture.js +8 -5
  41. package/skills/q-flow/assets/viewer/src/diagrams/card.js +35 -17
  42. package/skills/q-flow/assets/viewer/src/diagrams/deployment.js +7 -5
  43. package/skills/q-flow/assets/viewer/src/diagrams/drawing.js +5 -2
  44. package/skills/q-flow/assets/viewer/src/diagrams/registry.js +10 -0
  45. package/skills/q-flow/assets/viewer/src/diagrams/sequence.js +13 -7
  46. package/skills/q-flow/assets/viewer/src/edge-routing.js +43 -22
  47. package/skills/q-flow/assets/viewer/src/export-svg.js +27 -5
  48. package/skills/q-flow/assets/viewer/src/graph-validation.js +72 -15
  49. package/skills/q-flow/assets/viewer/src/i18n-messages.json +184 -8
  50. package/skills/q-flow/assets/viewer/src/layout-compaction.js +123 -0
  51. package/skills/q-flow/assets/viewer/src/layout-measure.js +14 -8
  52. package/skills/q-flow/assets/viewer/src/layout-policy.js +6 -0
  53. package/skills/q-flow/assets/viewer/src/layout-quality.js +61 -15
  54. package/skills/q-flow/assets/viewer/src/layout-refinement.js +271 -0
  55. package/skills/q-flow/assets/viewer/src/layout-semantics.js +8 -0
  56. package/skills/q-flow/assets/viewer/src/layout-spacing.js +23 -4
  57. package/skills/q-flow/assets/viewer/src/layout-templates.js +298 -0
  58. package/skills/q-flow/assets/viewer/src/node-svg.js +1 -1
  59. package/skills/q-flow/assets/viewer/src/orthogonal-routing.js +475 -0
  60. package/skills/q-flow/assets/viewer/src/presentation-graph.js +31 -0
  61. package/skills/q-flow/assets/viewer/src/route-clearance.js +144 -0
  62. package/skills/q-flow/assets/viewer/src/sequence-executions.js +22 -0
  63. package/skills/q-flow/assets/viewer/src/sequence-fragments.js +20 -2
  64. package/skills/q-flow/assets/viewer/src/session-graph.js +46 -3
  65. package/skills/q-flow/assets/viewer/src/text-layout.js +33 -6
  66. package/skills/q-flow/assets/viewer/src/view-identity.js +26 -0
  67. package/skills/q-flow/assets/viewer/src/visual-style.js +13 -5
  68. package/skills/q-flow/assets/viewer-dist/index.html +30 -28
  69. package/skills/q-flow/references/evidence-sources.md +7 -5
  70. package/skills/q-flow/references/graph-common.md +34 -34
  71. package/skills/q-flow/references/graph-schema.md +28 -7
  72. package/skills/q-flow/references/guided-intake.md +51 -71
  73. package/skills/q-flow/references/layout-routing.md +47 -0
  74. package/skills/q-flow/references/types/architecture.md +42 -22
  75. package/skills/q-flow/references/types/class.md +9 -2
  76. package/skills/q-flow/references/types/dataflow.md +11 -4
  77. package/skills/q-flow/references/types/deployment.md +11 -3
  78. package/skills/q-flow/references/types/er.md +8 -1
  79. package/skills/q-flow/references/types/flowchart.md +12 -5
  80. package/skills/q-flow/references/types/sequence.md +20 -16
  81. package/skills/q-flow/references/types/state.md +10 -3
  82. package/skills/q-flow/references/types/usecase.md +6 -0
  83. package/skills/q-flow/references/viewer-development.md +37 -24
  84. package/skills/q-flow/references/visual-contract.md +12 -6
  85. package/skills/q-flow/scripts/compile-layout.mjs +85 -102
  86. package/skills/q-flow/scripts/compile-sequence.mjs +4 -21
  87. package/skills/q-flow/scripts/generate-viewer.mjs +18 -9
  88. package/skills/q-flow/scripts/validate-graph.mjs +38 -21
  89. package/examples/order-flow.graph.json +0 -94
@@ -0,0 +1,482 @@
1
+ {
2
+ "meta": {
3
+ "title": "Jeepay 支付核心数据 ER 图",
4
+ "subtitle": "Jeepay 源码与配置证据",
5
+ "sourceRef": "jeequan/jeepay@e1ac9086d679826bab593f20431b7ecd292eb685",
6
+ "scope": "商户应用、通道、支付订单与通知记录",
7
+ "diagramType": "er",
8
+ "locale": "zh-CN",
9
+ "notes": [
10
+ "init.sql 未声明 FOREIGN KEY;连线是代码使用的逻辑关联,不代表数据库强制外键。",
11
+ "每个实体列出 DDL 的全部字段;仅原生 PRIMARY KEY 标记为 PK。"
12
+ ],
13
+ "viewId": "jeepay-er"
14
+ },
15
+ "nodes": [
16
+ {
17
+ "id": "t_mch_app",
18
+ "label": "t_mch_app",
19
+ "kind": "entity",
20
+ "module": "config",
21
+ "source": {
22
+ "file": "docs/sql/init.sql",
23
+ "lineStart": 142,
24
+ "lineEnd": 142,
25
+ "kind": "schema"
26
+ },
27
+ "fields": [
28
+ {
29
+ "name": "app_id",
30
+ "type": "varchar(64)",
31
+ "key": "PK",
32
+ "nullable": false
33
+ },
34
+ {
35
+ "name": "app_name",
36
+ "type": "varchar(64)",
37
+ "nullable": false
38
+ },
39
+ {
40
+ "name": "mch_no",
41
+ "type": "VARCHAR(64)",
42
+ "nullable": false
43
+ },
44
+ {
45
+ "name": "state",
46
+ "type": "TINYINT(6)",
47
+ "nullable": false
48
+ },
49
+ {
50
+ "name": "app_secret",
51
+ "type": "VARCHAR(128)",
52
+ "nullable": false
53
+ },
54
+ {
55
+ "name": "remark",
56
+ "type": "varchar(128)",
57
+ "nullable": true
58
+ },
59
+ {
60
+ "name": "created_uid",
61
+ "type": "BIGINT(20)",
62
+ "nullable": true
63
+ },
64
+ {
65
+ "name": "created_by",
66
+ "type": "VARCHAR(64)",
67
+ "nullable": true
68
+ },
69
+ {
70
+ "name": "created_at",
71
+ "type": "TIMESTAMP(3)",
72
+ "nullable": false
73
+ },
74
+ {
75
+ "name": "updated_at",
76
+ "type": "TIMESTAMP(3)",
77
+ "nullable": false
78
+ }
79
+ ]
80
+ },
81
+ {
82
+ "id": "t_mch_pay_passage",
83
+ "label": "t_mch_pay_passage",
84
+ "kind": "entity",
85
+ "module": "config",
86
+ "source": {
87
+ "file": "docs/sql/init.sql",
88
+ "lineStart": 229,
89
+ "lineEnd": 229,
90
+ "kind": "schema"
91
+ },
92
+ "fields": [
93
+ {
94
+ "name": "id",
95
+ "type": "BIGINT(20)",
96
+ "key": "PK",
97
+ "nullable": false
98
+ },
99
+ {
100
+ "name": "mch_no",
101
+ "type": "VARCHAR(64)",
102
+ "nullable": false
103
+ },
104
+ {
105
+ "name": "app_id",
106
+ "type": "VARCHAR(64)",
107
+ "nullable": false
108
+ },
109
+ {
110
+ "name": "if_code",
111
+ "type": "VARCHAR(20)",
112
+ "nullable": false
113
+ },
114
+ {
115
+ "name": "way_code",
116
+ "type": "VARCHAR(20)",
117
+ "nullable": false
118
+ },
119
+ {
120
+ "name": "rate",
121
+ "type": "DECIMAL(20,6)",
122
+ "nullable": false
123
+ },
124
+ {
125
+ "name": "risk_config",
126
+ "type": "JSON",
127
+ "nullable": true
128
+ },
129
+ {
130
+ "name": "state",
131
+ "type": "TINYINT(6)",
132
+ "nullable": false
133
+ },
134
+ {
135
+ "name": "created_at",
136
+ "type": "TIMESTAMP(3)",
137
+ "nullable": false
138
+ },
139
+ {
140
+ "name": "updated_at",
141
+ "type": "TIMESTAMP(3)",
142
+ "nullable": false
143
+ }
144
+ ]
145
+ },
146
+ {
147
+ "id": "t_pay_order",
148
+ "label": "t_pay_order",
149
+ "kind": "entity",
150
+ "module": "payment",
151
+ "source": {
152
+ "file": "docs/sql/init.sql",
153
+ "lineStart": 251,
154
+ "lineEnd": 251,
155
+ "kind": "schema"
156
+ },
157
+ "fields": [
158
+ {
159
+ "name": "pay_order_id",
160
+ "type": "VARCHAR(30)",
161
+ "key": "PK",
162
+ "nullable": false
163
+ },
164
+ {
165
+ "name": "mch_no",
166
+ "type": "VARCHAR(64)",
167
+ "nullable": false
168
+ },
169
+ {
170
+ "name": "isv_no",
171
+ "type": "VARCHAR(64)",
172
+ "nullable": true
173
+ },
174
+ {
175
+ "name": "app_id",
176
+ "type": "VARCHAR(64)",
177
+ "nullable": false
178
+ },
179
+ {
180
+ "name": "mch_name",
181
+ "type": "VARCHAR(30)",
182
+ "nullable": false
183
+ },
184
+ {
185
+ "name": "mch_type",
186
+ "type": "TINYINT(6)",
187
+ "nullable": false
188
+ },
189
+ {
190
+ "name": "mch_order_no",
191
+ "type": "VARCHAR(64)",
192
+ "nullable": false
193
+ },
194
+ {
195
+ "name": "if_code",
196
+ "type": "VARCHAR(20)",
197
+ "nullable": true
198
+ },
199
+ {
200
+ "name": "way_code",
201
+ "type": "VARCHAR(20)",
202
+ "nullable": false
203
+ },
204
+ {
205
+ "name": "amount",
206
+ "type": "BIGINT(20)",
207
+ "nullable": false
208
+ },
209
+ {
210
+ "name": "mch_fee_rate",
211
+ "type": "decimal(20,6)",
212
+ "nullable": false
213
+ },
214
+ {
215
+ "name": "mch_fee_amount",
216
+ "type": "BIGINT(20)",
217
+ "nullable": false
218
+ },
219
+ {
220
+ "name": "currency",
221
+ "type": "VARCHAR(3)",
222
+ "nullable": false
223
+ },
224
+ {
225
+ "name": "state",
226
+ "type": "TINYINT(6)",
227
+ "nullable": false
228
+ },
229
+ {
230
+ "name": "notify_state",
231
+ "type": "TINYINT(6)",
232
+ "nullable": false
233
+ },
234
+ {
235
+ "name": "client_ip",
236
+ "type": "VARCHAR(32)",
237
+ "nullable": true
238
+ },
239
+ {
240
+ "name": "subject",
241
+ "type": "VARCHAR(64)",
242
+ "nullable": false
243
+ },
244
+ {
245
+ "name": "body",
246
+ "type": "VARCHAR(256)",
247
+ "nullable": false
248
+ },
249
+ {
250
+ "name": "channel_extra",
251
+ "type": "VARCHAR(512)",
252
+ "nullable": true
253
+ },
254
+ {
255
+ "name": "channel_user",
256
+ "type": "VARCHAR(64)",
257
+ "nullable": true
258
+ },
259
+ {
260
+ "name": "channel_order_no",
261
+ "type": "VARCHAR(64)",
262
+ "nullable": true
263
+ },
264
+ {
265
+ "name": "refund_state",
266
+ "type": "TINYINT(6)",
267
+ "nullable": false
268
+ },
269
+ {
270
+ "name": "refund_times",
271
+ "type": "INT",
272
+ "nullable": false
273
+ },
274
+ {
275
+ "name": "refund_amount",
276
+ "type": "BIGINT(20)",
277
+ "nullable": false
278
+ },
279
+ {
280
+ "name": "division_mode",
281
+ "type": "TINYINT(6)",
282
+ "nullable": true
283
+ },
284
+ {
285
+ "name": "division_state",
286
+ "type": "TINYINT(6)",
287
+ "nullable": true
288
+ },
289
+ {
290
+ "name": "division_last_time",
291
+ "type": "DATETIME",
292
+ "nullable": true
293
+ },
294
+ {
295
+ "name": "err_code",
296
+ "type": "VARCHAR(128)",
297
+ "nullable": true
298
+ },
299
+ {
300
+ "name": "err_msg",
301
+ "type": "VARCHAR(256)",
302
+ "nullable": true
303
+ },
304
+ {
305
+ "name": "ext_param",
306
+ "type": "VARCHAR(2048)",
307
+ "nullable": true
308
+ },
309
+ {
310
+ "name": "notify_url",
311
+ "type": "VARCHAR(128)",
312
+ "nullable": false
313
+ },
314
+ {
315
+ "name": "return_url",
316
+ "type": "VARCHAR(128)",
317
+ "nullable": true
318
+ },
319
+ {
320
+ "name": "expired_time",
321
+ "type": "DATETIME",
322
+ "nullable": true
323
+ },
324
+ {
325
+ "name": "success_time",
326
+ "type": "DATETIME",
327
+ "nullable": true
328
+ },
329
+ {
330
+ "name": "created_at",
331
+ "type": "TIMESTAMP(3)",
332
+ "nullable": false
333
+ },
334
+ {
335
+ "name": "updated_at",
336
+ "type": "TIMESTAMP(3)",
337
+ "nullable": false
338
+ }
339
+ ]
340
+ },
341
+ {
342
+ "id": "t_mch_notify_record",
343
+ "label": "t_mch_notify_record",
344
+ "kind": "entity",
345
+ "module": "notification",
346
+ "source": {
347
+ "file": "docs/sql/init.sql",
348
+ "lineStart": 296,
349
+ "lineEnd": 296,
350
+ "kind": "schema"
351
+ },
352
+ "fields": [
353
+ {
354
+ "name": "notify_id",
355
+ "type": "BIGINT(20)",
356
+ "key": "PK",
357
+ "nullable": false
358
+ },
359
+ {
360
+ "name": "order_id",
361
+ "type": "VARCHAR(64)",
362
+ "nullable": false
363
+ },
364
+ {
365
+ "name": "order_type",
366
+ "type": "TINYINT(6)",
367
+ "nullable": false
368
+ },
369
+ {
370
+ "name": "mch_order_no",
371
+ "type": "VARCHAR(64)",
372
+ "nullable": false
373
+ },
374
+ {
375
+ "name": "mch_no",
376
+ "type": "VARCHAR(64)",
377
+ "nullable": false
378
+ },
379
+ {
380
+ "name": "isv_no",
381
+ "type": "VARCHAR(64)",
382
+ "nullable": true
383
+ },
384
+ {
385
+ "name": "app_id",
386
+ "type": "VARCHAR(64)",
387
+ "nullable": false
388
+ },
389
+ {
390
+ "name": "notify_url",
391
+ "type": "TEXT",
392
+ "nullable": false
393
+ },
394
+ {
395
+ "name": "res_result",
396
+ "type": "TEXT",
397
+ "nullable": true
398
+ },
399
+ {
400
+ "name": "notify_count",
401
+ "type": "INT(11)",
402
+ "nullable": false
403
+ },
404
+ {
405
+ "name": "notify_count_limit",
406
+ "type": "INT(11)",
407
+ "nullable": false
408
+ },
409
+ {
410
+ "name": "state",
411
+ "type": "TINYINT(6)",
412
+ "nullable": false
413
+ },
414
+ {
415
+ "name": "last_notify_time",
416
+ "type": "DATETIME",
417
+ "nullable": true
418
+ },
419
+ {
420
+ "name": "created_at",
421
+ "type": "TIMESTAMP(3)",
422
+ "nullable": false
423
+ },
424
+ {
425
+ "name": "updated_at",
426
+ "type": "TIMESTAMP(3)",
427
+ "nullable": false
428
+ }
429
+ ]
430
+ }
431
+ ],
432
+ "edges": [
433
+ {
434
+ "id": "er1",
435
+ "source": "t_mch_app",
436
+ "target": "t_mch_pay_passage",
437
+ "kind": "relationship",
438
+ "label": "配置支付通道(逻辑)",
439
+ "evidence": "source",
440
+ "site": {
441
+ "file": "jeepay-payment/src/main/java/com/jeequan/jeepay/pay/ctrl/payorder/AbstractPayOrderController.java",
442
+ "lineStart": 167,
443
+ "lineEnd": 167
444
+ },
445
+ "sourceCardinality": "1",
446
+ "targetCardinality": "0..*"
447
+ },
448
+ {
449
+ "id": "er2",
450
+ "source": "t_mch_app",
451
+ "target": "t_pay_order",
452
+ "kind": "relationship",
453
+ "label": "创建支付订单(逻辑)",
454
+ "evidence": "source",
455
+ "site": {
456
+ "file": "jeepay-payment/src/main/java/com/jeequan/jeepay/pay/ctrl/payorder/AbstractPayOrderController.java",
457
+ "lineStart": 242,
458
+ "lineEnd": 242
459
+ },
460
+ "sourceCardinality": "1",
461
+ "targetCardinality": "0..*"
462
+ },
463
+ {
464
+ "id": "er3",
465
+ "source": "t_pay_order",
466
+ "target": "t_mch_notify_record",
467
+ "kind": "relationship",
468
+ "label": "产生支付通知(逻辑)",
469
+ "evidence": "source",
470
+ "site": {
471
+ "file": "jeepay-payment/src/main/java/com/jeequan/jeepay/pay/service/PayMchNotifyService.java",
472
+ "lineStart": 76,
473
+ "lineEnd": 76
474
+ },
475
+ "sourceCardinality": "1",
476
+ "targetCardinality": "0..1"
477
+ }
478
+ ],
479
+ "layout": {
480
+ "direction": "right"
481
+ }
482
+ }