Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 15 additions & 1 deletion dashboard.html
Original file line number Diff line number Diff line change
Expand Up @@ -485,7 +485,21 @@
border-top: 1px solid var(--line);
padding-top: 0.8rem;
}
</style></head><body><header class="hero"><span class="orb"><svg class="mark" viewBox="0 0 48 48" fill="none" stroke="currentColor" stroke-width="1.3" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="24" cy="25.6" r="18.8"/><path d="M21.2,4.2 L26.8,4.2 M24,4.2 L24,6.8"/><path d="M8.4,27.2 L17.0,27.2 L19.6,22.4 L22.6,35.0 L26.4,14.8 L29.4,27.2 L39.6,27.2"/><g fill="currentColor" stroke="none"><circle cx="26.4" cy="14.8" r="1.5"/><circle cx="24" cy="4.2" r="1.3"/></g></svg></span><h1>PyAuto<b>Pulse</b><span class="kind">Profiling dashboard</span></h1><div class="rule"></div><p class="tag">Measure. Trace. Compare.</p></header><nav class="board-nav" aria-label="Board sections"><a class="board-nav-card" href="#campaigns"><span class="board-nav-label">Active campaigns</span></a><a class="board-nav-card" href="#evidence"><span class="board-nav-label">Profiling evidence</span></a></nav><main><!-- pulse-campaigns:cbea1eba629dc0064077ad5d1af613005d3a58f8a6d17b54b253eb6468e6d379 --><section class="orchestration-panel" id="orchestration-pulse" aria-labelledby="orchestration-pulse-heading" data-orchestration-panel><div class="orchestration-head"><div><h2 class="prompt-heading" id="orchestration-pulse-heading">Check your <strong>Pulse</strong></h2></div><nav class="orchestration-links" aria-label="Work on GitHub"><a href="https://github.com/PyAutoLabs/PyAutoPulse">PyAutoPulse</a><a href="https://github.com/PyAutoLabs/autolens_profiling">autolens_profiling</a></nav></div><div class="orchestration-controls"><div class="orchestration-direction"><label for="orchestration-pulse-direction">Optional direction</label><textarea id="orchestration-pulse-direction" rows="2" data-orchestration-direction placeholder="Focus on a task, project or question"></textarea></div><button type="button" class="orchestration-copy" data-orchestration-copy>Profiling Check In</button></div><details data-orchestration-preview><summary>Read the prompt</summary><label class="sr-only" for="orchestration-pulse-prompt">Exact prompt to copy</label><textarea id="orchestration-pulse-prompt" data-orchestration-prompt readonly rows="8">Use PyAutoPulse as the home for all profiling work in this chat. Read PyAutoPulse/AGENTS.md and CHECKIN.md, then campaigns.yaml, the linked tasks and current project campaign ledgers. Check every open campaign and task for updates since the last check-in: results, jobs, PRs, releases, blockers and the next bounded step. Distinguish verified updates from stale or unavailable evidence; do not infer success from missing data. Give me one concise campaign-by-campaign summary and a proposed priority order. Apply any campaign direction or ideas I supply before or after this prompt; otherwise cover everything. Keep the overall check-in even when I focus one campaign. Update the Pulse ledger with verified facts and dated source links, regenerate the board, and use the repository workflow to persist changes. Use Brain&#x27;s profiling conductor for scientific judgement and project drivers for execution. Do not launch new compute, change defaults or baselines, or bypass a human/release gate merely to check in. Continue managing subsequent profiling requests in this chat. Optional direction: [leave blank, name a campaign, or suggest an idea].
</style></head><body><header class="hero"><span class="orb"><svg class="mark" viewBox="0 0 48 48" fill="none" stroke="currentColor" stroke-width="1.3" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="24" cy="25.6" r="18.8"/><path d="M21.2,4.2 L26.8,4.2 M24,4.2 L24,6.8"/><path d="M8.4,27.2 L17.0,27.2 L19.6,22.4 L22.6,35.0 L26.4,14.8 L29.4,27.2 L39.6,27.2"/><g fill="currentColor" stroke="none"><circle cx="26.4" cy="14.8" r="1.5"/><circle cx="24" cy="4.2" r="1.3"/></g></svg></span><h1>PyAuto<b>Pulse</b><span class="kind">Profiling dashboard</span></h1><div class="rule"></div><p class="tag">Measure. Trace. Compare.</p></header><nav class="board-nav" aria-label="Board sections"><a class="board-nav-card" href="#campaigns"><span class="board-nav-label">Active campaigns</span></a><a class="board-nav-card" href="#evidence"><span class="board-nav-label">Profiling evidence</span></a></nav><main><!-- pulse-campaigns:cbea1eba629dc0064077ad5d1af613005d3a58f8a6d17b54b253eb6468e6d379 --><section class="orchestration-panel" id="orchestration-pulse" aria-labelledby="orchestration-pulse-heading" data-orchestration-panel><div class="orchestration-head"><div><h2 class="prompt-heading" id="orchestration-pulse-heading">Check your <strong>Pulse</strong></h2></div><nav class="orchestration-links" aria-label="Work on GitHub"><a href="https://github.com/PyAutoLabs/PyAutoPulse">PyAutoPulse</a><a href="https://github.com/PyAutoLabs/autolens_profiling">autolens_profiling</a></nav></div><div class="orchestration-controls"><div class="orchestration-direction"><label for="orchestration-pulse-direction">Optional direction</label><textarea id="orchestration-pulse-direction" rows="2" data-orchestration-direction placeholder="Focus on a task, project or question"></textarea></div><button type="button" class="orchestration-copy" data-orchestration-copy>Profiling Check In</button></div><details data-orchestration-preview><summary>Read the prompt</summary><label class="sr-only" for="orchestration-pulse-prompt">Exact prompt to copy</label><textarea id="orchestration-pulse-prompt" data-orchestration-prompt readonly rows="8">Use PyAutoPulse as the home for profiling work in this ongoing chat. Read PyAutoPulse/AGENTS.md and CHECKIN.md, then the campaign ledger, relevant tasks and registered project evidence. Use Brain’s profiling conductor for profiling analysis and planning, and project-owned drivers for execution.

When I give no particular direction, review every open campaign and task for changes since the last check-in: measurements, jobs, PRs, releases, blockers and recorded next steps. Give me a concise campaign-by-campaign summary and a proposed priority order. Distinguish verified updates from stale, missing or unavailable evidence.

When I name a campaign, measurement, slowdown or idea, make that the main focus. Help me understand a timing result, investigate a regression, compare compatible measurements, identify missing evidence, design an experiment or develop a new campaign. Bring in related work where it affects the question; do not repeat the full campaign review on every follow-up.

Make comparisons explicit about hardware, software versions, datasets, model configuration, precision and measurement method. Keep compilation and execution costs separate. Identify incompatible or incomplete comparisons rather than presenting them as evidence of improvement or regression.

Discuss proposed experiments with me, explaining what each would establish and the resources it needs. Help turn agreed direction into concrete campaign tasks. Keep profiling intent and pending domain work in Pulse, execution and measurements in the project repositories, and bounded implementation work in Mind.

Update the Pulse ledger with verified facts and dated source links, regenerate the board and persist changes through the repository workflow. Keep review dates separate from measurement freshness. Do not infer campaign completion or scientific acceptance from a successful job or a faster timing alone.

Carry clearly authorized work through the appropriate procedure, retaining decisions and approvals already given in this conversation. Launch compute or change defaults, baselines or campaign direction only when authorized; a general check-in does not authorize those actions.

After taking action, report what changed, what the evidence supports and what remains unresolved. Continue subsequent profiling work in this chat and stop at the session deliverable without scheduling background follow-up.

Work on GitHub:
- PyAutoPulse: https://github.com/PyAutoLabs/PyAutoPulse
Expand Down
16 changes: 15 additions & 1 deletion dashboard.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,21 @@
<details><summary>Full check-in prompt</summary>

```text
Use PyAutoPulse as the home for all profiling work in this chat. Read PyAutoPulse/AGENTS.md and CHECKIN.md, then campaigns.yaml, the linked tasks and current project campaign ledgers. Check every open campaign and task for updates since the last check-in: results, jobs, PRs, releases, blockers and the next bounded step. Distinguish verified updates from stale or unavailable evidence; do not infer success from missing data. Give me one concise campaign-by-campaign summary and a proposed priority order. Apply any campaign direction or ideas I supply before or after this prompt; otherwise cover everything. Keep the overall check-in even when I focus one campaign. Update the Pulse ledger with verified facts and dated source links, regenerate the board, and use the repository workflow to persist changes. Use Brain's profiling conductor for scientific judgement and project drivers for execution. Do not launch new compute, change defaults or baselines, or bypass a human/release gate merely to check in. Continue managing subsequent profiling requests in this chat. Optional direction: [leave blank, name a campaign, or suggest an idea].
Use PyAutoPulse as the home for profiling work in this ongoing chat. Read PyAutoPulse/AGENTS.md and CHECKIN.md, then the campaign ledger, relevant tasks and registered project evidence. Use Brain’s profiling conductor for profiling analysis and planning, and project-owned drivers for execution.

When I give no particular direction, review every open campaign and task for changes since the last check-in: measurements, jobs, PRs, releases, blockers and recorded next steps. Give me a concise campaign-by-campaign summary and a proposed priority order. Distinguish verified updates from stale, missing or unavailable evidence.

When I name a campaign, measurement, slowdown or idea, make that the main focus. Help me understand a timing result, investigate a regression, compare compatible measurements, identify missing evidence, design an experiment or develop a new campaign. Bring in related work where it affects the question; do not repeat the full campaign review on every follow-up.

Make comparisons explicit about hardware, software versions, datasets, model configuration, precision and measurement method. Keep compilation and execution costs separate. Identify incompatible or incomplete comparisons rather than presenting them as evidence of improvement or regression.

Discuss proposed experiments with me, explaining what each would establish and the resources it needs. Help turn agreed direction into concrete campaign tasks. Keep profiling intent and pending domain work in Pulse, execution and measurements in the project repositories, and bounded implementation work in Mind.

Update the Pulse ledger with verified facts and dated source links, regenerate the board and persist changes through the repository workflow. Keep review dates separate from measurement freshness. Do not infer campaign completion or scientific acceptance from a successful job or a faster timing alone.

Carry clearly authorized work through the appropriate procedure, retaining decisions and approvals already given in this conversation. Launch compute or change defaults, baselines or campaign direction only when authorized; a general check-in does not authorize those actions.

After taking action, report what changed, what the evidence supports and what remains unresolved. Continue subsequent profiling work in this chat and stop at the session deliverable without scheduling background follow-up.
```

</details>
Expand Down
35 changes: 34 additions & 1 deletion pulse/campaigns.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,40 @@
"superseded",
}
CLOSED = {"complete", "superseded"}
PROMPT = """Use PyAutoPulse as the home for all profiling work in this chat. Read PyAutoPulse/AGENTS.md and CHECKIN.md, then campaigns.yaml, the linked tasks and current project campaign ledgers. Check every open campaign and task for updates since the last check-in: results, jobs, PRs, releases, blockers and the next bounded step. Distinguish verified updates from stale or unavailable evidence; do not infer success from missing data. Give me one concise campaign-by-campaign summary and a proposed priority order. Apply any campaign direction or ideas I supply before or after this prompt; otherwise cover everything. Keep the overall check-in even when I focus one campaign. Update the Pulse ledger with verified facts and dated source links, regenerate the board, and use the repository workflow to persist changes. Use Brain's profiling conductor for scientific judgement and project drivers for execution. Do not launch new compute, change defaults or baselines, or bypass a human/release gate merely to check in. Continue managing subsequent profiling requests in this chat. Optional direction: [leave blank, name a campaign, or suggest an idea]."""
PROMPT = (
"Use PyAutoPulse as the home for profiling work in this ongoing chat. Read "
"PyAutoPulse/AGENTS.md and CHECKIN.md, then the campaign ledger, relevant tasks and "
"registered project evidence. Use Brain’s profiling conductor for profiling analysis and "
"planning, and project-owned drivers for execution.\n\n"
"When I give no particular direction, review every open campaign and task for changes "
"since the last check-in: measurements, jobs, PRs, releases, blockers and recorded next "
"steps. Give me a concise campaign-by-campaign summary and a proposed priority order. "
"Distinguish verified updates from stale, missing or unavailable evidence.\n\n"
"When I name a campaign, measurement, slowdown or idea, make that the main focus. Help me "
"understand a timing result, investigate a regression, compare compatible measurements, "
"identify missing evidence, design an experiment or develop a new campaign. Bring in "
"related work where it affects the question; do not repeat the full campaign review on "
"every follow-up.\n\n"
"Make comparisons explicit about hardware, software versions, datasets, model "
"configuration, precision and measurement method. Keep compilation and execution costs "
"separate. Identify incompatible or incomplete comparisons rather than presenting them as "
"evidence of improvement or regression.\n\n"
"Discuss proposed experiments with me, explaining what each would establish and the "
"resources it needs. Help turn agreed direction into concrete campaign tasks. Keep "
"profiling intent and pending domain work in Pulse, execution and measurements in the "
"project repositories, and bounded implementation work in Mind.\n\n"
"Update the Pulse ledger with verified facts and dated source links, regenerate the board "
"and persist changes through the repository workflow. Keep review dates separate from "
"measurement freshness. Do not infer campaign completion or scientific acceptance from a "
"successful job or a faster timing alone.\n\n"
"Carry clearly authorized work through the appropriate procedure, retaining decisions and "
"approvals already given in this conversation. Launch compute or change defaults, "
"baselines or campaign direction only when authorized; a general check-in does not "
"authorize those actions.\n\n"
"After taking action, report what changed, what the evidence supports and what remains "
"unresolved. Continue subsequent profiling work in this chat and stop at the session "
"deliverable without scheduling background follow-up."
)


class CampaignError(ValueError):
Expand Down
Loading