{"record":{"id":"60d20a528ca7ea67","repo":"getgrav/grav","slug":"argument-options-is-missing-folder-60d20a","errorCode":null,"errorMessage":"Argument \\$options is missing 'folder'","messagePattern":"Argument \\\\\\$options is missing 'folder'","errorType":"exception","errorClass":"InvalidArgumentException","httpStatus":null,"severity":"error","filePath":"system/src/Grav/Framework/Flex/Storage/SimpleStorage.php","lineNumber":48,"sourceCode":"    /** @var string */\n    protected $dataFolder;\n    /** @var string */\n    protected $dataPattern;\n    /** @var string|null */\n    protected $prefix;\n    /** @var array|null */\n    protected $data;\n    /** @var int */\n    protected $modified = 0;\n\n    /**\n     * {@inheritdoc}\n     * @see FlexStorageInterface::__construct()\n     */\n    public function __construct(array $options)\n    {\n        if (!isset($options['folder'])) {\n            throw new InvalidArgumentException(\"Argument \\$options is missing 'folder'\");\n        }\n\n        $formatter = $options['formatter'] ?? $this->detectDataFormatter($options['folder']);\n        $this->initDataFormatter($formatter);\n\n        $filesystem = Filesystem::getInstance(true);\n\n        $extension = $this->dataFormatter->getDefaultFileExtension();\n        $pattern = Utils::basename($options['folder']);\n\n        $this->dataPattern = Utils::basename($pattern, $extension) . $extension;\n        $this->dataFolder = $filesystem->dirname($options['folder']);\n        $this->keyField = $options['key'] ?? 'storage_key';\n        $this->keyLen = (int)($options['key_len'] ?? 32);\n        $this->prefix = $options['prefix'] ?? null;\n\n        // Make sure that the data folder exists.\n        if (!file_exists($this->dataFolder)) {","sourceCodeStart":30,"sourceCodeEnd":66,"githubUrl":"https://github.com/getgrav/grav/blob/6040efed04efa69b8209448ed81308e7c24147c2/system/src/Grav/Framework/Flex/Storage/SimpleStorage.php#L30-L66","documentation":"Error \"Argument \\$options is missing 'folder'\" thrown in getgrav/grav.","triggerScenarios":"Thrown at system/src/Grav/Framework/Flex/Storage/SimpleStorage.php:48 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"6040efed04efa69b8209448ed81308e7c24147c2","analyzedAt":"2026-08-17T05:07:31.593Z","schemaVersion":2},"datasetVersion":"2026-08-17T09:17:11.063Z"}