Skip to content

Commit 5232fbb

Browse files
release(v1.0.7): comma-conjunction "8.1.0, <10.0.0" + NEW syntax error class catalogued
v1.0.6's space-conjunction ">=8.1.0 <10.0.0" was rejected by SLIM with a fundamentally NEW error class: manifest.platformRequirements.splunk.Enterprise: Illegal version specification: >=8.1.0 <10.0.0 The wording "Illegal version specification" is structurally distinct from the prior "no supported version" content-class wording. SLIM could not PARSE the space form. The Splunkbase AI explainer for this failure explicitly recommends the comma form. Retroactive Phase 1.7 disambiguation: Phase 1.7's ">=9.0,<10.0" (comma) was rejected with the "no supported version" content wording, NOT "Illegal version specification". This empirically proves the comma syntax PARSES correctly; Phase 1.7's rejection was content-based all along. Cloud Classic supported-list shape narrows further: combining Phase 1.7's content rejection of [9.0.0, 10.0.0) and v1.0.5's content rejection of [9.0.0, infinity), the supported list is entirely BELOW 9.0.0 - i.e., 8.x only. This matches the AI's 8.1.0 floor hint. Three error classes for check_that_app_passes_slim_validation_for_cloud now empirically catalogued: - type: "Expected String value" (v1.0.2 list form) - syntax: "Illegal version specification" (v1.0.6 space form, NEW) - content: "no supported version of Splunk Enterprise" (F13/F15/F16/F17) What changed: - app.manifest: Enterprise from ">=8.1.0 <10.0.0" (space) to ">=8.1.0, <10.0.0" (comma, AI's literal recommendation); info.id.version 1.0.6 -> 1.0.7; releaseDate 2026-06-05. - default/app.conf: build = 677; [launcher].version = [id].version = 1.0.7. - appserver/static/whitelist_manager.js:14: urlArgs: "_b=677" (auto-applied by scripts/hooks/urlargs-sync.js). - docs/SPLUNK_10_COMPATIBILITY.md: Runtime Verification section extended with v1.0.6 finding (NEW syntax class) + Phase 1.7 retroactive disambiguation + cumulative format history + three known error classes catalogued. - docs/APPINSPECT_FINDINGS.md §7.10: 2026-06-05 evening run F18 + v1.0.7 trial details + three-error-class table. - docs/DECISION_LOG.md 2026-06-05 row 2 (evening): documents the comma-syntax correction + Phase 1.7 retroactive disambiguation + narrowed Cloud Classic shape inference (8.x only). Two new maintenance lessons: SLIM uses COMMA conjunction (not space); three distinct error wordings for the same SLIM check. - CLAUDE.md "Splunk Version Pinning Audit" log: new row correcting the 2026-06-05 morning row's wrong "space-conjunction" maintenance rule. Five consecutive corrections in 4 days demonstrate empirical discovery is the right method for a poorly-documented external system. Three outcomes possible: 1. SLIM accepts ">=8.1.0, <10.0.0" -> first ACCEPTED semver-range entry in cumulative history; pin to comma-form bounded ranges permanently. Cleanup commit fixes all prior format claims. 2. SLIM rejects with "no supported version" -> Cloud Classic's list is narrower than [8.1.0, 10.0.0); next move is Splunkbase publisher support ticket (documented escalation path). 3. SLIM rejects with another unprecedented wording -> new error class to catalogue; careful analysis before next iteration. Honesty note: 7th release attempt in 5 days. The iterate-and-test discovery method has produced 7 distinct empirical data points (F13-F18 + v1.0.0 pre-release). The cumulative SLIM format history table in docs/SPLUNK_10_COMPATIBILITY.md is now the canonical single-source-of-truth for what SLIM accepts/rejects; future maintainers should read it before re-attempting any prior-rejected format. Verification: - bash scripts/validate.sh -> ALL CHECKS PASSED (2 warnings) - bash scripts/preflight-tag.sh v1.0.7 -> OK (all 4 sources at 1.0.7) - bash scripts/pre-commit-doc-drift.sh -> OK (49 docs vs build 677) - Local AppInspect re-run skipped (Docker not running). The next Splunkbase upload of wl_manager-1.0.7.spl is the empirical test.
1 parent ae14980 commit 5232fbb

7 files changed

Lines changed: 313 additions & 7 deletions

File tree

CHANGELOG.md

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,102 @@ All notable changes to this project will be documented in this file.
44

55
---
66

7+
## [1.0.7] - 2026-06-05
8+
9+
**Syntax fix — comma conjunction instead of space.** No app-code or
10+
behavior changes — manifest + version-bump only.
11+
12+
### Major analytical finding from v1.0.6
13+
14+
v1.0.6 declared `">=8.1.0 <10.0.0"` (space-separated). SLIM rejected
15+
with a **new error class**:
16+
17+
> manifest.platformRequirements.splunk.Enterprise: **Illegal version
18+
> specification**: >=8.1.0 <10.0.0
19+
20+
The wording "Illegal version specification" is fundamentally different
21+
from the prior "no supported version" wording. This is a **syntax
22+
error**, not a content error.
23+
24+
**This retroactively disambiguates Phase 1.7's `">=9.0,<10.0"`
25+
rejection.** That earlier failure used "no supported version" wording
26+
(content class), which means **comma-conjunction syntax parses
27+
correctly** — Phase 1.7's rejection was content-based all along (no
28+
version in `[9.0.0, 10.0.0)` matched Cloud Classic's supported list
29+
at that time).
30+
31+
### Cloud Classic supported-list narrows further
32+
33+
Combining all empirical evidence:
34+
35+
- Phase 1.7's `">=9.0,<10.0"` (comma) → content-rejected → **no
36+
version in `[9.0.0, 10.0.0)` was on the supported list**
37+
- v1.0.5's `">=9.0.0"` (open floor) → content-rejected → **no
38+
version in `[9.0.0, ∞)` is on the supported list**
39+
40+
Therefore: **Cloud Classic's supported list is entirely BELOW 9.0.0**
41+
— i.e., 8.x only. This matches Splunkbase AI's 8.1.0 floor hint.
42+
43+
### What v1.0.7 is testing
44+
45+
The same range as v1.0.6 (`">=8.1.0"` through `<10.0.0"`) but using
46+
the **comma conjunction** the AI explicitly recommended:
47+
48+
> "The Packaging Toolkit requires multiple constraints to be
49+
> comma-separated (`">=8.1.0, <10.0.0"`). The space-only separation
50+
> is parsed as an illegal version specification."
51+
52+
If the range `[8.1.0, 10.0.0)` contains any version on Cloud
53+
Classic's supported list (and the 8.1.0 floor strongly implies it
54+
does), SLIM should now accept.
55+
56+
### What changed since v1.0.6
57+
58+
| File | Change |
59+
|---|---|
60+
| `app.manifest` | `Enterprise` from `">=8.1.0 <10.0.0"` (space) to `">=8.1.0, <10.0.0"` (comma, AI's literal recommended form); `info.id.version` 1.0.6 → 1.0.7; `releaseDate` 2026-06-05 |
61+
| `default/app.conf` | `[install].build` 676 → 677; `[launcher].version` + `[id].version` 1.0.6 → 1.0.7 |
62+
| `appserver/static/whitelist_manager.js` | `urlArgs: "_b=677"` (auto-synced) |
63+
| `docs/SPLUNK_10_COMPATIBILITY.md` | Runtime Verification: 2026-06-05 evening section — syntax-vs-content disambiguation; Phase 1.7 re-interpretation; cumulative format history updated with v1.0.6 syntax-class error |
64+
| `docs/APPINSPECT_FINDINGS.md` §7.10 | 2026-06-05 evening F18 (syntax-class error) |
65+
| `docs/DECISION_LOG.md` 2026-06-05 row 2 | Documents the comma-syntax fix + the Phase 1.7 retroactive disambiguation + the narrowed Cloud Classic shape inference (8.x only) |
66+
| `CLAUDE.md` | Audit-log row with syntax-discovery + Phase 1.7 re-read |
67+
| `CHANGELOG.md` | This entry |
68+
69+
### Updated cumulative SLIM format history
70+
71+
| Format | Error class | Result | Release |
72+
|---|---|---|---|
73+
| `">=9.0.0"` | content | REJECTED | v1.0.0 pre-release; v1.0.5 |
74+
| `">=9.0,<10.0"` | **content** (re-classified 2026-06-05 eve) | REJECTED | v1.0.0-rc Phase 1.7 |
75+
| `"9.3"` | (no error then) | ACCEPTED-then-RETIRED | v1.0.0, v1.0.1 |
76+
| `["9.4", "10.0"]` | type | REJECTED | v1.0.2 |
77+
| `"10.0"` | content | REJECTED | v1.0.3 |
78+
| `"9.4"` | content | REJECTED | v1.0.4 |
79+
| `">=9.0.0"` | content | REJECTED | v1.0.5 |
80+
| `">=8.1.0 <10.0.0"` (space) | **syntax** (NEW class) | REJECTED | v1.0.6 |
81+
| `">=8.1.0, <10.0.0"` (comma) | empirical test | (this release) | v1.0.7 |
82+
83+
### Three outcomes possible
84+
85+
1. **SLIM accepts** — first accepted semver-range entry; future
86+
releases pin to comma-form bounded ranges and stop the
87+
version-retirement treadmill. Cleanup commit corrects all prior
88+
docs.
89+
2. **SLIM rejects with "no supported version: >=8.1.0, <10.0.0"**
90+
Cloud Classic's list is even narrower than `[8.1.0, 10.0.0)`;
91+
possibly only specific 8.x patches. Next move = Splunkbase
92+
publisher support ticket (the documented escalation path).
93+
3. **SLIM rejects with another syntax class** — unexpected; would
94+
indicate further AI guidance is needed.
95+
96+
### What did not change
97+
98+
- All app code, dashboards, RBAC.
99+
- Sigstore signing chain.
100+
101+
---
102+
7103
## [1.0.6] - 2026-06-05
8104

9105
**Bounded-range trial after v1.0.5 confirmed SLIM parses semver ranges

app.manifest

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
"id": {
66
"group": null,
77
"name": "wl_manager",
8-
"version": "1.0.6"
8+
"version": "1.0.7"
99
},
1010
"author": [
1111
{
@@ -36,7 +36,7 @@
3636
"incompatibleApps": null,
3737
"platformRequirements": {
3838
"splunk": {
39-
"Enterprise": ">=8.1.0 <10.0.0"
39+
"Enterprise": ">=8.1.0, <10.0.0"
4040
}
4141
},
4242
"supportedDeployments": [

appserver/static/whitelist_manager.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
// disk cache. Splunk serves /static/@<server-hash>/... with Cache-Control:
1212
// public, max-age=31536000; without urlArgs, bumped build numbers don't force
1313
// a re-fetch and clients run stale JS until they hard-refresh.
14-
require.config({ urlArgs: "_b=676" });
14+
require.config({ urlArgs: "_b=677" });
1515
require([
1616
"jquery",
1717
"underscore",

default/app.conf

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,20 +5,20 @@
55

66
[install]
77
is_configured = false
8-
build = 676
8+
build = 677
99

1010
[launcher]
1111
author = Oleh Bezsonov
1212
description = Manage detection-rule CSV whitelists with inline editing, approval workflows, version control, and diff-based audit trail
13-
version = 1.0.6
13+
version = 1.0.7
1414

1515
[ui]
1616
is_visible = true
1717
label = Whitelist Manager
1818

1919
[id]
2020
name = wl_manager
21-
version = 1.0.6
21+
version = 1.0.7
2222

2323
# AppInspect 4.2.0 has both `check_for_valid_package_id` (looks at the
2424
# new [id] stanza) and `check_for_updates_disabled` (looks at the

docs/APPINSPECT_FINDINGS.md

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -902,6 +902,94 @@ list.
902902

903903
---
904904

905+
## 7.10 v1.0.6 Splunkbase upload — NEW error class: "Illegal version specification" (2026-06-05 evening → v1.0.7 trial)
906+
907+
**Background**: v1.0.6 declared `">=8.1.0 <10.0.0"` (space conjunction
908+
per the 2026-06-05 morning AI explainer's literal example). SLIM
909+
rejected with:
910+
911+
> manifest.platformRequirements.splunk.Enterprise: **Illegal version
912+
> specification**: >=8.1.0 <10.0.0
913+
914+
| # | Class | File | Stanza | Setting / message |
915+
|---|-------|------|--------|------------------|
916+
| **F18** | **HARD ERROR (syntax)** | `app.manifest` | `platformRequirements.splunk.Enterprise` | "Illegal version specification: >=8.1.0 <10.0.0" |
917+
918+
**Headline numbers**: 162 success / **1 failure** / 0 future / 0 errors
919+
/ 5 warnings / 79 N/A / 0 skipped. Byte-identical totals to all prior
920+
runs.
921+
922+
**F18 — NEW error class discovered**: this is the first occurrence
923+
of "Illegal version specification" wording in our format history.
924+
Fundamentally different from the prior "no supported version"
925+
content-class wording. SLIM could not PARSE the space-conjunction
926+
form. The space form is type/syntax-rejected; the comma form is
927+
required.
928+
929+
**Retroactive Phase 1.7 disambiguation**: Phase 1.7's `">=9.0,<10.0"`
930+
(comma form) was rejected with the "no supported version" content
931+
wording — NOT "Illegal version specification". This proves the
932+
comma syntax parses correctly; Phase 1.7's rejection was content-based
933+
(no version in `[9.0.0, 10.0.0)` matched Cloud Classic's supported
934+
list at that time). The 2026-06-05 morning Runtime Verification's
935+
hypothesis is now empirically confirmed.
936+
937+
**Cloud Classic shape narrows further**: combining Phase 1.7's
938+
content rejection of `[9.0.0, 10.0.0)` and v1.0.5's content rejection
939+
of `[9.0.0, ∞)`, the supported list is entirely BELOW 9.0.0 —
940+
i.e., 8.x only. Matches Splunkbase AI's 8.1.0 floor hint.
941+
942+
**Resolution (v1.0.7, commit pending)**:
943+
944+
- `app.manifest`: `Enterprise` from `">=8.1.0 <10.0.0"` (space) to
945+
`">=8.1.0, <10.0.0"` (comma, AI's literal recommended form from
946+
the v1.0.6 explainer).
947+
- `app.manifest`: `info.id.version` 1.0.6 → 1.0.7; `releaseDate`
948+
2026-06-05.
949+
- `default/app.conf`: `build = 677`; `[launcher].version =
950+
[id].version = 1.0.7`.
951+
- `appserver/static/whitelist_manager.js:14`: `urlArgs: "_b=677"`
952+
(auto-applied).
953+
- `docs/SPLUNK_10_COMPATIBILITY.md` Runtime Verification: 2026-06-05
954+
evening section + cumulative format history updated with v1.0.6
955+
finding (NEW syntax error class) + Phase 1.7 retroactive
956+
disambiguation.
957+
958+
**Disposition**: **F18 testing-in-v1.0.7**.
959+
960+
**Three known error classes for `check_that_app_passes_slim_validation_for_cloud`**:
961+
962+
| Wording | Class | First seen |
963+
|---|---|---|
964+
| "Expected String value, not [...]" | type | v1.0.2 (F14) |
965+
| "Illegal version specification: <value>" | syntax | v1.0.6 (F18) |
966+
| "Version requirement includes no supported version of Splunk Enterprise: <value>" | content | v1.0.0-rc Phase 1.7 |
967+
968+
**Updated cumulative format history**:
969+
970+
| Format | Error class | Result | Release |
971+
|---|---|---|---|
972+
| `">=9.0.0"` | content | REJECTED | v1.0.0 pre-release; v1.0.5 (F17) |
973+
| `">=9.0,<10.0"` | content (re-classified) | REJECTED | v1.0.0-rc Phase 1.7 |
974+
| `"9.3"` | (no error then) | ACCEPTED-then-RETIRED | v1.0.0, v1.0.1 |
975+
| `["9.4", "10.0"]` | type | REJECTED | v1.0.2 (F14) |
976+
| `"10.0"` | content | REJECTED | v1.0.3 (F15) |
977+
| `"9.4"` | content | REJECTED | v1.0.4 (F16) |
978+
| `">=8.1.0 <10.0.0"` (space) | **syntax** | REJECTED | v1.0.6 (F18) |
979+
| `">=8.1.0, <10.0.0"` (comma) | empirical test | (v1.0.7 trial) | v1.0.7 |
980+
981+
**Three outcomes possible for v1.0.7**:
982+
983+
1. SLIM accepts → first accepted semver-range entry in history; pin
984+
to comma-form bounded ranges permanently.
985+
2. SLIM rejects with "no supported version" → 8.x-only inference is
986+
too generous; Cloud Classic's list is even narrower; next move =
987+
publisher support ticket.
988+
3. SLIM rejects with another unprecedented wording → new error class;
989+
careful analysis before next iteration.
990+
991+
---
992+
905993
## 8. Revision log
906994

907995
- 2026-05-17 — initial Phase 1.3 baseline. App.manifest version drift
@@ -998,6 +1086,19 @@ list.
9981086
conclusion: list form, semver ranges, and open-ended floors are
9991087
all rejected; multi-version support requires a Splunk-side SLIM
10001088
schema change.
1089+
- 2026-06-05 (evening) — **v1.0.6 Splunkbase upload → F18 SLIM
1090+
`Illegal version specification` (NEW error class)**. Space-conjunction
1091+
`">=8.1.0 <10.0.0"` is syntax-rejected; comma form is required.
1092+
Retroactively disambiguates Phase 1.7: that comma form was
1093+
content-rejected, NOT syntax-rejected, so the comma syntax PARSES
1094+
correctly. Combining Phase 1.7's content rejection of
1095+
`[9.0.0, 10.0.0)` with v1.0.5's content rejection of `[9.0.0, ∞)`,
1096+
Cloud Classic's supported list is entirely BELOW 9.0.0 — 8.x only.
1097+
This matches the AI's 8.1.0 floor hint. §7.10 added. v1.0.7 tests
1098+
the comma form `">=8.1.0, <10.0.0"`. Three known error classes now
1099+
documented for `check_that_app_passes_slim_validation_for_cloud`:
1100+
type ("Expected String value"), syntax ("Illegal version
1101+
specification"), content ("no supported version").
10011102
- 2026-06-05 — **v1.0.5 Splunkbase upload → F17 SLIM unsupported-
10021103
version rejection of `">=9.0.0"` semver range** — major analytical
10031104
finding: SLIM echoed back the literal range string, NOT "Expected

0 commit comments

Comments
 (0)