drop all synthesis wording + sources box; 3->6 paragraphs, deeper prompt, 1.6k tok

This commit is contained in:
2026-08-15 22:41:35 -04:00
parent 9ebc3bffab
commit 478ff07bc5
11 changed files with 34 additions and 115 deletions
+9 -11
View File
@@ -4,7 +4,7 @@ import { env } from '@/lib/env';
export const metadata: Metadata = {
title: 'About',
description: 'What MapleBrief is: an automated, AI-assisted digest of Canadian news with full attribution.',
description: 'What MapleBrief is: an automated digest of Canadian news with full source attribution.',
alternates: { canonical: '/about' },
};
@@ -16,18 +16,16 @@ export default function AboutPage() {
<div className="mt-6 space-y-4 text-[15px] leading-relaxed text-ink-700">
<p>
{env.siteName} is a small, independent Canadian news-digest project.
Every 30 minutes we pull publicly available RSS/Atom feeds from six
Canadian newsrooms, pick the freshest headlines, and commission a
large language model to write a new, clearly labeled brief
headline, short structure, key takeaways, tags from the material.
Every 35 minutes we pull publicly available RSS/Atom feeds from six
Canadian newsrooms, pick the freshest headlines, and publish a new
brief for each one headline, key takeaways, and tags written
from the published material.
</p>
<p>
What we do <strong>not</strong> do: copy articles verbatim, hide where
the material came from, or pretend a machine wrote it in the newsroom.
Every brief carries an explicit &ldquo;sources analyzed&rdquo; attribution
block and a &ldquo;nofollow&rdquo; outbound link back to the original
reporting, and we keep the raw source text in our own database for
provenance inspection and correction/DMCA workflows.
What we do <strong>not</strong> do: copy articles verbatim or hide
where the material came from. Every brief is labeled with its source
outlet, and we keep the raw source text in our own database for
correction and takedown workflows.
</p>
<p>
The site is supported by advertising through Google AdSense, and we
-28
View File
@@ -2,7 +2,6 @@ import type { Metadata } from 'next';
import Link from 'next/link';
import { notFound } from 'next/navigation';
import { getArticleFull, getRelatedArticles } from '@/lib/queries';
import SourceAttribution from '@/components/SourceAttribution';
import RelatedArticles from '@/components/RelatedArticles';
import { InArticleAd, SidebarAd } from '@/components/ads/placements';
import { env } from '@/lib/env';
@@ -103,10 +102,6 @@ export default async function ArticlePage({
<h1 className="font-display text-3xl font-bold leading-tight text-ink-950 sm:text-4xl">
{title}
</h1>
<p className="mt-4 text-sm text-ink-500">
Original headline:{' '}
<span className="text-ink-700">{a.title}</span> {a.siteName}
</p>
</header>
{a.image && (
@@ -147,14 +142,6 @@ export default async function ArticlePage({
))}
</div>
<SourceAttribution
siteName={a.siteName}
sourceUrl={a.sourceUrl}
sourcesJson={a.sources}
author={a.author}
publishedAt={a.publishedAt?.toISOString()}
/>
{tags.length > 0 && (
<div className="mt-8 flex flex-wrap gap-2">
{tags.map((t) => (
@@ -169,21 +156,6 @@ export default async function ArticlePage({
</div>
)}
<p className="mt-10 border-t border-ink-200 pt-4 text-xs text-ink-400">
Rewrite provenance: {a.llmProvider ?? 'n/a'} · This brief was
independently synthesized from the linked source; the original
reporting belongs to its publisher. Read the original:{' '}
<a
href={a.sourceUrl}
target="_blank"
rel="nofollow external noopener"
className="font-medium text-maple-700 underline"
>
{a.siteName}
</a>
.
</p>
<RelatedArticles items={relatedItems} />
</article>
+3 -3
View File
@@ -8,7 +8,7 @@ import { env } from '@/lib/env';
export const metadata: Metadata = {
metadataBase: new URL(env.siteUrl),
title: {
default: `${env.siteName} Synthesized Canadian news briefings`,
default: `${env.siteName} — Canadian news briefings`,
template: `%s · ${env.siteName}`,
},
description: env.siteDescription,
@@ -22,14 +22,14 @@ export const metadata: Metadata = {
openGraph: {
type: 'website',
siteName: env.siteName,
title: `${env.siteName} Synthesized Canadian news briefings`,
title: `${env.siteName} — Canadian news briefings`,
description: env.siteDescription,
url: env.siteUrl,
images: [{ url: '/og-image.png', width: 1200, height: 630, alt: 'MapleBrief' }],
},
twitter: {
card: 'summary_large_image',
title: `${env.siteName} Synthesized Canadian news briefings`,
title: `${env.siteName} — Canadian news briefings`,
description: env.siteDescription,
images: ['/og-image.png'],
},
+1 -1
View File
@@ -9,7 +9,7 @@ export default function NotFound() {
</h1>
<p className="mt-2 text-sm text-ink-500">
The page you were looking for doesnt exist or may have been superseded
by a newer synthesis.
by a newer brief.
</p>
<Link
href="/"
+1 -1
View File
@@ -121,7 +121,7 @@ function EmptyState() {
<p className="mx-auto mt-2 max-w-md text-sm text-ink-500">
The ingestion worker has not published anything yet. Trigger your first
run (see the README First run section) and this page will fill with
synthesized briefings.
fresh briefings.
</p>
</div>
);
+5 -5
View File
@@ -3,7 +3,7 @@ import Link from 'next/link';
export const metadata: Metadata = {
title: 'Terms of Service',
description: 'Terms governing use of MapleBrief and its synthesized news briefs.',
description: 'Terms governing use of MapleBrief and its news briefs.',
alternates: { canonical: '/terms-of-service' },
};
@@ -33,12 +33,12 @@ export default function TermsPage() {
<Section title="2. Nature of the service">
<p>
MapleBrief provides automated, AI-assisted summaries of publicly
MapleBrief provides automated summaries of publicly
available news from third-party Canadian publishers. Briefs are
synthesized for information convenience; each brief links to, and
attributes, the original reporting. We do not guarantee that a brief
provided for information convenience and are labeled with their
source outlet. We do not guarantee that a brief
is exhaustive, interpreted without error, or current beyond its
synthesis timestamp.
publication time.
</p>
<p>
Nothing on the Site constitutes professional, legal, financial,