Skip to content

Trace Parser Web: report import status and deletion failures accurately - #561

Merged
ahmetziyayildirim merged 2 commits into
fix/traceparser-authenticated-deletionfrom
fix/traceparser-import-status
Nov 5, 2026
Merged

ahmetziyayildirim merged 2 commits into
fix/traceparser-authenticated-deletionfrom
fix/traceparser-import-status

Conversation

@ahmetziyayildirim

Copy link
Copy Markdown
Collaborator

Summary

  • Use supported DAB pagination and shared, bounded import-status reads with minimal projections.
  • Report unavailable status explicitly instead of implying that a parser is running; preserve caller cancellation and escape trace-name filters.
  • Prevent overlapping status polls and update Blazor state through the dispatcher.
  • Place deletion errors above the trace list and extend status, cancellation, rendering and polling regression coverage.

Stacked on #560. Review against the current base for the status-only diff; merge the preceding changes first and retarget as appropriate. This PR does not change SQL index maintenance or the ETL importer.

…rately

Use bounded DAB first queries and shared milestone checks, surface unavailable status, serialize status polling, and show deletion feedback above the trace list.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d
* fix(traceparser-web): restrict authenticated agent destinations

Validate startup and selected-agent identifiers, restrict every authenticated request to the configured Power Platform cloud, and reject redirects before following another destination. Preserve supported agent switching and cover token acquisition boundaries with offline regressions.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

* Trace Parser: add retry-safe imports and coordinated bounded deletion (#564)

* Bound trace deletion batches and report partial progress

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

* Match bounded deletion to the deployed trace schema

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

* Make ETL imports scoped, resumable and receipt-aware

Keep indexes enabled, persist isolated staging and replay checkpoints, coordinate deletion with retained receipts, and enforce authenticated registration and ingestion bounds.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

* Trace Parser: persist background deletion and keep trace lists available (#565)

* Correct deletion receipt/data lock order and test concurrent promotion

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

* Bound deletion batch selection to target thread seeks

Preserve deletion guards and write bounds; validate access-path prerequisites and representative multi-trace scale under the existing service budget.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

* Add durable SQL-backed trace deletion jobs and bounded Function worker

Keep browser-independent progress atomic with bounded deletion, fence scaled workers, and expose requester-scoped controls behind disabled-by-default flags. Validate real SQL leases, cancellation, replay and importer compatibility.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

* Persist deletion eligibility holds before reporting SQL errors

Close the worker-crash gap for ineligible imports and identity/endpoint failures. Record catchable server failure states before returning, retain stale-token fencing, and cover stops without worker follow-up under both isolation modes.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

* Keep trace list available when optional statistics fail

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

* Trace Parser: correct versioned durations, analysis grain and pagination (#566)

* Fix bounded analysis paging and call-grain SQL views

Preserve importer units and prove the 100x mismatch with an independent synthetic ETL oracle. Hold unit conversion for an approved versioned replay and cutover strategy; never rescale historical traces.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

* Bound duration fixture verification and label skipped checks

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

* Version duration imports and normalize only proven analytical units

Preserve v1 replay fingerprints and historical rows; negotiate v2 uploads, add guarded materialized-reader upgrades, and expose uncertain durations without losing paging or valid statistics.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

* Hold new upload admission during coordinated analytical cutover

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

* Preserve old DAB numeric statistics during held web bootstrap

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

* docs(traceparser): clarify coordinated release upgrade order

Document held web bootstrap before SQL changes, baseline-specific migrations, acceptance and release boundaries; remove stale local-only labels.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

* docs(traceparser): expose headless import path and correct legacy guidance (#570)

Co-authored-by: Ahmet Yildirim (from Dev Box) <ahyildir@microsoft.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

* fix(traceparser): pin local DAB tooling and matching schema (#569)

Keep DAB 1.7.83-rc, use its immutable source schema and schema-valid host modes, and align local setup commands with the checked-in manifest.

Co-authored-by: Ahmet Yildirim (from Dev Box) <ahyildir@microsoft.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

* test(traceparser): measure isolated import storage and active log (#568)

Co-authored-by: Ahmet Yildirim (from Dev Box) <ahyildir@microsoft.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

---------

Co-authored-by: Ahmet Yildirim (from Dev Box) <ahyildir@microsoft.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

---------

Co-authored-by: Ahmet Yildirim (from Dev Box) <ahyildir@microsoft.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

---------

Co-authored-by: Ahmet Yildirim (from Dev Box) <ahyildir@microsoft.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d

---------

Co-authored-by: Ahmet Yildirim (from Dev Box) <ahyildir@microsoft.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 7f085bfc-844d-4ec3-9391-b696cf6d0e6d
@ahmetziyayildirim
ahmetziyayildirim merged commit 0049d45 into fix/traceparser-authenticated-deletion Nov 5, 2026
@ahmetziyayildirim
ahmetziyayildirim deleted the fix/traceparser-import-status branch November 5, 2026 11:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants