This commit is contained in:
2026-08-25 16:40:48 +08:00
parent 1f6f1a0677
commit 87c5e18ca6
93 changed files with 1154 additions and 527 deletions
@@ -13,7 +13,7 @@ const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..')
const serviceModules = [
'auth', 'iam', 'order', 'firstleg', 'finance', 'file', 'warehouse',
'integration-service', 'print', 'event-bridge-service', 'lastleg-service',
'warehouse-overseas-service', 'overseas-security-service'
'warehouse-overseas-service'
]
const canonicalSource = new Map(serviceModules.map(name => [name, `${name}${name.endsWith('-service') ? '' : '-service'}`]))
@@ -45,7 +45,6 @@ const expectedOnlineEdges = [
const expectedBackgroundEdges = [
'event-bridge-service->firstleg-service',
'event-bridge-service->lastleg-service',
'event-bridge-service->overseas-security-service',
'file-service->finance-service',
'file-service->firstleg-service',
'file-service->iam-service',
@@ -131,6 +130,7 @@ test('every reviewed synchronous client has a complete and exclusive executable
}
})
test('all four Lastleg RestClient gateways use explicit bounded transports', async () => {
const clients = new Map([
['lastleg-service/src/main/java/com/baiyue/lastleg/inboundplan/pda/gateway/HttpUnloadPhotoFileGateway.java', 'getUnloadPhotoFile'],
@@ -170,7 +170,7 @@ test('REQUEST, BACKGROUND and full graphs remain separate executable baselines',
assert.deepEqual(graphEdges('INFRASTRUCTURE'), [
'common-audit->audit-service',
'gateway-overseas->auth-service',
'gateway-overseas->overseas-security-service'
'gateway-overseas->lastleg-service'
])
assert.deepEqual(stronglyConnectedComponents(graphEdges('REQUEST')), [
['auth-service', 'iam-service'],
@@ -185,10 +185,10 @@ test('REQUEST, BACKGROUND and full graphs remain separate executable baselines',
]])
})
test('overseas security edges never become online business dependencies', () => {
assert.ok(!graphEdges('REQUEST').some(edge => edge.includes('overseas-security-service')))
assert.ok(graphEdges('INFRASTRUCTURE').includes('gateway-overseas->overseas-security-service'))
assert.ok(graphEdges('BACKGROUND').includes('event-bridge-service->overseas-security-service'))
test('overseas security projection stays in Lastleg infrastructure and background edges', () => {
assert.ok(!graphEdges('REQUEST').some(edge => edge === 'gateway-overseas->lastleg-service'))
assert.ok(graphEdges('INFRASTRUCTURE').includes('gateway-overseas->lastleg-service'))
assert.ok(graphEdges('BACKGROUND').includes('event-bridge-service->lastleg-service'))
})
test('known user entries expose every longest simple REQUEST path over the two-hop budget', () => {
@@ -242,3 +242,4 @@ test('shared Feign timeout defaults and long-running export overrides do not dri
const fileConfig = await readFile(path.join(root, 'file', 'src', 'main', 'resources', 'application.yml'), 'utf8')
assert.equal((fileConfig.match(/read-timeout:\s*15000/g) ?? []).length, 5)
})