diff --git a/dashboard.html b/dashboard.html index fcb219d..8a8a619 100644 --- a/dashboard.html +++ b/dashboard.html @@ -364,7 +364,7 @@ } .selectors { display: grid; - grid-template-columns: 1fr 2fr; + grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 2fr); gap: 0.8rem; margin: 1rem 0; } @@ -412,7 +412,7 @@ padding: 0; } .metric-row { - padding: 0.65rem 0; + padding: 0.25rem 0; border-bottom: 1px solid var(--line); } .metric-title { @@ -430,8 +430,8 @@ font-weight: 700; } .bar-track { - height: 0.45rem; - margin: 0.45rem 0; + height: 0.3rem; + margin: 0.2rem 0; border-radius: 4px; background: var(--line); overflow: hidden; @@ -516,33 +516,35 @@ padding-top: 0.8rem; } -.measurement-choices { - display: grid; - grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr)); - gap: 0.65rem; +.model-choice { + box-sizing: border-box; + text-decoration: none; } -.measurement-choice { - border: 1px solid var(--line); - border-radius: 8px; - padding: 0.65rem; +.selectors > label { + min-width: 0; } -.measurement-choice p { - margin: 0.4rem 0 0; +.scale-caption { + margin: 0.4rem 0; } -.measurement-choice button { - width: 100%; - min-height: 2.75rem; - padding: 0.45rem; - font: inherit; - cursor: pointer; - color: var(--fg); - background: var(--bg); - border: 1px solid var(--line); - border-radius: 6px; +.metric-list { + margin: 0.4rem 0; } -.measurement-choice button[aria-pressed="true"] { - border-color: var(--accent); - font-weight: 700; +.model-page header, +.model-page .orchestration-panel, +.model-page .board-nav, +.model-page .board-section:not(.model-section), +.model-page .model-section > summary, +.model-page .model-section > h2, +.model-page #orchestration-pulse { + display: none; +} +.model-page .model-section { + border: 0; + padding: 0; +} +.model-page [data-id="results"] { + border: 0; + margin-top: 0; }

PyAutoPulseProfiling dashboard

Measure. Trace. Compare.

Check your Pulse

-
Full prompt
Last check-in: 2026-10-04 · review date

Active campaigns

CampaignStatusLinks
Setup baseline collection and scientific acceptance
1 task · next step

Specification is draft (autolens_profiling#384); no baseline collection or acceptance authorized. Resolve immutable software and dependency lock, dataset hashes/settings, hardware/threads/load and timing/cache/memory methodology/witnesses; freeze the manifest before separately authorizing collection. Compile probe builder remains unavailable; archived timings are context only.

Reviewed 2026-10-06

Active tasks

Freeze the setup baseline specification, then collect and review evidence

needs-decision · high

Human resolves draft manifest choices and freezes the specification; collection requires separate compute authorization. The report prepares evidence for human scientific review and never promotes baselines. CPU production arrays use ral only; compile capability gap remains open.

needs-decision
Point-source image plane · CPU
1 task · next step

Phases 1–4 shipped; PyAutoLens#764 (extent warning) released in 2026.10.4.1. Next: docs-only autolens_profiling PR writing campaign completion evidence and fixing stale wiki/index lines (#763 'in flight' → #764 merged). RAL leftover folders present; mirror sync unverified.

Reviewed 2026-10-04

Active tasks

active
Point-source image plane · A100
1 task · next step

Phase 0+1 shipped (profiling#353 merged 2026-09-30; wiki stale). Forward-mode gradient NaN is unfixed and live in 2026.10.4.1 but only a Mind draft. Human decisions: issue that bug; authorize the autolens_inference image-plane fit measurement.

Reviewed 2026-10-04

Active tasks

needs-decision
Point-source source plane
2 tasks · next step

Core complete. Nautilus leaf autolens_inference#17 merged 2026-10-02 (wiki still says open). Blackjax parked: gradient-sampler admission not met. Warm-up task awaits the human's option (a)/(b)/(c).

Reviewed 2026-10-04

Active tasks

parked
Cluster PointSolver robustness and performance
2 tasks · next step

Unchanged since 2026-09-27; nothing issued or claimed. Wiki still points at the removed Mind draft (now Pulse tasks/). Pick one bounded phase: observable-overflow invalid-result policy + CI witness, or a representative-data baseline cell.

Reviewed 2026-10-04

Active tasks

active
Interferometer likelihood and streaming
5 tasks · next step

Last CPU cell ran (RAL job 375978_3 COMPLETED 1:11:36, JSON on RAL, not on main) but misses the ≤1e-3 nat CPU/A100 witness: human decision needed. Streaming phases 3–5 shipped; the scaling measurement needs compute authorization. Curvature, memo and FFT tasks unstarted.

Reviewed 2026-10-04

Active tasks

Interferometer decision matrix — fill the last cell (CPU rect 39² at alma_high r5.0) and flip the wiki row to shipped↗

active · normal

Execution 2026-10-04: human decision ACCEPT the 1.59e-3 nat CPU/A100 gap (precedent r3.5 at 1.5e-3). Branch feature/interferometer-decision-matrix-last-cell @93a002a committed locally; ship PARKED at Heart RED (release validation FAILED, stage integrate). Caveat: the A100 row's own A/B shows certified solver = PDIP to 0.0 nat, so the gap may be F/D on older revisions rather than solver. Correction: PyAutoArray#582 first released 2026.9.27.2. Next: ship once Heart clears.

Campaign: interferometer streaming (array-free) vs in-memory — memory and time scaling to 2e8 visibilities↗

active · high

Execution 2026-10-04: branch feature/interferometer-streaming-scaling @4a0ef46 (issue autolens_profiling#368) parked at Heart RED. Laptop CPU 8-thread indicative rows recorded (chunk 65536 to 5e7 vis; in-memory first failure 1e6 under a 10 GB cap; parity 1.2e-9 nats at 5e5; 1e8 skipped). Go/no-go overtaken; recorded as release evidence for 2026.10.4.1. nufft_chunk_size arm hits a second memory wall in transformer.image_from (library candidate, no issue filed).

active
Linear-solver accuracy and cost
1 task · next step

Release half met: PyAutoArray#595 is in 2026.10.2.1 and 2026.10.4.1. RAL mirror sync (HPCPullPyAuto, plus a dependency-floor diff) unverified; phase 3 GPU/vmap parity and timing waits on it.

Reviewed 2026-10-04

Active tasks

Linear-solver programme phase 3: GPU/vmap/A100 timing and parity rows for the solver corpus

blocked · medium

RAL sync SKIPPED 2026-10-04: 180 euclid_dr1 tasks RUNNING on the shared base; mirror at 2026-09-27 state, 16–35 commits behind tag 2026.10.4.1; a sync pulls MAINS and also needs a jax reinstall (Nerves main excludes jax 0.10.2). Next: sync when `squeue -u jnightin -t R` shows no euclid_dr1 jobs on the shared base, or the human accepts the risk.

blocked
Production imaging and likelihood breakdown
3 tasks · next step

No new results since the pin. Over-sampling phase 1: add --instrument production presets to the JAX Delaunay cells (CPU smoke only); PyAutoArray#606 S/N over-sampling helper (in 2026.10.4.1) is new context. Post-certified Blocked-by is stale (resolved 2026-09-27).

Reviewed 2026-10-04

Active tasks

active
Measurement reliability and profiling tools
9 tasks · next step

Only timing_noise_audit is issued (autolens_profiling#362: open, no comments, unassigned); start its audit phase via start_dev. Other nine tasks unchanged and unissued; mass_field superseded confirmed.

Reviewed 2026-10-04

Active tasks

active
PyAutoFit profiling bootstrap
1 task · next step

PyAutoLabs/autofit_profiling does not exist (gh, 2026-10-04). Human decision pending on repo creation; no producer registration until it exists with ported baselines.

Reviewed 2026-10-04

Active tasks

needs-decision
Critical curves and evaluation grids
0 tasks · next step

Release gate met: PyAutoGalaxy#646 first released in 2026.10.4.1. 2026-10-04: /prm of autolens_workspace_test#343 was denied by the auto-mode classifier ("Merge Without Review"); the human runs it outside auto mode to close the evaluation-grid-cap-field task.

Reviewed 2026-10-04

Active tasks

No open tasks.

needs-decision
Certified positive solver
0 tasks · next step

Parked by choice; wiki unchanged since ab1e4fd (2026-09-27). Its three library/workspace Mind drafts remain in Mind. Retain parked; read the project ledger before proposing new work.

Reviewed 2026-10-04

Active tasks

No open tasks.

parked

Open means tracked, not necessarily running. Full ledger ↗

Profiling evidence

Choose a project, dataset and model. Qualification belongs to each recorded setup.

lens · capture, qualification and legacy diagnostics

lens · autolens_profiling

Project autolens_profiling, scope setup-catalogue, read from PyAutoLabs/autolens_profiling dashboard/catalogue.json at 562c4acf; producer revision fef5f28d; generated 2026-10-07T07:00:40Z; policy no-temporal-comparisons. Project dashboard · receipt.

Integrityok
Freshnessfreshness policy unspecified · evidence time unknown (evidence unknown (No common measurement wall-clock across legacy evidence; inspect each record.))
Qualification0/112 records · 0/0 comparisons qualified

Limitations (the producer's own)

" not in page @@ -141,11 +141,10 @@ def test_shared_panel_keeps_owner_prompt_and_all_trusted_destinations(): assert "orchestrationSync" in board.render_html([]) -def test_systematic_fix_remains_separate_from_general_panel(): - import html - +def test_removed_controls_leave_checkin_panel_available(): page = campaigns.render_html(campaigns.load()) - assert html.escape(campaigns.FIX_PROMPT, quote=True) in page - assert 'data-field="fix-prompt"' in page - assert 'class="prompt-copy text"' in page - assert 'data-field="checkin-prompt"' not in page + assert "Fix Profiling Systematically" not in page + assert "Last check-in:" not in page + assert "Choose a project, dataset and model" not in page + assert "Profiling Check In" in page + assert "data-orchestration-direction" in page diff --git a/tests/test_setup_browser.py b/tests/test_setup_browser.py index 630a4cc..0ff0aa1 100644 --- a/tests/test_setup_browser.py +++ b/tests/test_setup_browser.py @@ -65,7 +65,7 @@ def test_legacy_and_failed_capture_remain_accessible(): page = board.render_html( [replace(snapshot, outcome="unavailable", cached=True, errors=["offline"])] ) - assert "capture, qualification and legacy diagnostics" in page + assert "capture, qualification and legacy diagnostics" not in page assert "cached" in page.lower() assert 'data-setup-browser="lens"' in page assert "Original setup evidence (JavaScript disabled)" in page