ENGLISH·COURSE API
    Preparing search index...

    Driven adapter: S3-backed BlobStore.

    Resolves an object path within ONE bucket. It knows nothing about content keys or routing — RoutingBlobStore decides which store owns a key and composes the object path before delegating here, so prefix composition lives in one place rather than being repeated across drivers.

    A private bucket has no publicUrl, and S3BlobStore.url refuses rather than inventing one; such stores are reached through the signing endpoint, which calls S3BlobStore.signedUrl.

    Credentials come from the ambient AWS credential chain (environment, profile, instance role) — never from the location manifest, which is tracked in git.

    Implements

    Index

    Methods

    • Returns whether a blob for the given key exists in the underlying store. Used by the seed generator to verify content is present, and by future code paths that need to surface "missing media" states.

      Parameters

      • objectPath: string

      Returns Promise<boolean>

    • Reads a bounded UTF-8 text blob for a known text key. Implementations MUST validate that the key is safe (no absolute prefixes, no .. path segments) and reject keys that point to binary asset types before returning any text. Missing or non-text keys reject; the read is not a general arbitrary-path API.

      Parameters

      • objectPath: string

      Returns Promise<string>