local M = {} function M.check() vim.health.start('pending.nvim') local ok, config = pcall(require, 'pending.config') if not ok then vim.health.error('Failed to load pending.config') return end local cfg = config.get() vim.health.ok('Config loaded') vim.health.info('Data path: ' .. cfg.data_path) local data_dir = vim.fn.fnamemodify(cfg.data_path, ':h') if vim.fn.isdirectory(data_dir) == 1 then vim.health.ok('Data directory exists: ' .. data_dir) else vim.health.warn('Data directory does not exist yet: ' .. data_dir) end if vim.fn.filereadable(cfg.data_path) == 1 then local store_ok, store = pcall(require, 'pending.store') if store_ok then local load_ok, err = pcall(store.load) if load_ok then local tasks = store.tasks() vim.health.ok('Data file loaded: ' .. #tasks .. ' tasks') else vim.health.error('Failed to load data file: ' .. tostring(err)) end end else vim.health.info('No data file yet (will be created on first save)') end if vim.fn.executable('curl') == 1 then vim.health.ok('curl found (required for Google Calendar sync)') else vim.health.warn('curl not found (needed for Google Calendar sync)') end if vim.fn.executable('openssl') == 1 then vim.health.ok('openssl found (required for OAuth PKCE)') else vim.health.warn('openssl not found (needed for Google Calendar OAuth)') end end return M