Venue Ranking Evidence
Resolve venues, report source-specific observations, and preserve official-page proof. Use the runtime for deterministic matching, provenance, and artifacts; use judgment only to explain ambiguity and provider limitations.
Live paths: ICORE (conference ranks, edition discovery, optional browser proof)
and DOAJ (public journal membership CSV; live or import; always
currentness-unconfirmed; proof-ineligible). CCF, SCImago, Scopus, Web of Science
Master Journal List, JCR, JUFO, the Norwegian Register, and Conference Ranks
accept authorized normalized CSV/JSON imports only. Imports remain
currentness-unconfirmed. Conference Ranks is secondary-legacy and must never
be presented as latest.
Required workflow
- Run
doctorwhen runtime or browser readiness is unknown. - Run
sources list|show|checkto confirm capabilities, optional--data-filepreflight, and deferred-source notes. - Run
lookupwith the user's text and requested sources. Inspect the delivery matrix (status,match_status,source_coverage_status,incomplete_analysis,requested_sources/satisfied_sources/missing_or_blocked). Never treatreadyas multi-source completeness unless every requested source is satisfied. - Separate observations by source, assertion kind, scheme, category or collection, and metric year or edition. Never summarize a venue as merely “Q1”, “ranked”, “Scopus”, or “WoS”.
- Unique exact-identifier / exact-title / exact-alias identity resolves even when
weaker fuzzy candidates remain; fuzzy-only short acronyms stay ambiguous.
Full candidates remain in
matches.jsonl(display may be top-K). - If proof is requested and identity is ambiguous, obtain an explicit
--venue-idselection first. Unique exact-tier resolution may auto-select for proof. - Run
proofonly for ICORE public detail pages with the reviewed association adapter, thenverify. DOAJ and imports are proof-ineligible. - Report freshness, access, and evidence gaps. Use incomplete analysis when material requested sources remain blocked or identity is unresolved.
Read these references as needed:
references/source-policy.mdbefore live lookup, refresh, or source addition.references/matching-policy.mdfor ambiguous identities or aliases.references/artifact-schema.mdwhen inspecting or consuming run artifacts.references/proof-contract.mdbefore capturing or validating proof.references/privacy-licensing-policy.mdfor authenticated, subscription, or restricted providers.references/deferred-roadmap.mdfor Phase D public-live and licensed-API work.
Runtime
POSIX:
bash "${AAS_RUNTIME_ROOT:-$HOME/.local/share/ai-agents-skills/runtime}/run_skill.sh" \
skills/venue-ranking-evidence/run_venue_ranking_evidence.sh \
lookup --dir /path/to/run --query "ISAAC" --source icore --offline
Windows PowerShell:
$runtime = if ($env:AAS_RUNTIME_ROOT) { $env:AAS_RUNTIME_ROOT } else { "$env:LOCALAPPDATA\ai-agents-skills\runtime" }
& "$runtime\run_skill.ps1" `
"skills/venue-ranking-evidence/run_venue_ranking_evidence.ps1" `
lookup --dir "$env:TEMP\venue-ranking-run" --query "TCS" --offline
On Windows, use the PowerShell command above; CMD runtime entrypoints are not published.
The POSIX wrapper honors VENUE_RANKING_EVIDENCE_PYTHON, then
AAS_RUNTIME_PYTHON, before falling back to python3 and python. Browser
proof capture requires Chromium, Chrome, or Edge. Proof marker verification
also requires Poppler's pdftotext on PATH. Run doctor to inspect both.
Useful verbs:
doctorsources list|show|checksources check --source <id> --data-file <id>=<path>(import preflight)sources validate|add --descriptor <file> --registry-dir <dir>lookup --dir <run> --query <text> [--source <id> ...]lookup ... --data-file <source-id>=<csv-or-json>lookup ... --venue-type journal|conference|...(repeatable)lookup ... --max-candidates N/--include-all-candidatesproof --dir <run> --observation-id <id> [--venue-id <id>]report|verify|purge --dir <run>cache status|refresh|purgesmoke
Live operations require both --allow-network and --allow-source <id>.
| Source | Live | Freshness when live | Proof |
|---|---|---|---|
icore |
yes (icore-csv) |
verified-current / historical |
yes (detail page) |
doaj |
yes (doaj-csv public export) |
always currentness-unconfirmed |
no |
| other built-ins | no | import currentness-unconfirmed |
no |
Offline ICORE cache demotes formerly-current rows to currentness-unconfirmed.
Output contract
lookup prints and writes delivery.json with:
status:readyonly when identity is resolved (match_status=matched), every requested source is satisfied (source_coverage_statuscomplete or not-requested), and analysis is not incomplete.match_status:matched|ambiguous|unmatchedsource_coverage_status:complete|partial|empty|not-requestedincomplete_analysis: true when coverage is partial/empty, identity is ambiguous, or a journal-path gap appliesrequested_sources/satisfied_sources/missing_or_blockedtotal_candidates/displayed_candidates/resolved_venue_id/ambiguity_requires_selection
For each candidate, show title, type, identifiers, aliases, match method, and one observation row per source assertion (kind, scheme, category/collection, value, edition/year, freshness, official URL). Index membership is not a rank.
Proof rules
Browser Print-to-PDF is not a pixel-identical screen capture. Preserve raw PDF,
full-page PNG, sidecars, and manifest fields from runtime. Only verify can
return VERIFIED. No login, CAPTCHA, or browser-profile reuse. Proof is limited
to the public unauthenticated ICORE detail page.
Source extension boundary
User-added declarative CSV/JSON sources need validated descriptors without executable hooks or reviewed proof association adapters. New live adapters need reviewed built-in code and fixtures.
Built-in user-export normalized columns: required canonical_title and
value; optional identity/metric fields as documented in
references/artifact-schema.md. DOAJ raw public CSV is accepted via live fetch
or --data-file doaj=... through the built-in DOAJ parser.