changedOutput schema / (root)
Previous value: -nullNew value: +{
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "additionalProperties": false,
+ "properties": {
+ "calendar": {
+ "additionalProperties": false,
+ "description": "The schedule as a subscribable calendar. Returned inline as text, not as a file download.",
+ "properties": {
+ "filename": {
+ "description": "Suggested filename for the calendar file.",
+ "type": "string"
+ },
+ "icsText": {
+ "description": "A complete iCalendar document with a repeating event per plant, ready to write to a file and import.",
+ "type": "string"
+ },
+ "mimeType": {
+ "description": "MIME type of icsText, i.e. text/calendar.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "filename",
+ "mimeType",
+ "icsText"
+ ],
+ "type": "object"
+ },
+ "note": {
+ "description": "Standing caution that these intervals are a starting point to adjust against the actual soil.",
+ "type": "string"
+ },
+ "schedule": {
+ "description": "One entry per requested plant, in catalogue order.",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "baseDays": {
+ "description": "The plant's baseline interval before pot, light and season adjustments.",
+ "type": "number"
+ },
+ "intervalDays": {
+ "description": "Days between waterings after every adjustment -- the number to act on.",
+ "type": "number"
+ },
+ "key": {
+ "description": "Stable identifier for the plant, as given in the input.",
+ "type": "string"
+ },
+ "multiplier": {
+ "description": "The combined adjustment applied to baseDays, so the difference is auditable rather than magic.",
+ "type": "number"
+ },
+ "name": {
+ "description": "The plant's common name.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "key",
+ "name",
+ "intervalDays",
+ "baseDays",
+ "multiplier"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "summary": {
+ "additionalProperties": false,
+ "description": "The set at a glance, for deciding a single watering day.",
+ "properties": {
+ "chosenCount": {
+ "description": "How many plants were scheduled.",
+ "maximum": 9007199254740991,
+ "minimum": -9007199254740991,
+ "type": "integer"
+ },
+ "maxIntervalDays": {
+ "description": "The longest interval in the set.",
+ "type": "number"
+ },
+ "minIntervalDays": {
+ "description": "The thirstiest plant's interval -- the cadence that actually governs a shared watering round.",
+ "type": "number"
+ },
+ "seasonFactor": {
+ "description": "The season multiplier applied to every plant.",
+ "type": "number"
+ }
+ },
+ "required": [
+ "chosenCount",
+ "minIntervalDays",
+ "maxIntervalDays",
+ "seasonFactor"
+ ],
+ "type": "object"
+ }
+ },
+ "required": [
+ "schedule",
+ "summary",
+ "calendar",
+ "note"
+ ],
+ "type": "object"
+}