From f5645a696fd8583fe67164172c4bf8f51c7097d7 Mon Sep 17 00:00:00 2001 From: Simon Dick Date: Wed, 2 Sep 2026 14:26:01 +0100 Subject: [PATCH 1/2] Add destructive-tool warning to devsoak.readme, align LICENSE wording devsoak.readme now opens with a prominent warning (before the normal description) that devsoak destroys data and is only for developers who understand the risk - this is the text Aminet visitors see first. Also folds the now-redundant mid-file destructive note into it. LICENSE text was a reflow of the same BSD 2-Clause terms as midge/amiauth but not byte-identical (wrap width, "HOLDER" vs "HOLDERS", a stray comma) - copied verbatim from midge's LICENSE so all three projects carry the exact same license text. Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01EbDNgMg5EyWbEBRUvAoqP4 --- LICENSE | 23 +++++++++++------------ devsoak.readme | 16 +++++++++++++--- 2 files changed, 24 insertions(+), 15 deletions(-) diff --git a/LICENSE b/LICENSE index fd6e542..268c9ba 100644 --- a/LICENSE +++ b/LICENSE @@ -5,21 +5,20 @@ Copyright (c) 2026, Simon Dick Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: -1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS "AS IS" +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/devsoak.readme b/devsoak.readme index 16f1a6a..e3344d7 100644 --- a/devsoak.readme +++ b/devsoak.readme @@ -6,6 +6,19 @@ Version: 0.1 Architecture: m68k-amigaos >= 3.0; m68k-aros Requires: 68000 +*** WARNING: THIS IS A DESTRUCTIVE TESTING TOOL *** + +devsoak deliberately overwrites every sector in the range you point it at, +issues edge-case and malformed commands, and drives a driver to its +limits for hours at a time. It is built for developers and testers who +understand block device internals and have deliberately chosen a sector +range, partition, or whole device they do not mind losing. Point it at +the wrong unit number and it WILL destroy live data - there is no +confirmation beyond the -y flag you pass it yourself, and no undo. + +If you are not comfortable identifying your target device's unit number +with certainty, back up first, or do not run this tool. + devsoak is a destructive correctness and soak tester for trackdisk-style AmigaOS block device drivers. One run answers two questions: does every command the driver accepts do the right thing - including the edge cases @@ -28,9 +41,6 @@ This release ships: see README.md's Quirks section); devsoak looks for this file beside its own binary -devsoak is destructive: it will overwrite the sector range you point it -at. Never run it against a range holding data you want to keep. - Requirements ------------ - AmigaOS 3.0+ (KS 1.3 is also supported at reduced dialect coverage) From 582ad44d7e4a4848f839c394799bb5410285d459 Mon Sep 17 00:00:00 2001 From: Simon Dick Date: Wed, 2 Sep 2026 14:27:02 +0100 Subject: [PATCH 2/2] Fix inaccurate KS1.3 dialect-coverage claim in devsoak.readme Dialect support isn't reduced by devsoak on 1.3 - devsoak probes whatever dialects the driver under test actually advertises (g_enabled_dialects) at runtime, identically regardless of Kickstart version. A 1.3-era driver simply doesn't advertise ETD/TD64/NSD itself; devsoak's own coverage is unchanged. Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01EbDNgMg5EyWbEBRUvAoqP4 --- devsoak.readme | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/devsoak.readme b/devsoak.readme index e3344d7..149dd31 100644 --- a/devsoak.readme +++ b/devsoak.readme @@ -43,8 +43,11 @@ This release ships: Requirements ------------ - - AmigaOS 3.0+ (KS 1.3 is also supported at reduced dialect coverage) - or AROS m68k, 68000 or better. + - AmigaOS, Kickstart 1.3 or later, or AROS m68k, 68000 or better. + devsoak probes the driver under test at startup and exercises + whichever command dialects (CMD/ETD/TD64/NSD/NSD-ETD) it actually + advertises - so a 1.3-era driver simply advertises fewer dialects + itself, rather than devsoak testing less on 1.3. - A block device to test, and a sector range on it you do not need. Quick start