@djordje-stojanovic/sigmaskills 0.16.10 → 0.16.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -28,6 +28,36 @@ All notable changes to [Sigmaskills](https://github.com/Djordje-Stojanovic/Sigma
28
28
 
29
29
  ## [Unreleased]
30
30
 
31
+ ## [0.16.12] — 2026-10-24
32
+
33
+ ### Fixed
34
+
35
+ - `sigmadeeplook` fix round 15, lane F2 (two causes of held-out set 14):
36
+ - Labels and formats: a SAS file (sas7bdat or XPORT) now prints its dataset label and, for each variable, the label, the format (name, width, decimals) and the informat. The file's own bytes are read, so no extra package is needed. `--ask "dataset label"`, `"label of variable X"`, `"format of variable X"`, `"which variables have a date format"` and `"value labels of X"` answer exactly. SPSS and Stata files get the same format and value-label answers.
37
+ - A clause the engine cannot apply is no longer dropped silently. When a question holds "values declared missing do not count", "whole word, any capitalisation", "greater than 22,50", "between 3 and 7", "after 2024-05-01" or "excluding Berlin" and no filter shows it, the number is still given and a `Not applied:` line follows it.
38
+ - `sigmadeeplook` fix round 15, lane F1 (three causes of held-out set 14):
39
+ - Values a file declares missing are not values. In an SPSS `.sav`, the user-defined missing codes (single codes, ranges, a range plus a code, string codes) and the system-missing cases drop out of every comparison, count, sum, mean, minimum, maximum and group count. The answer says how many cases it left out and which codes (`User-defined missing values excluded: 41,196 cases (commute_min: codes 999)`). Step 1 has a `Declared missing values` line with each variable's codes and case counts. A question that asks for the raw values ("including the missing codes", "the raw values") keeps them and says so. A Stata or SAS missing value (`.a-.z`, `.A-.Z`) reaches `--ask` as a missing value, not as text, so a column with many of them still counts, sums and averages.
40
+ - "Any capitalisation", "any case", "regardless of case", "irrespective of capitalisation", "whatever the case" and similar make a whole-word match ignore case, for cues, text columns and documents alike. A quoted word inside a bracketed aside ("forms such as 'latarni' do not count") is an example, never a filter. A count made as written now says how many more match ignoring case (`119 cues contain it as written; 187 ignoring case`).
41
+ - A report whose columns sit between pipes under a `-----+-----` rule, with a title line, a header and a subtotal line in every section, is one table: the subtotals and section titles stay out of the rows and are printed as they stand. A number written with a comma in a question is read as a decimal when it has one, two or four digits after the comma, and as the table writes decimals when it has three ("2,250" in a decimal-comma table is 2.25); the answer states the reading. A decimal comma comes back as the file writes it (`4127,385`).
42
+
43
+ ## [0.16.11] — 2026-10-24
44
+
45
+ ### Fixed
46
+
47
+ - `sigmadeeplook` fix round 14, lane F2 (four causes of held-out set 13):
48
+ - SAS code page: the print of a `.sas7bdat` gives the encoding name and the Windows code page, not only the number (`text encoding windows-1254 (code page 1254, Turkish), SAS code 64`). `--ask "which code page"` or `"which encoding"` answers it. Codes that have no Windows page (latin1, utf-8) say so.
49
+ - Colour counts on palette pictures: `--ask "how many pixels have exactly the colour RGB (30, 170, 180)"` counts every pixel of the picture. It was read as pixel x=30, y=170 before. It also takes `#1eaab4` and `palette index 8`, answers with the count and the share of all pixels, and `--ask "colour table"` lists up to 256 colours with exact counts. Step 1 of a picture with up to 256 colours has an `Ask a colour count:` line. A PCX with 2 to 8 colour planes (the 16-colour EGA layout) is decoded without Pillow.
50
+ - GeoPackage: step 1 has a `Feature layers` line with the geometry type, the srs id, the authority code and name, and the extent of each layer. `--ask "which EPSG code do the feature layers use"` answers it. The `Ask a count:` line of a table with a unique key and a number column now shows `which <key> has the largest <number>` (or smallest), and `--ask` answers that form with the key value. Before, a key written with an underscore (`parcel_no`) did not name its column.
51
+ - Cabinets and zips: the print quotes small text members up to 4 KB, and a checksum list gets room for its hash lines. `--ask "line of <member> for <word>"`, `"what does <member> say about <word>"` and hash or checksum questions show the matching lines of the right member. A cabinet is read without 7-Zip when its folders are stored or MSZIP; an LZX or Quantum folder is named as not decoded, never guessed.
52
+ - Stale prints: a stored look is now tied to the scripts that wrote it. After an upgrade the same file gets the new print and the new answers. Before, a stored look from older scripts was served again (the SAS print still said `encoding code 64`).
53
+ - `sigmadeeplook` fix round 14, lane F1 (from held-out set 13):
54
+ - A paged report in fixed-width columns is a table. A rule line of dashes marks the columns, also when it repeats on every page. Title blocks, repeated headers, page markers, form feeds and the totals block stay out of the rows; the totals are printed whole. Comma decimals are numbers. Step 1 gets `Find one record:` and `Ask a count:` with the real column names, and `--ask` counts over a threshold and finds a record by its code. Eight aligned lines without a rule line are read too, but only when they make up most of the text.
55
+ - A word that only names the rows ("messages", "cases", "rows") is never a value filter. "How many messages have a context (msgctxt)?" counts the messages whose context is not empty. This works for any column of any table ("have a plural", "have an assignee").
56
+ - "Longer than N bytes", "shorter than N characters" and "at least N characters" count rows by the length of a text column. The question names the column; otherwise the longest text column is used, and the answer says which. A `.mo` counts the original as the file stores it (context, `0x04`, msgid, `0x00`, plural).
57
+ - A scope word is honoured. "Speaker notes" counts notes only, "slide text" counts slide text only, "title" counts titles only. A file that cannot give the scope is refused, not answered over all text. OpenDocument presentations (`.odp`) now have per-slide text and notes like PowerPoint files.
58
+ - Step 1 of a presentation names the last and first slide. `--ask "title of the last slide"` and `"title of slide N"` answer exactly.
59
+ - `--ask "how many entries of <char variable> are the letter 'S'"` counts the letter over a netCDF char variable and says the unit ("counted per character over 2,400 x 48 = 115,200 characters"). A longer value counts entries. Step 1 shows the form.
60
+
31
61
  ## [0.16.10] — 2026-10-24
32
62
 
33
63
  ### Fixed
@@ -559,7 +589,9 @@ Ship high-rigor, installable agent skills (not apps): full-repo audits, performa
559
589
  | 2026-08-11 | `5dab832` | Add CHANGELOG and mark v0.1.0 as the first Sigmaskills release |
560
590
  | 2026-08-11 | `124a666` | Polish v0.1.0 docs for multi-host install and use |
561
591
 
562
- [Unreleased]: https://github.com/Djordje-Stojanovic/Sigmaskills/compare/v0.16.10...HEAD
592
+ [Unreleased]: https://github.com/Djordje-Stojanovic/Sigmaskills/compare/v0.16.12...HEAD
593
+ [0.16.12]: https://github.com/Djordje-Stojanovic/Sigmaskills/compare/v0.16.11...v0.16.12
594
+ [0.16.11]: https://github.com/Djordje-Stojanovic/Sigmaskills/compare/v0.16.10...v0.16.11
563
595
  [0.16.10]: https://github.com/Djordje-Stojanovic/Sigmaskills/compare/v0.16.9...v0.16.10
564
596
  [0.16.9]: https://github.com/Djordje-Stojanovic/Sigmaskills/compare/v0.16.8...v0.16.9
565
597
  [0.16.8]: https://github.com/Djordje-Stojanovic/Sigmaskills/compare/v0.16.7...v0.16.8
package/README.md CHANGED
@@ -6,7 +6,7 @@ Portable [Agent Skills](https://agentskills.io/) that install once and run on **
6
6
 
7
7
  | | |
8
8
  |---|---|
9
- | **Release** | [**v0.16.10**](https://github.com/Djordje-Stojanovic/Sigmaskills/releases/tag/v0.16.10) |
9
+ | **Release** | [**v0.16.12**](https://github.com/Djordje-Stojanovic/Sigmaskills/releases/tag/v0.16.12) |
10
10
  | **Changelog** | [CHANGELOG.md](CHANGELOG.md) |
11
11
  | **License** | [MIT](LICENSE) |
12
12
  | **Spec** | [agentskills.io](https://agentskills.io/) |
package/manifest.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
3
  "name": "sigmaskills",
4
- "version": "0.16.10",
4
+ "version": "0.16.12",
5
5
  "description": "Portable Agent Skills monorepo and first-party Sigma Installer",
6
6
  "skills": [
7
7
  {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@djordje-stojanovic/sigmaskills",
3
- "version": "0.16.10",
3
+ "version": "0.16.12",
4
4
  "description": "Portable Agent Skills monorepo and first-party Sigma Installer",
5
5
  "type": "module",
6
6
  "license": "MIT",