Skip to content

Commit a97764d

Browse files
committed
Improves SEO and data fetching in job search
Adds metadata for better SEO and social sharing. Refines data fetching logic in job searches using the existing baseline predicate to avoid redundant filtering.
1 parent 9b30860 commit a97764d

2 files changed

Lines changed: 15 additions & 6 deletions

File tree

docs/assets/social-card.png

84.5 KB
Loading

docs/index.html

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,17 @@
44
<meta charset="UTF-8">
55
<meta name="viewport" content="width=device-width, initial-scale=1.0">
66
<title>Do it with GUSTO</title>
7+
<meta name="description" content="GUSTO is a lightweight .NET background job runner that gives you the worker while letting you own storage, orchestration, and extensions such as batching, continuations, cron, retries, observability, and testing." />
8+
<meta name="keywords" content="GUSTO, .NET job runner, background jobs, batching, continuations, cron, retries, OpenTelemetry, ByteBard, job queue, background service" />
9+
<meta property="og:title" content="Do it with GUSTO" />
10+
<meta property="og:description" content="Sample-driven guide for extending the GUSTO job runner: start with the stock worker, then bolt on batching, continuations, cron scheduling, retries, observability, and testing helpers." />
11+
<meta property="og:type" content="website" />
12+
<meta property="og:url" content="https://github.com/ByteBardOrg/GUSTO" />
13+
<meta property="og:image" content="https://github.com/ByteBardOrg/GUSTO/raw/main/assets/social-card.png" />
14+
<meta name="twitter:card" content="summary_large_image" />
15+
<meta name="twitter:title" content="Do it with GUSTO" />
16+
<meta name="twitter:description" content="Guided scenarios for extending the GUSTO job runner with batching, continuations, cron, retries, observability, and testing techniques." />
17+
<meta name="twitter:image" content="https://github.com/ByteBardOrg/GUSTO/raw/main/assets/social-card.png" />
718
<link rel="preconnect" href="https://fonts.googleapis.com">
819
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
920
<link href="https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:wght@400;500&family=Bricolage+Grotesque:wght@600&family=Chivo:wght@500;600&family=IBM+Plex+Mono:wght@400;500&display=swap" rel="stylesheet">
@@ -145,13 +156,11 @@ <h2>Full EF Core provider (Storage + Scheduling brain)</h2>
145156
JobSearchParams&lt;JobRecord&gt; parameters,
146157
CancellationToken cancellationToken)
147158
{
148-
var now = DateTime.UtcNow;
149-
150-
// Parameters are used by the worker to provide a base filter (IsComplete && !Expired && ExecuteAfter > Now)
151-
// These are expected in all implementations, but can be built upon.
152-
return _context.JobRecords
159+
// parameters.Match already contains the worker's baseline predicate (see FAQ)
160+
return await _context.JobRecords
153161
.Where(parameters.Match.Compile())
154-
.Take(parameters.Limit);
162+
.Take(parameters.Limit)
163+
.ToListAsync(cancellationToken);
155164
}
156165

157166
public async Task MarkJobAsCompleteAsync(JobRecord jobStorageRecord, CancellationToken cancellationToken)

0 commit comments

Comments
 (0)