Skip to content

Commit 61f2753

Browse files
committed
docs: record UYAP Live Pilot 1 seventh real live FAIL + Live Interoperability Fix 7
README pilot callout and DEVELOPMENT_HISTORY milestone updated to seven real live runs all FAIL. Run 7 live-proved Fix 5's modal/document-row detection and, newly, Fix 6's download semantics (fa-arrow-down -> download, download_action_resolved=true for all four rows) - but every row still reported view_action_resolved=false / no_view_action and viewer_pages_opened=0, with both action summaries being bare <i> icons (a document icon and the download arrow) and no eye/view control. Root cause: the logical document-row boundary was too narrow and action introspection counted icon descendants inside the label/download control instead of the owning actionable controls; the separate eye/view control is a sibling outside the selected semantic-label ancestor. Fix 7 makes the logical DocumentRow the smallest single-recognized-label ancestor that contains actual actionable controls (button/a/[role=button]/[onclick]), with a constrained actionable-sibling expansion so the adjacent eye button is captured, bounded by a unique-recognized-label guard (modal/body/html/multi-identity ancestors rejected); an icon is metadata of its owning control, never its own ActionSpec (two icons in one button => one control; one download + one view button => two). Fix-6 positive precedence and Fix-6.1 same-row fallback are reused unchanged. A separate non-clean rerun also showed a pre-opened/stale document list already visible before the entry click; Fix 7 adds preopened_document_list_reusable to reuse a valid same-context open list without re-clicking (hidden/raw-HTML labels never qualify), setting document_entry_state=preopened_document_list_reused. No live PASS is claimed: eye/view semantics have not been resolved live, the viewer has not been reached programmatically, the Fix-6.1 download-required fallback has not run live, no official UDF has downloaded live, raw-UDF extraction is not proven, and the Ihale Bedeli was not extracted; a post-Fix-7 operator rerun is required. Structural core, four SMM moments, conditional_on_trade, Theta_A, TOKI external (5 observed / 0 SMM), and the numerical-search convention are unchanged.
1 parent db22134 commit 61f2753

2 files changed

Lines changed: 49 additions & 0 deletions

File tree

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -263,6 +263,8 @@ The dedicated profile lives **outside** the repository; browser profiles, cookie
263263

264264
> **Additional real viewer observation (before the post-Fix-6 rerun) — `download_required`; Fix 6.1 adds a same-row download fallback.** The operator manually clicked a row-local eye/view action: a real UYAP viewer tab opened at `/pp/viewer.jsp?mimeType=Udf&evrakId=...`, but the document did **not** render — the viewer visibly displayed **"Evrak Görüntülenemedi, Evrağı indirerek Görüntüleyebilirsiniz."**. So reaching the viewer does **not** guarantee content availability: a positively resolved view action has at least two real outcomes — content available, or **download required**. **Fix 6.1** adds a deterministic **viewer-outcome classifier** (`classify_viewer_outcome` → `content_available` / `download_required` / `unsupported_representation` / `viewer_error` / `unknown`) whose `download_required` requires the **combined** viewer-failure + download-instruction semantics (`viewer_download_instruction_detected`, with Turkish folding + constrained mojibake repair) — a bare `indir` or a generic "program indir" instruction is **not** enough. When the viewer reports `download_required`, the collector falls back to the **same** `DocumentRow`'s **positively resolved Fix-6 download action** (never a global/first/Nth/other-row download; if that row has no positively resolved download action it reports `download_required_but_download_action_unresolved` rather than clicking arbitrarily), captures the official artifact via a bounded Playwright download, and preserves it through the existing gitignored artifact store. View-first is preserved (documents are not downloaded unless the viewer says so). Deterministic extraction is attempted **only** for genuinely supported formats (`extraction_supported_for` → `.txt`/`.html` only); a raw `.udf`/`.pdf` download is **preserved but reported unsupported** (`downloaded_artifact_extraction_supported=false`) — a `mimeType=Udf` URL hint alone never implies support, and **no** raw-UDF parser, OCR, or known-truth injection is added. New privacy-safe diagnostics (`viewer_outcome`, `viewer_download_instruction_detected`, `download_fallback_attempted`, `download_fallback_resolved_same_row`, `download_action_resolved`, `download_event_detected`, `downloaded_artifact_extension`/`mime_hint`/`size`, `downloaded_artifact_collected`, `downloaded_artifact_extraction_supported`, `download_fallback_blocking_reason`) carry **no** opaque `evrakId`, full URLs, cookies/tokens, or document text. **No live `PASS` is claimed**: the same-row download fallback has **not** been exercised live, no official UDF download has been captured live, raw-UDF parsing is **not** proven, and the İhale Bedeli was **not** programmatically extracted — a post-Fix-6.1 operator rerun is required.
265265

266+
> **Seventh real live run, `FAIL`; Fix 6 is now live-proven for downloads and Fix 7 corrects the logical row boundary.** On the seventh run Fix 5's modal/document-row detection worked again and **Fix 6 positively resolved the real download icon live** (`fa-arrow-down` → `download`, `download_action_resolved=true` for all four rows) — but every row still reported `view_action_resolved=false` / `row_action_unresolved:no_view_action` and `viewer_pages_opened=0`. The Run-7 action summaries showed **both** reported controls as bare `<i>` icons — a document icon (`icon-docs …`) and the `fa-arrow-down` download arrow — with **no** eye/view control present. Root cause: the logical **document-row boundary was too narrow** and action introspection was counting **icon descendants** inside the label/download control instead of the owning **actionable controls**; the separate eye/view control is a sibling **outside** the selected semantic-label ancestor. **Fix 7** makes the logical `DocumentRow` the smallest single-recognized-label ancestor that contains **actual actionable controls** (`button`/`a`/`[role=button]`/`[onclick]`), with a constrained **actionable-sibling expansion** so the adjacent eye/view button is included, bounded by a **unique-recognized-label guard** (an ancestor spanning two document identities, or `body`/`html`/the whole modal, is rejected). An `<i>`/SVG/`<use>` icon is treated as **semantic metadata of its owning actionable control**, never as its own `ActionSpec`: two icons inside one button now yield **one** actionable control (with `fa-arrow-down` in its `descendant_icon_tokens`), and one download button + one view button yield **two**. Fix-6's positive precedence is reused unchanged (accessibility → descendant icon tokens → href/download → onclick; positive-view only, no positional/Nth/"the other one" inference — an unknown sibling stays unresolved), and Fix-6.1's same-row download fallback now receives the corrected row's **own** download action. A separate non-clean rerun also showed a **pre-opened/stale document list** already visible before the entry click (`pre_click_visible_document_types` already populated, then the control click timed out); Fix 7 adds a narrow guard (`preopened_document_list_reusable`) that, **before** clicking, reuses an already-open **valid** list (supported page state + target file identity present + strict `detect_document_list` container — hidden/raw-HTML labels never qualify) and sets `document_entry_state = preopened_document_list_reused`. New privacy-safe diagnostics: `row_boundary_strategy`, `logical_row_ancestor_kind`, `logical_row_recognized_type_count`, `logical_row_actionable_control_count`, `actionable_control_tags`, `document_entry_state`. **No live `PASS` is claimed**: eye/view semantics have **not** been resolved live, the viewer has **not** been reached programmatically, the Fix-6.1 download-required fallback has **not** run live, no official UDF has downloaded live, raw-UDF extraction is **not** proven, and the İhale Bedeli was **not** extracted — a post-Fix-7 operator rerun is required.
267+
266268
## Optional direct-label validation channel
267269

268270
Separately from the structural evidence above, `sold` retains a **frozen** listing-outcome channel that lets a broker or seller record the *outcome* of a listing and receive simple **non-ML negotiation analytics** in return. This channel is **not** part of the structural model:

docs/DEVELOPMENT_HISTORY.md

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -463,3 +463,50 @@ milestones:
463463
rerun is required. Structural core, four SMM moments, `conditional_on_trade`, `Θ_A`, TOKİ external status
464464
(5 observed / 0 SMM), and the numerical-search convention are unchanged; the pilot remains non-mutating
465465
(genuine count stays 7).
466+
467+
- **UYAP Live Browser Pilot 1 — Live Interoperability Fix 7 (measured seventh live result: `FAIL`)**
468+
chronology: runs 1–6 = **FAIL** → Fixes 1–6 → Fix 6.1 → run 7 = **FAIL** → Fix 7 → operator rerun
469+
pending. Run 7 **live-proved** Fix 5's modal/document-row detection and, newly, **Fix 6's download
470+
semantics**: `document_list_opened=true`, `document_modal_opened=true`, `document_list_container_kind=
471+
listing_modal`, the four rows recognized, `document_actions_observed=8`, and for every row the real
472+
`fa-arrow-down` icon was positively classified `download` (`download_action_detected=true`,
473+
`download_action_resolved=true`). **But every row still reported `view_action_resolved=false` /
474+
`row_action_unresolved:no_view_action` and `viewer_pages_opened=0`.** The Run-7 action summaries showed
475+
**both** reported controls as bare `<i>` icons — the document icon (`icon-docs …`) and the `fa-arrow-down`
476+
download arrow — with **no** eye/view control in the report. The mutation guard passed again (`uyap.json`
477+
unchanged, count `7 -> 7`, SMM unchanged). Root cause: the logical **document-row boundary was too
478+
narrow** and action introspection was operating on **icon descendants** inside the label/download control
479+
rather than the owning **actionable controls**; the separate eye/view control is a sibling **outside** the
480+
selected semantic-label ancestor. **Fix 7 (row boundary / actionable-control ownership only; no
481+
page-state/card/modal/label/viewer/fallback/structural change):** `_semantic_row_for_label` now builds the
482+
single-recognized-label ancestor chain (stopping before any ancestor that spans two document identities)
483+
and selects the **smallest ancestor that contains actual actionable controls** via a new
484+
`_row_actionable_controls` (`button`/`a`/`[role=button]`/`[onclick]`, nesting-flattened, **excluding** bare
485+
`<i>`/`svg` descendants), with a constrained **actionable-sibling expansion** (`row_boundary_strategy` =
486+
`label_actionable_ancestor` / `actionable_sibling_expansion` / `icon_only_ancestor` / `unresolved`) so the
487+
adjacent eye/view button is captured without climbing into another row, `body`/`html`, or the whole modal
488+
(guarded by `logical_row_recognized_type_count == 1`). An icon (`<i>`/SVG/`<use>`) is metadata of its
489+
owning actionable control, never its own `ActionSpec`: two icons inside one button yield **one** actionable
490+
control (with `fa-arrow-down` in its `icon_tokens`/`descendant_icon_tokens`), one download button + one view
491+
button yield **two**, and `action_count` counts actionable controls (not icons/`<i>`/SVG/tokens). Fix-6's
492+
positive precedence and Fix-6.1's same-row download fallback are reused unchanged — the corrected row now
493+
exposes **both** the view and the row's **own** positively-resolved download action; an unknown/positional/
494+
right-most sibling is never inferred as view. A separate non-clean rerun also showed a **pre-opened/stale
495+
document list** already visible before the entry click (`pre_click_visible_document_types` already the four
496+
types, then the card-local control click timed out); Fix 7 adds a narrow guard
497+
`preopened_document_list_reusable(html, url, target_file_id)` that, **before** clicking, reuses an
498+
already-open **valid** list only when the page is a supported doc-entry state, the target file identity is
499+
visible (candidate scoping), and the strict `detect_document_list` container holds (hidden templates /
500+
raw-HTML-only labels never qualify via the existing visibility/container guards), setting
501+
`document_entry_state = preopened_document_list_reused` and flowing straight into the Fix-7 row-boundary
502+
collection (no pre-click→post-click transition required when the list was already open). New privacy-safe
503+
diagnostics: `row_boundary_strategy`, `logical_row_ancestor_kind`, `logical_row_recognized_type_count`,
504+
`logical_row_actionable_control_count`, `actionable_control_tags`, `document_entry_state`. Result-card
505+
`Satış Tutarı` is still never substituted for the explicit İhale Bedeli, and known truth remains
506+
verifier-only. Added 26 offline tests. Full suite: **440 passed** (414 baseline + 26 tests). **No live
507+
`PASS` is claimed: eye/view semantics have not been resolved live, the viewer has not been reached
508+
programmatically, the Fix-6.1 download-required fallback has not run live, no official UDF has downloaded
509+
live, raw-UDF extraction is not proven, and the İhale Bedeli was not extracted** — a post-Fix-7 operator
510+
rerun is required. Structural core, four SMM moments, `conditional_on_trade`, `Θ_A`, TOKİ external status
511+
(5 observed / 0 SMM), and the numerical-search convention are unchanged; the pilot remains non-mutating
512+
(genuine count stays 7).

0 commit comments

Comments
 (0)