Skip to content

docs: fix unreachable case-insensitive confidence claim - #90

Draft
JarbasAl wants to merge 1 commit into
devfrom
docs/fix-case-insensitive-confidence-claim
Draft

docs: fix unreachable case-insensitive confidence claim#90
JarbasAl wants to merge 1 commit into
devfrom
docs/fix-case-insensitive-confidence-claim

Conversation

@JarbasAl

@JarbasAl JarbasAl commented Sep 5, 2026

Copy link
Copy Markdown
Member

🤖 Auto-generated by Claude Sonnet 5 (claude-sonnet-5) via Claude Code — NOT human-reviewed. Verify before acting.

The README confidence table claimed a case-insensitive match scores -0.05. I built the package in a throwaway venv (2.3.1a1, editable install) and ran the exact quick-start example plus targeted probes for each table row.

  • Confirmed: exact/cased match with registered entity value returns conf 1.0.
  • Confirmed: entity value not in samples returns conf 0.90.
  • Confirmed: unregistered entity returns conf 0.96.
  • Confirmed: wildcard penalty falls in the stated -0.05 to -0.25 range.
  • Refuted: a case-differing query (pattern "Hello There", query "hello there") returns conf 1.0, not 0.95. Reading padacioso/init.py shows _normalize lowercases both training samples and queries via ovos_spec_tools.normalize_for_match before any matching happens, so query_has_upper inside _match is always False when called through calc_intent/calc_intents, and the case-insensitive penalty branch is unreachable through the public API.

I removed the row and added a short note explaining why the case-insensitive penalty path does not fire in practice.

The confidence table listed a -0.05 penalty for case-insensitive matches,
but calc_intent lowercases both queries and patterns before matching
(OVOS-INTENT-1 normalization), so that code path is never reached
through the public API.
@coderabbitai

coderabbitai Bot commented Sep 5, 2026

Copy link
Copy Markdown
Contributor

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

github-actions Bot commented Sep 5, 2026

Copy link
Copy Markdown

Another day, another set of automated checks. Let's see! 🌅

I've aggregated the results of the automated checks for this PR below.

📋 Repo Health

Giving the repo a clean bill of health! 🛁

✅ All required files present.

Latest Version: 2.3.1a1

padacioso/version.py — Version file
README.md — README
LICENSE.md — License file (consider renaming to LICENSE)
pyproject.toml — pyproject.toml
⚠️ setup.py — setup.py
CHANGELOG.md — Changelog
padacioso/version.py has valid version block markers

🔒 Security (pip-audit)

Checking for any insecure data transmissions. 📡

✅ No known vulnerabilities found (49 packages scanned).

⚖️ License Check

Scanning for any non-commercial-only restrictions. 💰

✅ No license violations found.

Policy: Apache 2.0 (universal donor). StrongCopyleft / NetworkCopyleft / WeakCopyleft / Other / Error categories fail. MPL allowed.

📊 Coverage

Testing the resilience of our codebase. 🧱

80.4% total coverage

Per-file coverage (3 files)
File Coverage Missing lines
padacioso/version.py 0.0% 5
padacioso/opm.py 80.8% 78
padacioso/__init__.py 81.0% 63

Full report: download the coverage-report artifact.

🔍 Lint

I've gathered the facts for your review. 📖

ruff: issues found — see job log

🔌 Plugin Detection

Ensuring the plugin is 'future-proof'. 🔮

Plugin Status: ERRORS (1)

Plugin Info:

  • Name: padacioso
  • Description: dead simple intent parser

OPM Detection:

Plugin Type Wheel Editable
pipeline

Entry Point Validation:

Entry Point Type Import Interface
ovos-padacioso-pipeline-plugin pipeline ✅ 898ms

⊘ No settingsmeta.json
requires-python >=3.8 — running Python 3.11

Issues:

  • ❌ Import time for ovos-padacioso-pipeline-plugin exceeds 500ms (898ms)
  • ⚠️ No settingsmeta.json found
  • ⚠️ No settingsmeta.json found

🔨 Build Tests

Build test complete! Let's see if everything fits together. 🧩

✅ All versions pass

Python Build Install Tests
3.10
3.11
3.12
3.13
3.14

Processing... Done! Have a productive day! ☕

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant