Skip to content

World state store API page has no Go tabs: parse_go.py hardcodes a skip for the service #5198

Description

@btshrewsbury-viam

Problem

The world state store API reference documents Python and TypeScript only. Every method section in the generated include (static/include/services/apis/generated/world_state_store.md) has Python and TypeScript tabs but no Go tab.

This has become a visible gap: the Visualization section (#5099) teaches implementing the service in Go (Publish visuals from a module), so the API page contradicts the how-to that links to it — the language the docs teach is the one language the API page omits.

Root cause

.github/workflows/parse_go.py skips the service unconditionally:

for resource in viam_resources:

    if resource == "world_state_store":
        print(f'Skipping Resource: {resource}')
        continue

The skip landed with the page itself in DOCS-4335 (#4642, 2025-09-12), presumably because the Go package was not yet published to pkg.go.dev, so the scraper had nothing to read.

Why it can be removed now

  • https://pkg.go.dev/go.viam.com/rdk/services/worldstatestore now returns 200.
  • RDK v1.0.0-rc0 ships the full client interface with doc comments and usage examples (services/worldstatestore/world_state_store.go):
type Service interface {
    resource.Resource
    ListUUIDs(ctx context.Context, extra map[string]any) ([][]byte, error)
    GetTransform(ctx context.Context, uuid []byte, extra map[string]any) (*commonpb.Transform, error)
    StreamTransformChanges(ctx context.Context, extra map[string]any) (*TransformChangeStream, error)
}
  • update_sdk_methods.py already maps the service's proto (world_state_store_grpc.pb.go) and includes it in its services list, so only the Go parser opts out.

Fix

  1. Remove the world_state_store skip from parse_go.py.
  2. Run the SDK-methods update and check the generated Go tabs for ListUUIDs, GetTransform, and StreamTransformChanges (the streaming return, *TransformChangeStream with its Next()/io.EOF iterator, is the one likely to need a template tweak).
  3. Confirm the regenerated world_state_store.md and world_state_store-table.md build clean.

Done when

The world state store API page shows Go alongside Python and TypeScript for all three service methods, matching the Go how-to at /visualization/publish-visuals-from-a-module/.

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions