Squash the current repository state back into one baseline commit while
preserving the README reframing and repository contents.

Constraint: User explicitly requested a single squashed commit with subject "asdf"
Confidence: high
Scope-risk: broad
Reversibility: clean
Directive: This commit intentionally rewrites published history; coordinate before future force-pushes
Tested: git status clean; local history rewritten to one commit; force-pushed main to origin and instructkr
Not-tested: Fresh clone verification after push
This commit is contained in:
did:key:z6MkqDnb7Siv3Cwj7pGJq4T5EsUisECqR8KpnDLwcaZq5TPr
2026-03-31 03:34:03 -07:00
commit d2542c9a62
1903 changed files with 513517 additions and 0 deletions

View File

@@ -0,0 +1,50 @@
import type { LocalCommandResult } from '../../types/command.js'
import {
CHANGELOG_URL,
fetchAndStoreChangelog,
getAllReleaseNotes,
getStoredChangelog,
} from '../../utils/releaseNotes.js'
function formatReleaseNotes(notes: Array<[string, string[]]>): string {
return notes
.map(([version, notes]) => {
const header = `Version ${version}:`
const bulletPoints = notes.map(note => `· ${note}`).join('\n')
return `${header}\n${bulletPoints}`
})
.join('\n\n')
}
export async function call(): Promise<LocalCommandResult> {
// Try to fetch the latest changelog with a 500ms timeout
let freshNotes: Array<[string, string[]]> = []
try {
const timeoutPromise = new Promise<void>((_, reject) => {
setTimeout(rej => rej(new Error('Timeout')), 500, reject)
})
await Promise.race([fetchAndStoreChangelog(), timeoutPromise])
freshNotes = getAllReleaseNotes(await getStoredChangelog())
} catch {
// Either fetch failed or timed out - just use cached notes
}
// If we have fresh notes from the quick fetch, use those
if (freshNotes.length > 0) {
return { type: 'text', value: formatReleaseNotes(freshNotes) }
}
// Otherwise check cached notes
const cachedNotes = getAllReleaseNotes(await getStoredChangelog())
if (cachedNotes.length > 0) {
return { type: 'text', value: formatReleaseNotes(cachedNotes) }
}
// Nothing available, show link
return {
type: 'text',
value: `See the full changelog at: ${CHANGELOG_URL}`,
}
}