Skip to content

addressed coverage and docs issues#98

Merged
wpak-ai merged 5 commits into
cppalliance:mainfrom
jonathanMLDev:bugfix/coverage-docs-changelog
May 19, 2026
Merged

addressed coverage and docs issues#98
wpak-ai merged 5 commits into
cppalliance:mainfrom
jonathanMLDev:bugfix/coverage-docs-changelog

Conversation

@jonathanMLDev
Copy link
Copy Markdown
Collaborator

@jonathanMLDev jonathanMLDev commented May 18, 2026

Pull Request

Coverage & changelog

  • vitest.config.ts — Global coverage.thresholds (lines 73, statements 72, branches 58, functions 76) from the last measured run, with a short rationale comment.
  • CHANGELOG.md — [Unreleased] updated: explicit threshold percents, docs/examples/link-check bullets, CI quality job description.

Docs (docs/)

  • docs/README.md — Index of all guides.
  • docs/TOOLS.md — All 9 tools: parameters, success shapes, suggest-flow, namespace consistency, rerank/reranked behavior and pointer to migration/README errors.
  • docs/CONFIGURATION.md — ServerConfig, env vars, CLI flags, precedence.
  • docs/SECURITY.md — Keys, logger redaction patterns, Dockerfile non-root user, reporting.
  • docs/CONTRIBUTING.md — Setup and npm scripts.
  • docs/CI_CD.md — ci.yml matrix, CodeQL, SBOM, Codecov, publish workflow.
  • docs/FAQ.md — Common questions.
  • docs/MIGRATION.md — v0.2.0-style section: four breaking themes + namespace trimming.
  • docs/RELEASING.md — Release → npm flow.

Examples

  • examples/suggest-flow-demo.ts, examples/guided-query-demo.ts, examples/library-embedding-demo.ts — Same @will-cppa/pinecone-read-only-mcp import style as the existing demo; gated paths print doc-only mode without PINECONE_API_KEY.
  • examples/README.md — Table updated for all four demos.

README

  • Doc table: docs/RELEASING.md, docs/CONTRIBUTING.md, docs/SECURITY.md (fixes previously broken root-only links).
  • Library embedding subsection — single-process setupServer guidance (no teardownServer in code yet; recommends separate processes until a lifecycle API ships).
  • Examples table + run line.
  • Success payloads note → docs/TOOLS.md for rerank / degraded envelope status.

CI & link check

  • .github/workflows/ci.yml — quality job runs markdown-link-check on README.md, CHANGELOG.md, and every docs/**/*.md.
  • .markdown-link-check.json — Skips http(s):// and mailto: so CI validates relative links only (avoids flaky external/mailto checks).

Related Issues

close #90
close #92
close #93
close #95

Summary by CodeRabbit

Release Notes

  • Documentation

    • Added comprehensive guides for configuration, security, tools reference, migration, contribution, CI/CD, and FAQ.
    • Expanded README with library embedding details and examples table.
    • New migration guide for version 0.2.0 updates.
  • New Features

    • Three new example scripts demonstrating suggest-flow, guided-query, and library-embedding patterns.
  • Tests

    • Added coverage threshold enforcement to reduce flakiness.
  • Chores

    • Enhanced CI with markdown link validation.
    • Updated benchmark baseline data.

Review Change Stack

@jonathanMLDev jonathanMLDev self-assigned this May 18, 2026
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 18, 2026

Warning

Rate limit exceeded

@jonathanMLDev has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 34 minutes and 25 seconds before requesting another review.

You’ve run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 29a72b16-c54e-482e-a4e9-3724e8458383

📥 Commits

Reviewing files that changed from the base of the PR and between 327b5ad and 7cd8945.

📒 Files selected for processing (9)
  • .github/workflows/ci.yml
  • CHANGELOG.md
  • README.md
  • docs/CI_CD.md
  • docs/CONTRIBUTING.md
  • docs/SECURITY.md
  • examples/library-embedding-demo.ts
  • package.json
  • scripts/docs-link-check.mjs
📝 Walkthrough

Walkthrough

This PR fulfills four linked issues by delivering a comprehensive documentation ecosystem: eight new guide documents (TOOLS, CONFIGURATION, SECURITY, CONTRIBUTING, CI_CD, FAQ, MIGRATION, docs/README), three worked examples (suggest-flow, guided-query, library-embedding), CI markdown-link validation, vitest coverage thresholds, and updated benchmarks to address missing documentation, migration guidance, examples, and coverage enforcement.

Changes

Documentation Ecosystem and Examples Suite

Layer / File(s) Summary
Documentation navigation and root README updates
README.md, docs/README.md, .github/workflows/ci.yml, .markdown-link-check.json, CHANGELOG.md
Root README now links to docs/ guides and clarifies library embedding and rerank behavior. docs/README.md serves as an index to TOOLS, CONFIGURATION, SECURITY, CONTRIBUTING, CI_CD, FAQ, MIGRATION, and RELEASING guides. CI adds a markdown-link-check step validating all internal documentation links using a centralized configuration file. CHANGELOG documents the expanded CI matrix, quality checks, vitest coverage thresholds, and @vitest/coverage-v8 addition.
Core reference documentation
docs/TOOLS.md, docs/CONFIGURATION.md, docs/SECURITY.md, docs/CONTRIBUTING.md
TOOLS.md documents 9 MCP tools with suggest-flow gate rules, request/response shapes, tool ordering constraints, and a cheat sheet for manual vs. single-shot flows. CONFIGURATION.md specifies precedence order (CLI > env > defaults), all ServerConfig fields with environment mappings, CLI flag mappings, and library embedding sequence. SECURITY.md covers API key handling, log redaction, Docker hardening, supply-chain controls (npm audit, SBOM), and vulnerability reporting. CONTRIBUTING.md details Node/npm setup, npm scripts, TypeScript strictness conventions, and documentation maintenance.
Specialized guides
docs/CI_CD.md, docs/FAQ.md, docs/MIGRATION.md, docs/RELEASING.md
CI_CD.md documents the CI matrix job (OSes, Node versions, SBOM, Codecov), quality job (npm audit, markdown-link-check), CodeQL scanning, and GitHub Release publish workflow. FAQ.md clarifies suggest-flow gating for query, documents query preset unification, and explains testing bypass via environment variable. MIGRATION.md provides v0.2.0 upgrade guide: namespace trimming, ToolError shape replacement, status: 'error' field removal, recommended_tool value changes, and query_fast/query_detailedquery consolidation. RELEASING.md describes GitHub Release-triggered publish workflow, NPM_TOKEN secret, and SERVER_VERSION sourcing.
Worked examples demonstrating key workflows
examples/README.md, examples/suggest-flow-demo.ts, examples/guided-query-demo.ts, examples/library-embedding-demo.ts
examples/README.md links to three new example scripts. suggest-flow-demo.ts demonstrates the multi-step suggest-then-query workflow with namespace trimming and preset alignment. guided-query-demo.ts demonstrates single-call guided_query orchestration with decision trace output and config resolution. library-embedding-demo.ts demonstrates programmatic setupServer usage with setPineconeClient initialization. All include error handling and conditional execution based on PINECONE_API_KEY.
Test infrastructure: vitest coverage thresholds and benchmarks
vitest.config.ts, benchmarks/baseline.json
vitest.config.ts adds documented global coverage gates (lines, statements, branches, functions) with explicit threshold values to enforce regression detection. benchmarks/baseline.json establishes baseline measurements: generated timestamp, Node.js version, warmup/measured iteration counts, and percentile timings (p50, p95, p99) for all named benchmark scenarios.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Suggested labels

enhancement

Suggested reviewers

  • wpak-ai
  • AuraMindNest

Poem

📚 The docs arrived like spring blooms,
Nine tools mapped in spacious rooms,
From config tips to examples run,
The repository's knowledge is now one.
Link-checked and covered—let the tests have fun! 🐰

🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (1 warning, 1 inconclusive)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Title check ❓ Inconclusive Title is vague and generic, using non-descriptive terms like "addressed issues" without conveying the primary scope or nature of changes. Use a more specific title that highlights the main contribution, e.g., 'Add comprehensive documentation, examples, and coverage thresholds' or 'Document tools, config, security, and add worked examples'.
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Linked Issues check ✅ Passed All four linked issues (#90, #92, #93, #95) are comprehensively addressed: docs/ directory created with 8+ files, MIGRATION.md with breaking changes, three worked examples added, and vitest coverage thresholds configured.
Out of Scope Changes check ✅ Passed All changes are within scope of the four linked issues. Updates to .github/workflows/ci.yml and .markdown-link-check.json support the docs link-check requirement (#90). Updates to README.md and examples/ directly fulfill acceptance criteria. No unrelated changes detected.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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 and usage tips.

@codecov
Copy link
Copy Markdown

codecov Bot commented May 18, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
⚠️ Please upload report for BASE (main@66fe34a). Learn more about missing BASE report.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #98   +/-   ##
=======================================
  Coverage        ?   80.04%           
=======================================
  Files           ?       34           
  Lines           ?     1258           
  Branches        ?      421           
=======================================
  Hits            ?     1007           
  Misses          ?      249           
  Partials        ?        2           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@docs/CONTRIBUTING.md`:
- Line 11: Replace the incorrect repository URL string "git clone
https://github.com/CppDigest/pinecone-read-only-mcp-typescript.git" in
CONTRIBUTING.md with the correct upstream clone command "git clone
https://github.com/cppalliance/pinecone-read-only-mcp-typescript.git" so new
contributors clone the intended repo; update any surrounding text if it repeats
the wrong hostname.

In `@examples/library-embedding-demo.ts`:
- Around line 25-27: The code currently supplies a dummy API key via the apiKey
const and then calls resolveConfig; instead require PINECONE_API_KEY explicitly:
remove the 'demo-key-for-types' fallback, read and trim
process.env['PINECONE_API_KEY'], and if it's missing or empty log/print a clear
doc-only message and exit early (before calling resolveConfig) so resolveConfig
isn't invoked with a fake key; update references to the apiKey variable and the
resolveConfig call in examples/library-embedding-demo.ts accordingly.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: c7259842-75ea-447c-97d8-4f5d976534bc

📥 Commits

Reviewing files that changed from the base of the PR and between 4eadc6c and 327b5ad.

📒 Files selected for processing (19)
  • .github/workflows/ci.yml
  • .markdown-link-check.json
  • CHANGELOG.md
  • README.md
  • benchmarks/baseline.json
  • docs/CI_CD.md
  • docs/CONFIGURATION.md
  • docs/CONTRIBUTING.md
  • docs/FAQ.md
  • docs/MIGRATION.md
  • docs/README.md
  • docs/RELEASING.md
  • docs/SECURITY.md
  • docs/TOOLS.md
  • examples/README.md
  • examples/guided-query-demo.ts
  • examples/library-embedding-demo.ts
  • examples/suggest-flow-demo.ts
  • vitest.config.ts

Comment thread docs/CONTRIBUTING.md Outdated
Comment thread examples/library-embedding-demo.ts Outdated
Comment thread docs/SECURITY.md Outdated
Comment thread .github/workflows/ci.yml Outdated
@jonathanMLDev jonathanMLDev requested a review from wpak-ai May 19, 2026 05:40
@wpak-ai wpak-ai merged commit 1b19429 into cppalliance:main May 19, 2026
12 checks passed
@coderabbitai coderabbitai Bot mentioned this pull request May 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

3 participants