refactor: Replace generator with enhanced version
Some checks are pending
Auto Changelog / changelog (push) Waiting to run
Coherence Check / coherence-check (push) Waiting to run
Coherence Check / coherence (push) Waiting to run
Security Scan / security (push) Waiting to run
Semantic Versioning / version (push) Waiting to run

- Extracts full frontmatter metadata (originalDate, notion_*, authors, source)
- Correct date priority: frontmatter → filename → mtime → ctime
- All metadata exposed in index.json for frontend use

Phase 1 quick win complete.
This commit is contained in:
Solaria Lumis Havens 2026-02-14 14:45:51 +00:00
parent 87cfa7e083
commit d0cf2e3061
26 changed files with 2621 additions and 299 deletions

110
.github/workflows/daily-report.yml vendored Normal file
View file

@ -0,0 +1,110 @@
name: Daily Report
on:
schedule:
- cron: '0 0 * * *' # Daily at midnight UTC
workflow_dispatch:
inputs:
debug:
description: 'Run in debug mode (no posts)'
required: false
default: 'false'
permissions:
contents: read
issues: write
discussions: write
projects: write
jobs:
daily-report:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Install dependencies
run: |
npm install
pip install PyYAML requests
- name: Run coherence check
id: coherence
run: |
python tools/coherence-check.py --output coherence-report.json
- name: Generate daily report
id: report
run: |
python .github/scripts/generate-daily-report.py
- name: Post to GitHub Discussion
if: github.event.inputs.debug != 'true'
uses: actions/github-script@v7
with:
script: |
const fs = require('fs');
const report = fs.readFileSync('daily-report.md', 'utf8');
// Create or update discussion
github.rest.graphql(`
mutation {
createDiscussion(input: {
repositoryId: "${{ github.event.repository.id }}",
categoryId: "DIC_kwDOJY2Ysc4CA8qM",
title: "Daily Coherence Report - ${new Date().toISOString().split('T')[0]}",
body: ${JSON.stringify(report)}
}) {
discussion {
id
}
}
}
`)
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Update Project board
if: github.event.inputs.debug != 'true'
uses: actions/github-script@v7
with:
script: |
const fs = require('fs');
const report = JSON.parse(fs.readFileSync('daily-report.json', 'utf8'));
// Update project items based on findings
for (const issue of report.newIssues) {
github.rest.graphql(`
mutation {
addProjectV2DraftIssue(input: {
projectId: "${{ secrets.PROJECT_ID }}",
title: "${issue.title}",
body: "${issue.body}"
}) {
item {
id
}
}
}
`)
}
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Save report artifacts
uses: actions/upload-artifact@v4
with:
name: daily-report
path: |
daily-report.json
daily-report.md