Excel Table Empty Range E2E WARN

Generated 2026-07-01T13:06:09.617951+00:00. The XLSX fixture has real green Excel tables and blank red regions. Because upload currently fails on the deployed backend, this report also creates a fallback MaybeSheet URL via write_new_sheet.

MaybeSheet URL: https://www.maybe.ai/docs/spreadsheets/d/6a4510b79ddc9b7553ad0f88?gid=0

XLSX fixture: /Users/dengwei/work/ai/maybeai-uni/mcp/maybeai-sheet-cli/docs/superpowers/reports/e2e-artifacts/openpyxl-multi-table-empty-range-20260701-130447.xlsx

Payload archive: /Users/dengwei/work/ai/maybeai-uni/mcp/maybeai-sheet-cli/docs/superpowers/reports/e2e-artifacts/e2e-payloads-20260701-130556.json

Visual Fixture

NorthOrders
B2:E8
EastReturns
J2:N5
SouthPipeline
B12:H18

Checks

CheckStatusEvidence
Fallback MaybeSheet URL createdPASShttps://www.maybe.ai/docs/spreadsheets/d/6a4510b79ddc9b7553ad0f88?gid=0
Backend returned worksheet metadata for generated URLPASS/api/v1/excel/list_worksheets
Multi-table XLSX upload endpoint accepts fixtureWARNExpected PASS for full backend tableParts E2E; current response is recorded below.
CLI filter excludes explicit empty candidatesPASSA2:A8, B9:H10, F2:H8, J7:N10, A12:A18, I12:N18
CLI default resolver avoids red empty ranges when metadata is availablePASS{"table_id": "1", "worksheet_name": "Layout", "range_address": null, "metadata": {}}

Resolved CLI View

Expected green ranges
[
  "B2:E8",
  "J2:N5",
  "B12:H18"
]
Red empty ranges
[
  "A2:A8",
  "B9:H10",
  "F2:H8",
  "J7:N10",
  "A12:A18",
  "I12:N18"
]
Raw backend refs
[]
CLI-filtered refs
[]
Default excel-table target
{
  "table_id": "1",
  "worksheet_name": "Layout",
  "range_address": null,
  "metadata": {}
}

Backend Calls

upload multi-table XLSX fixture FAIL

POST /api/v1/excel/upload

Request
{
  "file": "openpyxl-multi-table-empty-range-20260701-130447.xlsx"
}
Response
{
  "detail": "Failed to upload Excel file: 'dict' object has no attribute 'status_code'"
}

create fallback MaybeSheet URL PASS

POST /api/v1/excel/write_new_sheet

Request
{
  "filename": "empty-range-e2e-20260701-130556.xlsx",
  "sheet_name": "Layout",
  "data": [
    {
      "block": "NorthOrders",
      "cell_range": "B2:E8",
      "kind": "green",
      "order_id": "N-001",
      "region": "north",
      "amount": 120,
      "status": "open"
    },
    {
      "block": "EastReturns",
      "cell_range": "J2:N5",
      "kind": "green",
      "return_id": "R-001",
      "sku": "SKU-7",
      "qty": 1,
      "reason": "damaged",
      "approved": true
    },
    {
      "block": "SouthPipeline",
      "cell_range": "B12:H18",
      "kind": "green",
      "deal_id": "D-001",
      "owner": "Ada",
      "stage": "qualify",
      "value": 1000,
      "probability": 0.25
    },
    {
      "block": "RedEmptyRanges",
      "cell_range": "A2:A8, B9:H10, F2:H8, J7:N10, A12:A18, I12:N18",
      "kind": "red-empty",
      "note": "These ranges are intentionally blank in the XLSX fixture and should never be selected as tables."
    }
  ]
}
Response
{
  "success": true,
  "spreadsheet_url": "https://www.maybe.ai/docs/spreadsheets/d/6a4510b79ddc9b7553ad0f88?gid=0",
  "spreadsheet_id": "6a4510b79ddc9b7553ad0f88",
  "rows_created": 4,
  "columns_created": 7,
  "shape": "(4, 7)",
  "message": "Created spreadsheet with 4 rows and 7 columns"
}

raw worksheet metadata for generated URL PASS

POST /api/v1/excel/list_worksheets

Request
{
  "uri": "https://www.maybe.ai/docs/spreadsheets/d/6a4510b79ddc9b7553ad0f88?gid=0",
  "include_dimensions": true
}
Response
{
  "success": true,
  "spreadsheet_id": "6a4510b79ddc9b7553ad0f88",
  "spreadsheet_url": "https://www.maybe.ai/docs/spreadsheets/d/6a4510b79ddc9b7553ad0f88",
  "spreadsheet_title": "empty-range-e2e-20260701-130556",
  "document_id": "6a4510b79ddc9b7553ad0f88",
  "engine": "excelize",
  "worksheet_count": 1,
  "total_worksheets": 1,
  "worksheets": [
    {
      "title": "Layout",
      "name": "Layout",
      "worksheet_name": "Layout",
      "sheet_name": "Layout",
      "gid": 0,
      "sheet_id": 0,
      "index": 0,
      "row_count": 5,
      "column_count": 7,
      "worksheet_url": "https://www.maybe.ai/docs/spreadsheets/d/6a4510b79ddc9b7553ad0f88?gid=0",
      "data_engine": "excelize",
      "style_engine": "excelize",
      "sql_engine": "excelize",
      "formula_engine": "excelize",
      "source": {
        "document_id": "6a4510b79ddc9b7553ad0f88",
        "gid": 0,
        "engine": "excelize",
        "logical_gid": 0,
        "logical_name": "Layout"
      },
      "source_info": {
        "document_id": "6a4510b79ddc9b7553ad0f88",
        "gid": 0,
        "engine": "excelize",
        "logical_gid": 0,
        "logical_name": "Layout"
      },
      "dimensions": {
        "rows": 5,
        "columns": 7
      }
    }
  ],
  "message": "Found 1 worksheets",
  "source_info": {
    "document_id": "6a4510b79ddc9b7553ad0f88",
    "engine": "excelize",
    "operation": "list_worksheets",
    "registry_used": true,
    "dimension_source": "upstream_enriched"
  }
}

raw workbook profile for generated URL PASS

POST /api/v1/excel/workbook_profile

Request
{
  "document_id": "6a4510b79ddc9b7553ad0f88",
  "uri": "https://www.maybe.ai/docs/spreadsheets/d/6a4510b79ddc9b7553ad0f88?gid=0",
  "worksheet_name": "Layout"
}
Response
{
  "success": true,
  "document_id": "6a4510b79ddc9b7553ad0f88",
  "cache_status": "miss",
  "profile": {
    "summary": "这个 workbook 只有一张名为 “Layout” 的表,样本行显示字段有 amount、block、cell_range、kind、order_id、region、status。样例把若干逻辑块(如 NorthOrders、EastReturns、SouthPipeline、RedEmptyRanges)映射到具体的单元格范围,并带有类型标记(如 green、red-empty)、金额、订单号、区域和状态,但多行存在空值。由此可推断该表用于描述或检测工作表布局与数据块、追踪订单/退货/销售管道等业务区域以及定位“空范围”或异常区块,关键数据对象为 block 名称、cell_range、kind,以及用于分析的 amount、order_id、region、status。信息有限,具体业务流程和更多指标无法仅凭样本确定。",
    "worksheets": [
      {
        "gid": 0,
        "sheet_name": "Layout",
        "data_engine": "excelize",
        "sample_rows": [
          [
            "amount",
            "block",
            "cell_range",
            "kind",
            "order_id",
            "region",
            "status"
          ],
          [
            "120",
            "NorthOrders",
            "B2:E8",
            "green",
            "N-001",
            "north",
            "open"
          ],
          [
            "",
            "EastReturns",
            "J2:N5",
            "green",
            "",
            "",
            ""
          ],
          [
            "",
            "SouthPipeline",
            "B12:H18",
            "green",
            "",
            "",
            ""
          ],
          [
            "",
            "RedEmptyRanges",
            "A2:A8, B9:H10, F2:H8, J7:N10, A12:A18, I12:N18",
            "red-empty",
            "",
            "",
            ""
          ]
        ]
      }
    ],
    "worksheet_signature": [
      {
        "gid": 0,
        "sheet_name": "Layout"
      }
    ],
    "generated_at": "2026-07-01T13:06:09.613133+00:00"
  }
}

native table metadata endpoint for generated URL FAIL

POST /api/v1/excel/table/metadata

Request
{
  "document_id": "6a4510b79ddc9b7553ad0f88",
  "uri": "https://www.maybe.ai/docs/spreadsheets/d/6a4510b79ddc9b7553ad0f88?gid=0",
  "engine": "excelize",
  "worksheet_name": "Layout"
}
Response
{
  "detail": "Not Found"
}