{"uid":"cap_QZiQV0dzUBR-VUvBsiFsP","slug":"nntp-current-article-selector-cursor-503f4c81","name":"NNTP Current Article Selector Cursor","description":"An offline NNTP fixture author needs how a sparse selected-group cursor changes under numeric retrieval and nearest-article navigation, while Message-ID retrieval of crossposted or ungrouped articles preserves the current group and number.","url":"https://detect.halowerk.com/v1/F-A-NIGHT-PROTOCOL-NNTP/nntp-current-article-selector-cursor?utm_source=zero.xyz","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"artifact":{"type":"object","required":["nntp_cursor"],"properties":{"nntp_cursor":{"type":"object","required":["available_article_ids","claim","events","groups"],"properties":{"claim":{"type":"number","maximum":1000000000000,"minimum":-1000000000000},"events":{"type":"array","items":{"type":"object","required":["op"],"properties":{"op":{"type":"string","maxLength":1024},"group":{"type":"number","maximum":1000000000000,"minimum":-1000000000000},"number":{"type":"number","maximum":1000000000000,"minimum":-1000000000000},"selector":{"type":"string","maxLength":1024},"article_id":{"type":"number","maximum":1000000000000,"minimum":-1000000000000}},"additionalProperties":false},"maxItems":512},"groups":{"type":"array","items":{"type":"object","required":["articles","id"],"properties":{"id":{"type":"number","maximum":1000000000000,"minimum":-1000000000000},"articles":{"type":"array","items":{"type":"object","required":["article_id","number"],"properties":{"number":{"type":"number","maximum":1000000000000,"minimum":-1000000000000},"article_id":{"type":"number","maximum":1000000000000,"minimum":-1000000000000}},"additionalProperties":false},"maxItems":512}},"additionalProperties":false},"maxItems":512},"available_article_ids":{"type":"array","items":{"type":"number","maximum":1000000000000,"minimum":-1000000000000},"maxItems":512}},"additionalProperties":false}},"additionalProperties":false}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.003","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.003/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.003","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.003","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_XzsjtNn-xCsSKBMzI6ILC","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.003","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Simulates and validates how an NNTP cursor changes under numeric retrieval, nearest-article navigation, and Message-ID retrieval across groups and crossposted articles.","exampleAgentPrompt":"I need to simulate an NNTP cursor with groups containing articles at numbers [1,3,7] and available article IDs [101,102,103], then apply a sequence of events including a numeric retrieval op and a nearest-article navigation op — can you compute the resulting cursor state including which group and article number are currently selected?","exampleUseCases":[{"title":"Offline NNTP fixture cursor validation","prompt":"I'm building an offline NNTP test fixture and need to verify that after selecting a group and then retrieving article number 5 by numeric op, the cursor correctly reflects the new current group ID and article number — can you run that simulation with group ID 42 containing articles at numbers [3,5,8] and article IDs [201,202,203]?"},{"title":"Crossposted article Message-ID retrieval test","prompt":"I want to confirm that when my NNTP client fetches a crossposted article using a Message-ID selector, the current group and article number on the cursor remain unchanged — can you simulate this with a cursor in group 10 at article number 4, applying a Message-ID retrieval event?"},{"title":"Nearest-article navigation on sparse article list","prompt":"My NNTP group has sparse article IDs — available IDs are [5,12,30] in group 7 at numbers [1,2,3] — and I need to know what the cursor looks like after applying a nearest-article navigation event starting from article number 2."}],"resultDescription":"Returns the computed NNTP cursor state after applying the specified sequence of navigation and retrieval events, including the current group, current article number, and updated available article positions reflecting the operations performed.","failureModes":["Invalid event op string causes rejection","Article ID not found in available_article_ids returns error","Group ID not found in groups array causes navigation failure","Exceeding 512 items in events, groups, or available_article_ids arrays causes schema validation failure","Malformed cursor object missing required fields returns 400"],"whenToPreferThis":"Use this endpoint when you need deterministic, offline simulation of NNTP cursor state transitions for protocol testing, fixture generation, or compliance validation — especially when testing sparse article sets, crossposted article navigation, or Message-ID retrieval semantics where cursor preservation must be verified.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-11-04T06:40:04.059Z","isFirstParty":false,"canonicalSlug":"nntp-current-article-selector-cursor-503f4c81"}