codecombat/app/schemas/models/mandate.schema.coffee

44 lines
1.6 KiB
CoffeeScript
Raw Normal View History

c = require './../schemas'
module.exports = MandateSchema = {
type: 'object'
additionalProperties: false
default:
simulationThroughputRatio: 1
sessionSaveDelay:
registered: {min: 4, max: 10}
anonymous: {min: 5, max: 15}
#registered: {min: 10, max: 30} # High load, like during HoC scaling
#anonymous: {min: 20, max: 60}
properties:
simulationThroughputRatio:
name: 'Simulation Throughput Ratio'
description: '0-1 fraction of requests for a match to simulate that should be granted.'
type: 'number'
minimum: 0
maximum: 1
sessionSaveDelay:
name: 'Session Save Delay'
description: 'How often we save level sessions after code changes--min and max wait in seconds.'
type: 'object'
properties:
registered:
description: 'How often to save for registered players.'
type: 'object'
additionalProperties: false
requiredProperties: ['min', 'max']
properties:
min: {type: 'number', minimum: 1, exclusiveMinimum: true, format: 'seconds'}
max: {type: 'number', minimum: 5, exclusiveMinimum: true, format: 'seconds'}
anonymous:
description: 'How often to save for anonymous players.'
type: 'object'
additionalProperties: false
requiredProperties: ['min', 'max']
properties:
min: {type: 'number', minimum: 1, exclusiveMinimum: true, format: 'seconds'}
max: {type: 'number', minimum: 5, exclusiveMinimum: true, format: 'seconds'}
}
c.extendBasicProperties MandateSchema, 'Mandate'