docs(flows): DoD obligatorio con user-facing surface + abrir issues 0100-0103 (taxonomia, frontmatter migration, dev_console, work dashboard)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-17 00:07:04 +02:00
parent 8357774b86
commit 4164f5adfc
6 changed files with 104 additions and 18 deletions
+29 -4
View File
@@ -13,7 +13,7 @@
#include "core/icons_tabler.h"
#include "core/tokens.h"
#include "core/data_table_types.h"
#include "viz/data_table.h"
#include "data_table/data_table.h"
#include "chrome_scanner.h"
#include "chrome_launcher.h"
@@ -230,7 +230,14 @@ void render_browsers_panel(bool* p_open) {
};
}
data_table::render("##dt_browsers", {tbl}, g_browsers.dt_state, false);
std::vector<data_table::TableEvent> dt_events;
data_table::render("##dt_browsers", {tbl}, g_browsers.dt_state, &dt_events, /*show_chrome=*/false);
for (auto& ev : dt_events) {
if (ev.kind == data_table::TableEventKind::RowDoubleClick &&
ev.row >= 0 && ev.row < static_cast<int>(g_browsers.instances.size())) {
g_session().select_browser(g_browsers.instances[ev.row].port);
}
}
// --- Actions: inline button list per row (no BeginTable — Button renderer not Fase-1) ---
ImGui::Separator();
@@ -445,7 +452,17 @@ void render_tabs_panel(bool* p_open) {
};
}
data_table::render("##dt_tabs", {tbl}, g_tabs_ui.dt_state, false);
std::vector<data_table::TableEvent> dt_events;
data_table::render("##dt_tabs", {tbl}, g_tabs_ui.dt_state, &dt_events, /*show_chrome=*/false);
for (auto& ev : dt_events) {
if (ev.kind == data_table::TableEventKind::RowDoubleClick &&
ev.row >= 0 && ev.row < static_cast<int>(visible_tabs.size())) {
const CdpTab* tp = visible_tabs[ev.row];
if (tp && !tp->ws_url.empty()) {
g_session().select_tab(tp->id, tp->ws_url);
}
}
}
// --- Actions: inline button list per visible row (no BeginTable — Button renderer not Fase-1) ---
ImGui::Separator();
@@ -1301,7 +1318,15 @@ void render_network_panel(bool* p_open) {
cs.duration_error_ms = 5000.0f;
}
data_table::render("##dt_requests", {req_tbl}, g_net_ui.dt_state, true);
std::vector<data_table::TableEvent> dt_events;
data_table::render("##dt_requests", {req_tbl}, g_net_ui.dt_state, &dt_events, /*show_chrome=*/true);
for (auto& ev : dt_events) {
if (ev.kind == data_table::TableEventKind::RowDoubleClick &&
ev.row >= 0 && ev.row < static_cast<int>(filtered.size())) {
g_net_ui.selected_id = filtered[ev.row]->id;
g_net_ui.selected_index = ev.row;
}
}
// Context menu + selection: track clicked row by matching Name col
// (handled inside data_table via row-click; URL copy available via right-click