{ "$schema": "https://metabuilder.dev/schemas/json-script.schema.json", "schemaVersion": "2.2.0", "package": "github_tools", "description": "GitHub Tools functions for fetching runs, analyzing data, and filtering results", "functions": [ { "id": "init_initialize", "name": "initialize", "exported": true, "description": "Initialize the GitHub Tools package with configuration", "category": "initialization", "luaScript": "init.lua" }, { "id": "fetch_runs_fetchRuns", "name": "fetchRuns", "exported": true, "description": "Fetch workflow runs from GitHub API", "category": "api", "luaScript": "fetch_runs.lua" }, { "id": "fetch_runs_fetchJobs", "name": "fetchJobs", "exported": true, "description": "Fetch jobs for a specific workflow run", "category": "api", "luaScript": "fetch_runs.lua" }, { "id": "fetch_runs_fetchLogs", "name": "fetchLogs", "exported": true, "description": "Fetch logs for a specific job", "category": "api", "luaScript": "fetch_runs.lua" }, { "id": "analyze_calculateStats", "name": "calculateStats", "exported": true, "description": "Calculate statistics from workflow runs", "category": "analytics", "luaScript": "analyze.lua" }, { "id": "analyze_getSuccessTrend", "name": "getSuccessTrend", "exported": true, "description": "Get trend data for success rate over time", "category": "analytics", "luaScript": "analyze.lua" }, { "id": "analyze_getFailureBreakdown", "name": "getFailureBreakdown", "exported": true, "description": "Get failure breakdown by type", "category": "analytics", "luaScript": "analyze.lua" }, { "id": "filter_filterRuns", "name": "filterRuns", "exported": true, "description": "Apply filters to workflow runs", "category": "filtering", "luaScript": "filter.lua" }, { "id": "filter_applyFilters", "name": "applyFilters", "exported": true, "description": "Apply filters from form data", "category": "filtering", "luaScript": "filter.lua" }, { "id": "filter_sortRuns", "name": "sortRuns", "exported": true, "description": "Sort runs by field", "category": "filtering", "luaScript": "filter.lua" }, { "id": "status_getStatusColor", "name": "getStatusColor", "exported": true, "description": "Get color for run status", "category": "display", "luaScript": "status.lua" }, { "id": "status_getStatusIcon", "name": "getStatusIcon", "exported": true, "description": "Get icon name for run status", "category": "display", "luaScript": "status.lua" }, { "id": "status_getStatusLabel", "name": "getStatusLabel", "exported": true, "description": "Get human-readable status label", "category": "display", "luaScript": "status.lua" }, { "id": "status_renderBadge", "name": "renderBadge", "exported": true, "description": "Render status badge component", "category": "display", "luaScript": "status.lua" }, { "id": "status_formatDuration", "name": "formatDuration", "exported": true, "description": "Format duration in human-readable form", "category": "display", "luaScript": "status.lua" }, { "id": "status_formatRelativeTime", "name": "formatRelativeTime", "exported": true, "description": "Format timestamp as relative time", "category": "display", "luaScript": "status.lua" } ], "exports": { "functions": [ "initialize", "fetchRuns", "fetchJobs", "fetchLogs", "calculateStats", "getSuccessTrend", "getFailureBreakdown", "filterRuns", "applyFilters", "sortRuns", "getStatusColor", "getStatusIcon", "getStatusLabel", "renderBadge", "formatDuration", "formatRelativeTime" ] } }