Skip to content

Commit 28edfe3

Browse files
author
Kanishka
committed
Fix sandbox configuration serialization and add comprehensive logging
1 parent bd37834 commit 28edfe3

File tree

3 files changed

+40
-16
lines changed

3 files changed

+40
-16
lines changed

src/controllers/configuration.js

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,16 @@ function ConfigurationController(ctx) {
8585
if (!configuration) {
8686
return notFound('Configuration not found');
8787
}
88-
return ok(ConfigurationDto.toJSON(configuration));
88+
// eslint-disable-next-line no-console
89+
console.log('[getLatest] Configuration version:', configuration.getVersion());
90+
// eslint-disable-next-line no-console
91+
console.log('[getLatest] Configuration state:', configuration.state);
92+
// eslint-disable-next-line no-console
93+
console.log('[getLatest] Configuration state.sandboxAudits:', configuration.state?.sandboxAudits);
94+
const result = ConfigurationDto.toJSON(configuration);
95+
// eslint-disable-next-line no-console
96+
console.log('[getLatest] DTO result includes sandboxAudits:', !!result.sandboxAudits);
97+
return ok(result);
8998
};
9099

91100
/**
@@ -118,11 +127,17 @@ function ConfigurationController(ctx) {
118127

119128
// Update sandbox configurations for each audit type
120129
Object.keys(sandboxConfigs).forEach((auditType) => {
130+
// eslint-disable-next-line no-console
131+
console.log(`Updating sandbox config for audit type: ${auditType}`, sandboxConfigs[auditType]);
121132
config.updateSandboxAuditConfig(auditType, sandboxConfigs[auditType]);
122133
});
123134

124135
// Save the updated configuration
136+
// eslint-disable-next-line no-console
137+
console.log('Saving updated configuration with sandbox audits:', config.state?.sandboxAudits);
125138
await config.save();
139+
// eslint-disable-next-line no-console
140+
console.log('[updateSandboxConfig] Configuration saved successfully');
126141

127142
return ok({
128143
message: 'Sandbox configurations updated successfully',

src/dto/configuration.js

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -20,19 +20,20 @@ export const ConfigurationDto = {
2020
* @returns {{
2121
* }}
2222
*/
23-
toJSON: (configuration) => ({
24-
version: configuration.getVersion(),
25-
jobs: configuration.getJobs(),
26-
...(configuration.getHandlers() ? { handlers: configuration.getHandlers() } : {}),
27-
queues: configuration.getQueues(),
28-
...(configuration.getSlackRoles() ? { slackRoles: configuration.getSlackRoles() } : {}),
29-
...(configuration.getEnabledSandboxAudits && configuration.getEnabledSandboxAudits().length > 0
30-
? {
31-
sandboxAudits: configuration.getEnabledSandboxAudits().reduce((acc, auditType) => {
32-
acc[auditType] = configuration.getSandboxAuditConfig(auditType);
33-
return acc;
34-
}, {}),
35-
}
36-
: {}),
37-
}),
23+
toJSON: (configuration) => {
24+
// eslint-disable-next-line no-console
25+
console.log('[ConfigurationDto] Configuration state?.sandboxAudits:', configuration.state?.sandboxAudits);
26+
27+
const result = {
28+
version: configuration.getVersion(),
29+
jobs: configuration.getJobs(),
30+
...(configuration.getHandlers() ? { handlers: configuration.getHandlers() } : {}),
31+
queues: configuration.getQueues(),
32+
...(configuration.getSlackRoles() ? { slackRoles: configuration.getSlackRoles() } : {}),
33+
...(configuration.state?.sandboxAudits
34+
? { sandboxAudits: configuration.state.sandboxAudits }
35+
: {}),
36+
};
37+
return result;
38+
},
3839
};

test/controllers/configurations.test.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,14 @@ describe('Configurations Controller', () => {
8989
if (auditType === 'meta-tags') return { expire: '15' };
9090
return null;
9191
},
92+
state: {
93+
sandboxAudits: {
94+
enabledAudits: {
95+
cwv: { expire: '10' },
96+
'meta-tags': { expire: '15' },
97+
},
98+
},
99+
},
92100
},
93101
];
94102

0 commit comments

Comments
 (0)