<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>EmberScope daily work diary</title>
    <link>https://emberscope.symmachus.org/diary.html</link>
    <description>Daily notes on EmberScope optical-design automation progress.</description>
    <language>en-AU</language>
    <lastBuildDate>Mon, 13 Jul 2026 01:08:30 +1000</lastBuildDate>
    <item>
      <title>2026-07-13 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-07-13</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-07-13</guid>
      <pubDate>Mon, 13 Jul 2026 01:08:30 +1000</pubDate>
      <description>Added the 13-field trace pattern and measured flat-sensor acceptance quantities needed for survey optimization.</description>
      <content:encoded><![CDATA[<h2>RFS-043 two-axis field acceptance metrics</h2>
<p>The four-mirror optimizer now traces the recorded 13-point detector pattern in both field axes for the 25 mm and 50 mm survey targets while retaining the legacy five-field Y-axis regression. Each field row reports unobscured throughput, detector-plane spot and ensquared-energy metrics, best-focus offset along the shared flat sensor normal, and chief-ray incidence at every reflective surface. A least-squares plate-scale fit now reports RMS and maximum centroid distortion. The unchanged legacy evaluation still measures 195.2 mm EFL, a 149.6 mm package, and 53.9-105.6 um RMS. As a plumbing baseline rather than a candidate prescription, applying the 25 mm target to the old geometry traced all X-axis samples but returned zero throughput at the Y edges and four corners; RFS-044 must therefore scale the optimizer bounds and starting geometries before a preliminary survey run.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/optics-restart-targets.html">Optics restart targets</a></li>
<li><a href="https://emberscope.symmachus.org/project-review.html">Project review</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-07-12 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-07-12</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-07-12</guid>
      <pubDate>Sun, 12 Jul 2026 01:14:33 +1000</pubDate>
      <description>Parameterized the prescription optimizer for the legacy spotter and two survey-scale optical targets without changing the committed design.</description>
      <content:encoded><![CDATA[<h2>RFS-042 selectable optical targets</h2>
<p>The four-mirror optimizer now carries explicit optical targets for the 200 mm F/5 legacy spotter, the 25 mm F/3.2 wide survey branch, and the 50 mm F/4 finer survey fallback. Each target controls entrance aperture, field sampling, plate-scale merit, diffraction reference, report labels, and its own collision-safe design and metrics paths. The legacy evaluate-only result remains unchanged at 195.2 mm measured EFL, a 149.6 mm package envelope, and 53.9-105.6 um RMS spot radii across the five sampled fields. This is optimizer plumbing rather than a new accepted prescription; the next queue items add two-axis field evidence and scale the optimizer bounds before the labelled-preliminary survey traces run.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/optics-restart-targets.html">Optics restart targets</a></li>
<li><a href="https://emberscope.symmachus.org/project-review.html">Project review</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-07-06 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-07-06</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-07-06</guid>
      <pubDate>Mon, 06 Jul 2026 01:05:25 +1000</pubDate>
      <description>Added the COTS-versus-custom optics regime finding for RFS-041 and kept it visible through the diary feed.</description>
      <content:encoded><![CDATA[<h2>RFS-041 COTS-versus-custom regime finding</h2>
<p>Added <code>optics-regime-decision-2026-07-04.md</code>, using only committed evidence from the F-number/aperture trade, the COTS fleet screen, the fleet budget note, and the 2026-07-05 source-note defaults. The finding separates the 120 m survey fleet from the custom reflective research problem: a 25 mm survey lens has only a 7.8-8 mm entrance aperture at F/3.2, so the 150 mm package envelope is not the reason to build custom folded optics there. The recommended split is COTS-first for the 120 m survey fleet, with custom reflective work re-aimed at the altitude-waiver fine-GSD and 200 mm cued-spotter regimes.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/cots-fleet-screen.html">COTS fleet screen</a></li>
<li><a href="https://emberscope.symmachus.org/optics-restart-targets.html">Optics restart targets</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-07-05 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-07-05</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-07-05</guid>
      <pubDate>Sun, 05 Jul 2026 19:03:58 +1000</pubDate>
      <description>Replaced the deprecated radiometry integration call and re-ran the gates; requirements defaults recorded by Greg in the interactive session.</description>
      <content:encoded><![CDATA[<h2>RFS-038 radiometry warning cleanup</h2>
<p>Replaced the small-hot-target radiometry model&#x27;s deprecated NumPy band-integration call with the current trapezoid API. The acceptance run completed with <code>237 passed</code>, no trapz deprecation warnings summary, <code>ruff check .</code> clean, and <code>mypy</code> reporting no issues.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/radiometry-model.html">Radiometry model</a></li>
</ul>
<h2>RFS-054 requirements defaults recorded (interactive session)</h2>
<p>Greg chose the default assumptions in an interactive session, closing the requirements interview provisionally for the research study: 500 ha hourly planning case, 120 m cap binding with the altitude waiver kept as a documented variant, COTS-first survey branch with custom reflective optics continuing as the research focus, and the 2 kg airframe class accepted. Recorded as <code>rfs-011-source-note-2026-07-05.md</code> with the ledger contract&#x27;s trace-unlock fields (selected target <code>wide_survey_3cm_char</code>). RFS-011 and RFS-054 close provisionally with an explicit supersession rule for any future Dani/RFS answer, the RFS-019 preliminary traces are unblocked under the new label, and RFS-062 will ingest the note into the generated ledger and register pages.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/requirements-answer-pack.html">Requirements answer pack</a></li>
<li><a href="https://emberscope.symmachus.org/requirements-evidence-ledger.html">Evidence ledger</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-07-04 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-07-04</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-07-04</guid>
      <pubDate>Sat, 04 Jul 2026 01:06:21 +1000</pubDate>
      <description>Added the RFS-019 source-evidence readiness gate before trace execution.</description>
      <content:encoded><![CDATA[<h2>RFS-019 source evidence readiness gate</h2>
<p>Added a stakeholder-visible source-evidence readiness gate to the optics restart register. The page now derives the exact trace-unlock fields from the RFS-011 evidence ledger contract, keeps all required source-note fields marked not received, and preserves the no-vignetting, detector-plane, fold-angle, and flat-image gates before any wide-survey trace can claim acceptance.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/optics-restart-targets.html">Optics restart targets</a></li>
<li><a href="https://emberscope.symmachus.org/requirements-evidence-ledger.html">Evidence ledger</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-07-03 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-07-03</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-07-03</guid>
      <pubDate>Fri, 03 Jul 2026 01:06:57 +1000</pubDate>
      <description>Published source-note record contract for RFS-011 evidence intake.</description>
      <content:encoded><![CDATA[<h2>RFS-011 source-note contract</h2>
<p>Added a source-note record contract to the RFS-011 evidence intake ledger so stakeholder answers, vendor quote bundles, and validation samples have the exact fields needed before requirements closeout or RFS-019 trace acceptance can use them.</p>
<ul>
<li>The contract names the source note date, source artifact, sign-off authority, target area, altitude basis, payload branch, airframe class, selected optics target key, quote evidence bundle, and validation sample bundle.</li>
<li>The public ledger and JSON now state the validation check and downstream use for each field.</li>
<li>RFS-011 remains open because no stakeholder or vendor evidence has been recorded.</li>
</ul>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/requirements-evidence-ledger.html">Evidence ledger</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/requirements-evidence-ledger.json">Evidence ledger JSON</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-07-02 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-07-02</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-07-02</guid>
      <pubDate>Thu, 02 Jul 2026 01:05:00 +1000</pubDate>
      <description>Published source-evidence intake checklist for trace execution.</description>
      <content:encoded><![CDATA[<h2>RFS-019 source evidence intake</h2>
<p>Added a source-evidence intake checklist to the optics restart register so the first wide-survey trace has an explicit unblock path before any measured acceptance artifact is written.</p>
<ul>
<li>The checklist names the required RFS-011 ledger records: target area, altitude basis, payload branch, airframe class, and sign-off authority.</li>
<li>Each row now states what source field must be captured, what counts as an acceptance record, what remains blocked if it is missing, and how it affects the reserved trace packet.</li>
<li>The public optics restart page and machine-readable JSON expose the intake checklist beside the restart gates and trace validation rules.</li>
</ul>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/optics-restart-targets.html">Optics restart targets</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/optics-restart-targets.json">Source intake JSON</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-07-01 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-07-01</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-07-01</guid>
      <pubDate>Wed, 01 Jul 2026 01:05:00 +1000</pubDate>
      <description>Published explicit validator rules for future trace-acceptance evidence.</description>
      <content:encoded><![CDATA[<h2>RFS-019 trace validation rules</h2>
<p>Added trace-acceptance validation rules to the optics restart register so a future measured trace artifact has explicit rejection checks before it can count as RFS-019 acceptance evidence.</p>
<ul>
<li>The new rules cover selected-target source evidence, stakeholder source-note date, 13 field samples, ray-count thresholds, &gt;=0.90 unobscured throughput, clipping-surface reporting, detector-plane metrics, angle/flat-image evidence, and verdict consistency.</li>
<li>The expected wide-survey trace artifact remains intentionally absent until RFS-011 source evidence unlocks execution.</li>
<li>The public optics restart page and machine-readable JSON now expose the validator rules beside the artifact contract.</li>
</ul>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/optics-restart-targets.html">Optics restart targets</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/optics-restart-targets.json">Validation rules JSON</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-30 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-30</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-30</guid>
      <pubDate>Tue, 30 Jun 2026 01:05:00 +1000</pubDate>
      <description>Published trace-acceptance artifact contract for the survey-prescription restart.</description>
      <content:encoded><![CDATA[<h2>RFS-019 trace acceptance contract</h2>
<p>Added a trace-acceptance artifact contract to the optics restart register so future measured trace JSON cannot claim acceptance with only a pass label.</p>
<ul>
<li>The first expected artifact is assets/rfs/wide_survey_3cm_char_trace_acceptance_2026-06-30.json, but it remains intentionally absent until RFS-011 source evidence unlocks execution.</li>
<li>The contract requires source-evidence, field and pupil sampling, no-vignetting, detector-plane, angle, flat-image, and verdict/fallback sections.</li>
<li>The public optics restart page and machine-readable JSON now expose the contract alongside the trace run status ledger.</li>
</ul>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/optics-restart-targets.html">Optics restart targets</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/optics-restart-targets.json">Trace contract JSON</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-29 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-29</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-29</guid>
      <pubDate>Mon, 29 Jun 2026 01:05:00 +1000</pubDate>
      <description>Published trace-run status for the survey-prescription restart.</description>
      <content:encoded><![CDATA[<h2>RFS-019 trace status ledger</h2>
<p>Added a trace run status ledger to the optics restart register so each reserved trace-acceptance artifact now has an explicit execution-allowed flag, evidence gate, absent-artifact status, acceptance verdict, and next record.</p>
<ul>
<li>The 25 mm F/3.2 wide-survey trace remains blocked before execution until RFS-011 records the stakeholder source evidence.</li>
<li>The 50 mm fallback, weak-edge stress row, legacy spotter reference, and 1000 ha hold now carry explicit non-claim statuses so the site cannot imply measured acceptance before a trace exists.</li>
<li>The JSON payload and public page now expose the absent acceptance-artifact state alongside the existing field, pupil, throughput, detector-plane, fold-angle, and flat-image gates.</li>
</ul>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/optics-restart-targets.html">Optics restart targets</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/optics-restart-targets.json">Trace status JSON</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-28 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-28</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-28</guid>
      <pubDate>Sun, 28 Jun 2026 01:05:59 +1000</pubDate>
      <description>Published numeric trace packet for the survey-prescription restart.</description>
      <content:encoded><![CDATA[<h2>RFS-019 trace execution packet</h2>
<p>Added a trace execution packet to the optics restart register so the first measured RFS-019 survey trace has named output stems and numeric acceptance gates before any custom prescription work resumes.</p>
<ul>
<li>The wide-survey 25 mm F/3.2 packet remains armed but blocked on RFS-011 source evidence.</li>
<li>The packet now records the exact required inputs, minimum 13 field samples, 17 rays per field, 221 total rays, &gt;=90% unobscured throughput, detector-plane RMS and ensquared-energy reporting, fold/incidence-angle reporting, and flat-image evidence requirements.</li>
<li>The 50 mm fallback, weak-edge stress row, legacy spotter reference, and 1000 ha hold now carry the same execution contract so the next optimizer pass cannot quietly reuse the old spotter-scale prescription.</li>
</ul>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/optics-restart-targets.html">Optics restart targets</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/optics-restart-targets.json">Trace packet JSON</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-27 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-27</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-27</guid>
      <pubDate>Sat, 27 Jun 2026 01:05:34 +1000</pubDate>
      <description>Added deterministic samples for first optics trace.</description>
      <content:encoded><![CDATA[<h2>RFS-019 trace input bundle</h2>
<p>Extended the optics restart register with a deterministic trace input bundle for the first survey trace, 50 mm fallback, weak-edge stress metric, legacy spotter reference, and 1000 ha mission hold. The public artifact now fixes the field samples, pupil rings, minimum ray counts, required measured outputs, pass gates, and fallback triggers that the next RFS-019 ray trace must report before custom prescription work can proceed.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/optics-restart-targets.html">Optics restart targets</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/optics-restart-targets.json">Restart JSON</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-26 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-26</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-26</guid>
      <pubDate>Fri, 26 Jun 2026 01:04:27 +1000</pubDate>
      <description>Added measured pass/fallback gates for the optics restart trace.</description>
      <content:encoded><![CDATA[<h2>RFS-019 trace acceptance matrix</h2>
<p>Extended the optics restart register with a trace acceptance matrix for the first survey trace, 50 mm fallback, weak-edge stress metric, legacy spotter reference, and 1000 ha mission hold. The public artifact now states the measured evidence needed before a custom prescription can proceed: per-field unobscured throughput, detector-plane RMS, ensquared energy, chief-ray/fold angles, and image-plane curvature, while keeping RFS-019 conditional on RFS-011 source evidence.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/optics-restart-targets.html">Optics restart targets</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/optics-restart-targets.json">Restart JSON</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-25 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-25</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-25</guid>
      <pubDate>Thu, 25 Jun 2026 01:04:34 +1000</pubDate>
      <description>Added pre-trace feasibility gates for optics restart.</description>
      <content:encoded><![CDATA[<h2>RFS-019 pre-trace feasibility screen</h2>
<p>Extended the optics restart register with a pre-trace feasibility screen for the conditional survey start, fallback, weak-edge stress row, legacy spotter reference, and 1000 ha mission hold. The public artifact now separates gross entrance-aperture fit from the required ray-trace evidence: per-field unobscured throughput, detector-plane RMS and ensquared energy, chief-ray/fold angles, and image-plane curvature.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/optics-restart-targets.html">Optics restart targets</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/optics-restart-targets.json">Restart JSON</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-24 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-24</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-24</guid>
      <pubDate>Wed, 24 Jun 2026 01:08:55 +1000</pubDate>
      <description>Added optimizer-ready optics restart bundle.</description>
      <content:encoded><![CDATA[<h2>RFS-019 optimizer start bundle</h2>
<p>Extended the optics restart target register from conditional targets into optimizer-ready start rows. The public artifact now separates the 25 mm F/3.2 wide-survey start, 50 mm fallback, weak-edge stress metric, legacy 200 mm blocked reference, and 1000 ha mission hold while carrying the no-vignetting, detector-plane, fold-angle, and flat-image gates into the next prescription pass.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/optics-restart-targets.html">Optics restart targets</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/optics-restart-targets.json">Start bundle JSON</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-22 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-22</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-22</guid>
      <pubDate>Mon, 22 Jun 2026 00:00:00 +1000</pubDate>
      <description>Added an evidence intake ledger for RFS-011 closeout.</description>
      <content:encoded><![CDATA[<h2>RFS-011 evidence intake ledger</h2>
<p>Added a public ledger that combines the stakeholder answer pack and COTS quote</p>
<p>comparison register into one intake status surface. The ledger keeps every</p>
<p>stakeholder, vendor, sample-bundle, and sign-off row marked as not received so</p>
<p>the site distinguishes planning artifacts from actual closeout evidence.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/requirements-evidence-ledger.html">Evidence intake ledger</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/requirements-evidence-ledger.json">Evidence intake ledger JSON</a></li>
<li><a href="https://emberscope.symmachus.org/cots-quote-comparison.html">COTS quote comparison</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-21 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-21</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-21</guid>
      <pubDate>Sun, 21 Jun 2026 00:00:00 +1000</pubDate>
      <description>Added a scorecard for comparing returned COTS quotes.</description>
      <content:encoded><![CDATA[<h2>RFS-011 COTS quote comparison</h2>
<p>Added a public quote comparison register that turns the 20 June COTS quote</p>
<p>packet into hard-stop gates, weighted scoring, branch decision rules, and</p>
<p>meeting record fields. The item remains open until a returned quote is scored</p>
<p>with source evidence and stakeholder sign-off.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/cots-quote-comparison.html">COTS quote comparison</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/cots-quote-comparison.json">COTS quote comparison JSON</a></li>
<li><a href="https://emberscope.symmachus.org/cots-quote-packet.html">COTS quote packet</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-20 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-20</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-20</guid>
      <pubDate>Sat, 20 Jun 2026 01:10:22 +1000</pubDate>
      <description>Converted the COTS branch into a quote-ready evidence packet.</description>
      <content:encoded><![CDATA[<h2>RFS-011 COTS quote packet</h2>
<p>Added a quote packet that turns the COTS payload screen into vendor evidence fields, candidate quote order, raw/calibration/sample-frame gates, and meeting record fields for RFS-011. The item remains open until stakeholder answers, vendor evidence, and sign-off are recorded.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/cots-quote-packet.html">COTS quote packet</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/cots-quote-packet.json">COTS quote JSON</a></li>
<li><a href="https://emberscope.symmachus.org/requirements-signoff-matrix.html">Requirements sign-off matrix</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-19 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-19</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-19</guid>
      <pubDate>Fri, 19 Jun 2026 01:07:24 +1000</pubDate>
      <description>Mapped RFS-011 answer patterns to closeout and next-action readiness.</description>
      <content:encoded><![CDATA[<h2>RFS-011 sign-off readiness matrix</h2>
<p>Added a public RFS-011 sign-off readiness matrix that converts likely stakeholder answer combinations into next-action gates: closeout-ready, COTS quote first, parallel COTS/custom, custom-first budget tension, stretch-area replan, or baseline reopened. The page keeps RFS-011 open until actual stakeholder answers and sign-off are recorded, but it gives AAO a sharper review artifact for deciding whether requirements closeout, vendor quote work, or RFS-019 prescription restart is justified.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/requirements-signoff-matrix.html">Sign-off readiness matrix</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/requirements-signoff-matrix.json">RFS-011 sign-off JSON</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-18 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-18</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-18</guid>
      <pubDate>Thu, 18 Jun 2026 01:07:17 +1000</pubDate>
      <description>Turned RFS-011 closeout asks into a stakeholder answer pack.</description>
      <content:encoded><![CDATA[<h2>RFS-011 stakeholder answer pack</h2>
<p>Added a public RFS-011 answer pack that turns the remaining requirements</p>
<p>closeout asks into recordable meeting fields. The page gives answer options for</p>
<p>the hourly target area, altitude basis, COTS-versus-custom payload branch,</p>
<p>2 kg-capable airframe acceptance, and sign-off authority, with links back to the</p>
<p>coverage sizing grid, COTS screen, fleet coverage model, mission decision</p>
<p>packet, and closeout checklist.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/requirements-answer-pack.html">Stakeholder answer pack</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/requirements-answer-pack.json">RFS-011 answer JSON</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-17 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-17</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-17</guid>
      <pubDate>Wed, 17 Jun 2026 01:09:43 +1000</pubDate>
      <description>Separated locked requirements from remaining RFS stakeholder asks.</description>
      <content:encoded><![CDATA[<h2>RFS-011 requirements closeout checklist</h2>
<p>Added a stakeholder-facing RFS-011 closeout checklist that separates locked decisions from the remaining requirements blockers. The page carries forward the area-survey role, 3 cm smouldering-char target, 640-class LWIR branch, and 150 mm / 2 kg / AUD 100k boundaries, while keeping the item open for target area, altitude authorisation, COTS-vs-custom branch, airframe acceptance, and explicit stakeholder sign-off.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/requirements-closeout.html">Requirements closeout</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/requirements-closeout.json">RFS-011 JSON</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-16 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-16</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-16</guid>
      <pubDate>Tue, 16 Jun 2026 01:14:02 +1000</pubDate>
      <description>Added a COTS payload screen for the RFS-011 fleet decision.</description>
      <content:encoded><![CDATA[<h2>COTS payload screen</h2>
<p>Added a generated COTS payload screen for RFS-011. The new artifact reruns the COTS/custom question through the F-number-aware 3 cm smouldering-char model instead of relying on the older sampling-only comparison.</p>
<p>The practical readout is more nuanced: fast 640-class COTS paths can clear the first-order SNR gate at 120 m, while Lepton-class modules remain below the primary target gate. That keeps RFS-011 open, but moves the COTS-vs-custom decision to exact product evidence: raw/pre-AGC access, calibration state, mass, power, platform lock-in, false-positive performance, and quoted unit cost.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/cots-fleet-screen.html">COTS payload screen</a></li>
<li><a href="https://emberscope.symmachus.org/coverage-sizing-grid.html">Coverage sizing grid</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-15 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-15</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-15</guid>
      <pubDate>Mon, 15 Jun 2026 01:08:38 +1000</pubDate>
      <description>Added a coverage-area sizing grid for the RFS-011 mission decision.</description>
      <content:encoded><![CDATA[<h2>Coverage sizing grid</h2>
<p>Added a generated coverage-area sizing grid for RFS-011. The new artifact converts the per-drone fixed-wing coverage model into target-area, payload-count, and max-unit-cost thresholds against the AUD 100k payload budget.</p>
<p>The practical readout is now explicit: a 500 ha hourly block needs three payloads at the 120 m cap, or two payloads if an altitude waiver is available; a 1000 ha hourly block needs three payloads even with the waiver and therefore pushes below the current custom recurring-cost floor. That keeps RFS-011 open, but narrows the stakeholder decision to desired area, altitude authorisation, and whether the fleet should use cheaper COTS/camera-only payloads or a larger custom-optics budget.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/coverage-sizing-grid.html">Coverage sizing grid</a></li>
<li><a href="https://emberscope.symmachus.org/fleet-coverage.html">Payload capability and coverage</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-14 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-14</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-14</guid>
      <pubDate>Sun, 14 Jun 2026 16:00:00 +1000</pubDate>
      <description>Built the F-number / aperture trade study that resolves the binding open item on the four-mirror prescription, adding the NETD~F#^2 and PSF energy-concentration physics the committed radiometry model omitted; the headline finding is that the F/5 worry is regime-dependent and the committed 200 mm plate scale is a spotter, not a survey camera.</description>
      <content:encoded><![CDATA[<h2>F-number / aperture trade study</h2>
<p>The committed four-mirror design of record passes every geometric gate but runs at F/5.0, and nothing in the codebase could say whether that was acceptable for detection: the committed small-hot-target radiometry model holds NETD fixed and ignores the point-spread function. Both of those are exactly the terms that move with F-number. Added <code>scripts/rfs_fnumber_aperture_trade.py</code>, which extends the committed Planck/atmosphere/fill primitives with (1) NETD scaling as F#^2 from a datasheet f/1.0 reference, and (2) the diffraction PSF single-pixel/2x2 ensquared-energy fraction, then sweeps the (EFL, F#) plane.</p>
<p>Findings:</p>
<p>1. The F/5 penalty is regime-dependent. At the committed 200 mm EFL the ground sample distance is ~1 cm, so the targets overfill the pixel (fill = 1) and the PSF-concentration penalty is masked - even F/5 clears the gate. That is why the geometric design looked fine.</p>
<p>2. The deeper problem is the plate scale, not the F-number. A 200 mm EFL / 3 deg field gives only a ~7 m swath (~380 min single-drone revisit on a 100 ha block) - a spotting scope, not the area-survey camera the one-hour-revisit mission needs.</p>
<p>3. In the wide-field survey regime (e.g. EFL 50 mm, ~26 m swath) the targets go sub-pixel and the trade comes alive: a 3 cm smouldering char at 430 K falls to marginal SNR at F/5 and needs ~F/3.2 or faster; a 1 cm 700 K ember needs ~F/3.2.</p>
<p>4. In that survey regime the aperture is only a few mm, so the 150 mm envelope does not bind F# - a fast LWIR system (F/1.6-F/2) is geometrically easy and high-margin. The real cost of a fast short-EFL reflective design moves to off-axis aberration control and stray light.</p>
<p>5. The faintest class (1 cm ~330 K warm edge) drives the box from both sides: it needs a finer survey GSD (EFL ~50 mm) AND fast optics (advisory only at ~F/1.6), and disappears at the coverage-greedy plate scale. Whether that class must be detected is a mission decision that tightens both EFL and F#.</p>
<p>This is a first-order radiometry trade, not a physical-optics MTF model, stray-light analysis, or tolerance budget. It sets the (EFL, F#) target the next RFS-019 prescription should be optimized toward and flags that the survey-vs-spotter plate scale needs an explicit mission decision before more optical-design effort is spent on the 200 mm spotter geometry.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/assets/rfs/prescription/four_mirror_optimized_prescription_2026-06-10.csv">Optimized prescription CSV</a></li>
<li><a href="https://emberscope.symmachus.org/radiometry-model.html">Radiometry model</a></li>
</ul>
<h2>Mission decision packet</h2>
<p>Converted the F-number / aperture finding into a stakeholder-facing decision packet for RFS-011. The new page makes the blocker explicit: choose area survey versus spotter, pick the faintest required target class, define whether one-hour revisit is per drone or fleet, and select the detector branch before spending the next optimization pass on a fabrication-oriented prescription.</p>
<p>The recommended default is to optimize the next prescription as an area-survey camera for 3 cm smouldering-char detection, carrying the 1 cm ember and weak-warm-edge cases as stress tests until AAO confirms whether they are mandatory.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/mission-decision.html">Mission decision packet</a></li>
</ul>
<h2>Payload capability, coverage, and per-drone cost model</h2>
<p>Stakeholder feedback settled the mission (find-only wide-area survey, 3 cm smouldering-char driver, Boson+ 640 retained) and reframed the revisit question into &quot;what does one drone cover and what does one cost,&quot; so the fleet can be sized against the AUD 100k payload budget. The platform was also corrected to fixed-wing.</p>
<p>Added <code>scripts/rfs_fleet_coverage_model.py</code>, which recalculates coverage from the optics rather than assuming it: the detection-limited GSD (coarsest GSD where a 3 cm char still clears the SNR gate) comes straight from the F-number / aperture radiometry model, swath = pixels x GSD, and coverage = swath x cruise speed x overlap/efficiency. Drone specs for eight real fixed-wing / VTOL survey aircraft (WingtraOne, eBee X, Trinity Pro, Delair UX11, Puma 3 AE, Event 38 E455, JOUAV CW-15/CW-25) are encoded as data with sourced cruise speed, endurance, payload, and 2 kg-capability flags. A per-drone payload cost build-up (first-article and recurring) is rolled up from the procurement-plan allowances. The script writes <code>fleet-coverage-and-cost-2026-06-14.md</code>, <code>site/assets/rfs/fleet-coverage.json</code>, and the generated public page <code>site/fleet-coverage.html</code>, and is wired into the static-site build so the page recalculates on every deploy. Regression tests cover the coverage scaling, the detection-limit ordering, the cost roll-up, and the 2 kg platform flags.</p>
<p>Key results: per drone roughly 170-250 ha/h at the 120 m altitude cap, rising to ~355-510 ha/h with an altitude waiver (fixed-wing cruise 15-23 m/s). The custom-optics payload recurs at ~USD 22-57k each, so AUD 100k (~USD 66k) buys only 1-2 payloads -- a single-prototype budget, not a fleet budget. Maximum total coverage within budget is therefore on the order of a few hundred to ~750 ha/h, i.e. hourly revisit of a focused few-square-kilometre zone, not a region. Two levers dominate: payload unit cost (sets the fleet) and an above-120 m altitude authorisation (roughly doubles per-drone coverage). The altitude authorisation is flagged as a required enabler; an RFS operation may secure it but it must be confirmed. The full 2 kg payload also forces the heavier (Puma / E455 / JOUAV) airframe class, which is itself ~USD 20-30k each and excluded from the payload budget.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/fleet-coverage.html">Payload capability and coverage</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-13 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-13</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-13</guid>
      <pubDate>Sat, 13 Jun 2026 12:00:00 +1000</pubDate>
      <description>Found and fixed two ray-tracer math errors (conic sag-gradient factor, OPD reference surface) via new analytic regression tests; re-evaluated the design of record and all multi-mirror screening artifacts; overhauled project hygiene (uv migration, ruff/mypy, CI test workflow).</description>
      <content:encoded><![CDATA[<h2>Ray-tracer correctness fixes</h2>
<p>New analytic-reference tests (closed-form conic sag, parabola focus, spherical-mirror longitudinal aberration, 45-degree fold) exposed two errors in the shared tracer:</p>
<p>1. <code>Surface.sag_gradient</code> was missing a factor of 2 in the conic derivative term, so every off-axis surface normal was slightly wrong (about 0.25 percent at the margin of an f/2.5 mirror). After the fix, a traced marginal ray&#x27;s longitudinal spherical aberration matches theory to one part in a million.</p>
<p>2. <code>compute_opd_map</code> referenced optical path length to a focal *plane* through an estimated focus instead of to a reference sphere; for fast beams this manufactured spurious wavefront error (about 1.9 waves at f/1.25, about 0.05 waves at the f/3 speeds EmberScope targets). The OPD reference is now the variance-minimising image point along the chief ray; a perfect parabola now reports essentially zero RMS WFE.</p>
<p>Impact on the screening record after re-evaluation with corrected math: the optimized four-mirror design of record barely moves (centre-field RMS spot 79.8 to 79.9 um; all validation gates still pass). The legacy multi-mirror seeds shift more: the seven-mirror relay&#x27;s relative tolerance-yield proxy drops from about 0.9 to about 0.30, and the five-mirror seed&#x27;s edge field fully vignettes at its best bounded prescription trial. Those branches were already blocked by the beam-obstruction gate, so no shortlist conclusions change, but the dated checkpoint artifacts and regression pins now reflect the corrected numbers.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/multi-mirror-candidates.html">Multi-mirror checkpoint</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/prescription/four_mirror_optimized_prescription_2026-06-10.csv">Optimized prescription CSV</a></li>
</ul>
<h2>Project hygiene overhaul</h2>
<p>Migrated dependency management to uv with a locked root <code>pyproject.toml</code> (requirements.txt removed); added ruff and mypy with clean baselines; hardened all shell scripts (<code>bash</code> + <code>set -euo pipefail</code>, shellcheck-clean); and added a GitHub Actions workflow that runs ruff, mypy, shellcheck, and the full pytest suite on every push and pull request. New test coverage: fire-camera mission metrics against hand-computed values, report/prescription-CSV exports, sensitivity-table computation, and the analytic optics suite above.</p>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-11 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-11</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-11</guid>
      <pubDate>Thu, 11 Jun 2026 16:30:00 +1000</pubDate>
      <description>Added the RFS-028 beam-obstruction gate to the multi-mirror checkpoint; reworked the public site for reviewer clarity; exported geometry artifacts and renders for the optimized prescription.</description>
      <content:encoded><![CDATA[<h2>RFS-028 beam-obstruction gate</h2>
<p>Added the entrance-stop beam-obstruction screen from the four-mirror prescription optimizer to the full RFS-028 multi-mirror checkpoint. The new per-field rows measure nominal seed and best bounded prescription-step layouts for four-, five-, six-, and seven-mirror branches. The result blocks the legacy seed families as physically obstructed: the four-mirror bounded step leaves only about 1 percent minimum unobstructed throughput, while the five-, six-, and seven-mirror bounded steps leave 0 percent. The next fair trade step is geometry/fold optimization with obstruction in the merit function, not choosing among the old seed mirror counts.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/multi-mirror-candidates.html">Multi-mirror checkpoint</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/multi-mirror/seven_mirror_seed_metrics_2026-06-11.json">Seven-mirror JSON artifact</a></li>
</ul>
<h2>Website audience and status cleanup</h2>
<p>Reworked the public site so a first-time reader can tell what EmberScope is (a design study, software only) and what its current state is. Added a design-study status banner to the home page and evidence summary; rebuilt the evidence summary and optics hub around the optimized four-mirror prescription (replacing stale starter-freeform numbers); reframed the multi-mirror checkpoint and optical-evaluation pages as superseded screening history with explicit banners; published the optimized prescription CSVs from the artifacts page; relabelled the diary as an internal engineering log; removed the git-workflow handoff notes from the storyboard page; converted present-tense &quot;EmberScope has X&quot; claims on pipeline/calibration/validation pages into planned-specification language; and stripped RFS-### task IDs and internal shorthand from reviewer-facing pages.</p>
<h2>RFS-019 optimized-design geometry exports and renders</h2>
<p>Added <code>scripts/rfs_optimized_design_exports.py</code>: it rebuilds the optimized four-mirror train from the committed design JSON, re-traces the beam with the shared ray tracer, and exports a labelled side-view layout SVG, an OpenSCAD CAD handoff, Blender geometry plus a headless scene script, a validation-gate report (envelope, mass, plate scale, throughput, centre RMS vs Airy, detector energy, freeform: all pass), and a manifest — every artifact carrying the SHA-256 of the canonical design payload. Rendered new Blender hero/side/top views from that traced geometry and replaced the old starter-freeform renders on the home page and evidence summary, so the public visuals now show the design of record. The exporter runs in the static build, and a regression test regenerates the exports and fails if the committed copies go stale.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/artifacts.html">Technical files</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/design-source/emberscope-four-mirror-optimized-v1.layout.svg">Layout SVG</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-10 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-10</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-10</guid>
      <pubDate>Thu, 11 Jun 2026 01:30:00 +1000</pubDate>
      <description>Published mission-survey storyboard handoff; first unobscured optimized four-mirror prescription.</description>
      <content:encoded><![CDATA[<h2>RFS-011 mission-survey storyboard handoff</h2>
<p>Added a public storyboard page for the scan-mirror mission-survey manga handoff, plus a tracked PDF assembler and panel plan. The artifact turns the scan-mirror heritage evidence into a reviewable ten-panel stakeholder sequence while keeping generated panel art and PDFs out of git until a final binary is intentionally selected.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/mission-survey-manga.html">Mission survey storyboard</a></li>
<li><a href="https://emberscope.symmachus.org/mission-survey-video.html">Mission survey video</a></li>
</ul>
<h2>RFS-019/RFS-028 first optimized four-mirror prescription</h2>
<p>Replaced the bounded scale-factor sweeps with a real prescription optimizer for the four-mirror branch (differential evolution over fold geometry, curvatures, conics, and focus, then damped-least-squares polish with plane-symmetric freeform terms available). Along the way: fixed a shared ray-tracer bug (strongly tilted rays converged onto backward conic branches) and regenerated the multi-mirror checkpoint as 2026-06-10; added a beam-obstruction screen that shows every previous seed branch was self-obstructed (M2 sat in the entrance beam); moved the aperture stop model to the camera&#x27;s entrance aperture; and derived clear apertures from traced beam footprints. The optimized train is an unobscured conic-only layout (freeform terms converged to zero): EFL 195 mm, 149.6 mm package span, 0.34 kg mass proxy, centre-field RMS spot 54 um (below the 67 um F/5 Airy radius), edge fields 80-106 um, and the first nonzero 2x2/16x16 detector energies in the series. Key system finding: at F/5 the diffraction floor caps 2x2-pixel energy near 20 percent, so the F-number trade is now the binding constraint for single-pixel detector energy.</p>
<h3>Links</h3>
<ul>
<li>Design source: <code>projects/rural-fire-service-camera/designs/emberscope-four-mirror-optimized.v1.json</code></li>
<li>Report: <code>projects/rural-fire-service-camera/four-mirror-prescription-optimization-2026-06-10.md</code></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-09 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-09</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-09</guid>
      <pubDate>Tue, 09 Jun 2026 01:17:39 +1000</pubDate>
      <description>Published bounded curvature-step evidence for multi-mirror branches.</description>
      <content:encoded><![CDATA[<h2>RFS-028 prescription-step checkpoint</h2>
<p>Added a bounded curvature-group prescription step across the measured four-, five-, six-, and seven-mirror RFS-028 branches. The new public checkpoint shows edge-RMS improvements of 44%, 61%, 74%, and 38% respectively while keeping each best row inside the package and edge-throughput gates. The detector-energy gate still fails because 2x2-pixel energy remains zero, so RFS-028 stays open for a real detector-energy optimizer and prescription-level tolerancing.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/multi-mirror-candidates.html#prescription">Multi-mirror prescription step</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/multi-mirror/six_mirror_seed_metrics_2026-06-09.json">Latest six-mirror JSON</a></li>
</ul>
<h3>Commits</h3>
<ul>
<li><code>56008def930f83ffa35be71cab20e8ea40a3df88</code></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-08 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-08</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-08</guid>
      <pubDate>Mon, 08 Jun 2026 01:15:59 +1000</pubDate>
      <description>Published first-pass focus and clearance sweep for multi-mirror branches.</description>
      <content:encoded><![CDATA[<h2>RFS-028 focus sweep checkpoint</h2>
<p>Added a bounded focus/clearance sweep across the measured four-, five-, six-, and seven-mirror seeds. The best first-pass refocus is -3.0 mm for every branch, improving edge RMS by 38%, 33%, 23%, and 12%; 1.1x clear apertures restore the edge-throughput gate, but 2x2-pixel detector energy remains zero, so RFS-028 stays open for prescription optimization. The multi-mirror page also now uses a versioned stylesheet link and readable scroll-contained review tables on mobile.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/multi-mirror-candidates.html">Multi-mirror candidates</a></li>
</ul>
<h3>Commits</h3>
<ul>
<li><code>2d480123a9a3665b27e66af154f632ea70e21e75</code></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-07 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-07</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-07</guid>
      <pubDate>Sun, 07 Jun 2026 01:14:30 +1000</pubDate>
      <description>Published RFS-028 tolerance and clearance evidence.</description>
      <content:encoded><![CDATA[<h2>Added multi-mirror tolerance screen</h2>
<p>Added a deterministic tolerance and clear-aperture relief screen for the measured four-, five-, six-, and seven-mirror RFS-028 branches. The public checkpoint now shows that a 1.1x clear-aperture relief step recovers edge throughput inside the 150 mm package screen, but all measured seeds still have no first-order WFE margin and zero 2x2-pixel detector energy, so the trade stays in optimization rather than mirror-count selection.</p>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/multi-mirror-candidates.html#tolerance">Multi-mirror tolerance gate</a></li>
<li><a href="https://emberscope.symmachus.org/assets/rfs/multi-mirror/seven_mirror_seed_metrics_2026-06-07.json">Latest seven-mirror JSON</a></li>
</ul>
<h3>Commits</h3>
<ul>
<li><code>862f700933421a1bce104dc32d8e69d2fd70efd6</code></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-06 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-06</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-06</guid>
      <pubDate>Sat, 06 Jun 2026 01:16:13 +1000</pubDate>
      <description>Seven-mirror relay branch published for the multi-mirror optical trade.</description>
      <content:encoded><![CDATA[<h2>RFS-028 seven-mirror seed checkpoint</h2>
<ul>
<li>Added a reusable seven-mirror cold-stop relay seed for the higher-mirror-count branch.</li>
<li>Published package, mass, spot, vignetting, detector-energy, MTF-proxy, CSV, and JSON rows alongside the four-, five-, and six-mirror branches.</li>
<li>Kept <code>RFS-028</code> open because the measured families still need comparable optimization and tolerancing before a mirror count can be selected.</li>
</ul>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/multi-mirror-candidates.html">Multi-mirror branch</a></li>
</ul>
<h3>Commits</h3>
<ul>
<li><code>ca0817f255597daa81dbe03aa119e8c969e2508c</code></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-05 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-05</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-05</guid>
      <pubDate>Fri, 05 Jun 2026 01:15:00 +1000</pubDate>
      <description>Six-mirror dual-triplet branch published for the multi-mirror optical trade.</description>
      <content:encoded><![CDATA[<h2>RFS-028 six-mirror seed checkpoint</h2>
<ul>
<li>Added a reusable six-mirror dual-triplet seed with a weak image-side corrector.</li>
<li>Published package, mass, spot, vignetting, detector-energy, MTF-proxy, CSV, and JSON rows alongside the four- and five-mirror branches.</li>
<li>Kept <code>RFS-028</code> open because seven-plus-mirror candidates and optimization still need comparable measured artifacts.</li>
</ul>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/multi-mirror-candidates.html">Multi-mirror branch</a></li>
</ul>
<h3>Commits</h3>
<ul>
<li><code>c35c8a1f3fa723ec09387fcf3b91c00dc311e194</code></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-04 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-04</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-04</guid>
      <pubDate>Thu, 04 Jun 2026 01:07:18 +1000</pubDate>
      <description>Five-mirror reimaging branch published for the multi-mirror optical trade.</description>
      <content:encoded><![CDATA[<h2>RFS-028 five-mirror seed checkpoint</h2>
<ul>
<li>Added a reusable five-mirror reimaging seed with a weak near-flat relay mirror.</li>
<li>Published matching package, mass, spot, vignetting, detector-energy, and MTF-proxy rows alongside the four-mirror seed.</li>
<li>Kept <code>RFS-028</code> open because six- and seven-plus-mirror candidates still need comparable measured artifacts.</li>
</ul>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/multi-mirror-candidates.html">Multi-mirror branch</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-03 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-03</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-03</guid>
      <pubDate>Wed, 03 Jun 2026 01:07:38 +1000</pubDate>
      <description>First measured four-mirror branch published for the multi-mirror optical trade.</description>
      <content:encoded><![CDATA[<h2>RFS-028 four-mirror seed checkpoint</h2>
<ul>
<li>Added a deterministic four-mirror folded seed from the existing optical architecture builder.</li>
<li>Published package, mass, spot, vignetting, detector-energy, and MTF-proxy rows for the seed.</li>
<li>Kept <code>RFS-028</code> open because five-, six-, and seven-plus-mirror candidates still need comparable measured artifacts.</li>
</ul>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/multi-mirror-candidates.html">Multi-mirror branch</a></li>
</ul>
<h3>Commits</h3>
<ul>
<li><code>b1ede3498f0a4388ec42c0ce3d2f5258974011a7</code></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>2026-06-02 - EmberScope daily work</title>
      <link>https://emberscope.symmachus.org/diary.html#2026-06-02</link>
      <guid isPermaLink="true">https://emberscope.symmachus.org/diary.html#2026-06-02</guid>
      <pubDate>Tue, 02 Jun 2026 01:30:00 +1000</pubDate>
      <description>RFS-009 fire-radiometry synthesis shipped, and diary/RSS publication infrastructure was added for future automation runs.</description>
      <content:encoded><![CDATA[<h2>RFS-009 fire-radiometry synthesis</h2>
<ul>
<li>Added the fire-detection and radiometry literature synthesis.</li>
<li>Published the stakeholder-facing fire radiometry literature page.</li>
<li>Marked <code>RFS-009</code> Done after the implementation and bookkeeping commits were pushed.</li>
</ul>
<h3>Links</h3>
<ul>
<li><a href="https://emberscope.symmachus.org/fire-radiometry-literature.html">Fire radiometry literature</a></li>
</ul>
<h3>Commits</h3>
<ul>
<li><code>758d80f1a651fd66bfc588f3743223c1060bbc71</code></li>
<li><code>b5c68a3e65206879188716944544c04893b448b6</code></li>
</ul>
<h2>Diary and RSS infrastructure</h2>
<ul>
<li>Added a tracked daily diary format under <code>projects/rural-fire-service-camera/daily-diary/</code>.</li>
<li>Added scripts for automation diary writes and static-site RSS rendering.</li>
<li>Wired the renderer into the normal static-site build so committed diary files can publish through the existing deployment path.</li>
</ul>]]></content:encoded>
    </item>
  </channel>
</rss>
