Commit 628a2b3
committed
fix(appinspect): suppress slim_validation via .appinspect_api.expect.yaml (Phase 1.7 close)
Three CI iterations confirmed SLIM (embedded in the hosted AppInspect
API) rejects EVERY manifest Enterprise version-requirement format we
have available without Splunk-private documentation:
Run 26000914082 — ">=9.0.0" → rejected
Run 26001775951 — ">=9.0,<10.0" → rejected
Run 26001928598 — "9.3" → rejected (normalized to "==9.3")
Each rejection used identical error wording ("Version requirement
includes no supported version of Splunk Enterprise: <value>"). SLIM
appears to intersect against a literal allowlist of supported versions
rather than a continuous range. The manifest schema reference at
dev.splunk.com sits behind a sign-in wall.
Inspection of public Splunkbase-published apps shows multiple formats
work for THEIR submissions ("*", ">=9.0", ">=9.2") but not for ours,
so the failure may also be coupled to something else in our package.
The single failure also bundles F2-F11 spec-drift notes for
python.version + python.required across 5 stanzas. Those settings
ARE present in source (see default/inputs.conf:16-17, :43-44, :61-62;
default/restmap.conf:22-23; default/commands.conf:8-9) AND ARE
required by static AppInspect's check_python_version_correctness_for_splunk_enterprise.
Removing them to please SLIM would break the static check. Diamond.
Decision: suppress check_that_app_passes_slim_validation_for_cloud
via the action's documented .appinspect_api.expect.yaml mechanism
(see splunk/appinspect-api-action@v3.0.5 main.py
compare_against_known_failures — uses set-equality between actual
failures and yaml keys). Keep the manifest at "9.3" — operationally
honest about the only Splunk version still in active vendor support
as of 2026-05-17 (9.0 EOL 2024-06, 9.1 EOL 2025-10, 9.2 EOL 2026-02,
9.3 EOL 2026-10).
The expect.yaml documents every alternative tried, the diamond, and
three re-evaluation triggers (quarterly Splunk Version Pinning
Audit, first Splunkbase human-review feedback, action version bump
past v3.0.5).
The Self-Service Cloud (`private_app`) profile continues to pass
cleanly (it does not run this check). The standalone local-CLI
profile (Phase 1.3) also unaffected (no SLIM invocation). So the
suppression scope is limited to the `cloud` API profile.
The new file is excluded from the .spl by scripts/package.sh
--exclude='*/.*' (line 121) AND the post-tar sanity-check regex
catches dotfiles as a backstop, so the .spl is unchanged.1 parent 5757ade commit 628a2b3
1 file changed
Lines changed: 81 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
0 commit comments