summaryrefslogtreecommitdiff
path: root/src/srht_contrib/models.py
diff options
context:
space:
mode:
authorChristian Cleberg <[email protected]>2026-04-11 21:32:49 -0500
committerChristian Cleberg <[email protected]>2026-04-11 21:32:49 -0500
commit533866679755bd6e7a97cfa0f050eaa832b0b373 (patch)
tree8f2ca7dd89661be972cd5750ed991862aa0fe8da /src/srht_contrib/models.py
parentfe5efeb33639e963029c3a118ccc2e98bafccb58 (diff)
downloadhutch-stats-533866679755bd6e7a97cfa0f050eaa832b0b373.tar.gz
hutch-stats-533866679755bd6e7a97cfa0f050eaa832b0b373.tar.bz2
hutch-stats-533866679755bd6e7a97cfa0f050eaa832b0b373.zip
fix: reduce sr.ht poll API load with cached repo discovery
Diffstat (limited to 'src/srht_contrib/models.py')
-rw-r--r--src/srht_contrib/models.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/srht_contrib/models.py b/src/srht_contrib/models.py
index 475bd22..e0725ff 100644
--- a/src/srht_contrib/models.py
+++ b/src/srht_contrib/models.py
@@ -81,6 +81,16 @@ class TrackedActor(Base):
last_backfill_error: Mapped[str | None] = mapped_column(Text, nullable=True)
+class DiscoveredRepository(Base):
+ __tablename__ = "discovered_repositories"
+ __table_args__ = (UniqueConstraint("actor", "name", name="uq_discovered_repository_actor_name"),)
+
+ id: Mapped[int] = mapped_column(Integer, primary_key=True)
+ actor: Mapped[str] = mapped_column(String(255), nullable=False)
+ name: Mapped[str] = mapped_column(String(255), nullable=False)
+ discovered_at: Mapped[datetime] = mapped_column(DateTime(timezone=True), nullable=False)
+
+
class ServiceBackfillState(Base):
__tablename__ = "service_backfill_states"
__table_args__ = (UniqueConstraint("actor", "service", "scope", name="uq_service_backfill_state_actor_service_scope"),)