Skip to content

chore: track with mossaic action v0.7.0 - #13

Merged
vyncint merged 1 commit into
mainfrom
chore/mossaic-0.7.0
Sep 6, 2026
Merged

chore: track with mossaic action v0.7.0#13
vyncint merged 1 commit into
mainfrom
chore/mossaic-0.7.0

Conversation

@vyncint

@vyncint vyncint commented Sep 6, 2026

Copy link
Copy Markdown
Owner

Bumps the action pin from @v0.6.0 to @v0.7.0.

Why this is not cosmetic

version: is left on latest deliberately — "this repository is where a mossaic release gets exercised against a real contribution graph". So this repository was already running mossaic-art 0.7.0 from crates.io, through the 0.6.0 action wrapper. The two fixes that matter here live in action.yml, not in the tool, so the bump is what actually delivers them:

The midnight split (mossaic#79). The 0.6.0 wrapper runs the tracker twice, --format json then --format markdown, and each run makes its own GraphQL query and its own Local::now(). This repository splits the halves by design — track.yml gates on steps.art.outputs.today-short (the json call) and posts steps.art.outputs.markdown (the second). The cron is 23:30 local with a cargo install ahead of it, so a delayed run lands on the boundary, and then the gate and the message are about different days with nothing in the message saying so. The 0.7.0 wrapper pins the markdown call to the date the json call reported.

The empty subject (mossaic#91). fail-on: holed interpolated the text: input, which is empty by construction for a matrix: plan like this one, so the annotation read ::error:: can no longer be drawn cleanly this year. fail-on is never here today — but it is one line from not being, and this plan's verdict is already holed.

Verified before bumping

Run against this repository's own heart.art and plan inputs with 0.7.0:

json ok:  text=Heart  year=2026  start_week=35  columns=11  verdict=holed

### Heart · 2026 · week 35, 11 columns

**Cannot be drawn cleanly** — 14 days inside the letters are already lit, and nothing takes them away.

Two visible changes in what gets posted, both improvements:

  • the markdown header now carries · week 35, 11 columns — the placement guard README.md describes ("the plan is these inputs, and changing one compares against a different plan"), which no report line used to carry;
  • the holed sentence reads as a sentence again. 0.6.3 had moved the verb in front of "inside the letters", so it described the letters as lit rather than the days.

Also

The ("0.5.0") example in the version: comment goes to ("0.7.0") — it was illustrating a pin two releases behind the one actually in use.

Not done here

  • start-week and columns are now outputs (mossaic#88), which is what would turn README's placement guard into an actual assertion — a step that fails if steps.art.outputs.start-week != '35'. That is a new CI step rather than a version bump, so it is left for a follow-up.
  • zizmor --persona=pedantic reports 20 findings on .github/workflows/ here, byte-identical before and after this change — pre-existing, and this repository has no zizmor job. Out of scope for a bump, but worth its own issue: mossaic fixed the equivalent in its shipped example template in 0.7.0.

The pin was `@v0.6.0` while `version:` is left on `latest`, so this
repository was already running **mossaic-art 0.7.0** from crates.io through
the **0.6.0 action wrapper** — and the two fixes that matter here live in
`action.yml`, not in the tool:

- **The midnight split.** The 0.6.0 wrapper runs the tracker twice,
  `--format json` then `--format markdown`, and each run makes its own
  GraphQL query and its own `Local::now()`. Across a local midnight the two
  halves land on different days: the gate reads `today-short` from the first
  call and the issue comment carries the body of the second. This repository
  splits them by design — track.yml gates on `steps.art.outputs.today-short`
  and posts `steps.art.outputs.markdown` — and its cron is 23:30 local, with
  a `cargo install` ahead of it, so a delayed run lands on the boundary. The
  0.7.0 wrapper pins the markdown call to the date the json call reported.
- **The empty subject.** `fail-on: holed` interpolated the `text:` input,
  which is empty by construction for a `matrix:` plan like this one, so the
  annotation read " can no longer be drawn cleanly this year". `fail-on` is
  `never` here today, but it is one line from not being.

Verified against this repository's own `heart.art` and plan inputs before
bumping: the json parses, `start_week` is 35 and `columns` is 11, and the
posted markdown now carries `### Heart · 2026 · week 35, 11 columns` — the
placement guard README.md describes and no report line used to carry. The
holed sentence also reads as a sentence again ("14 days inside the letters
are already lit, and nothing takes them away"); 0.6.3 had moved the verb so
it described the letters rather than the days.

The `("0.5.0")` example in the `version:` comment goes to `("0.7.0")` in the
same pass — it was illustrating a pin two releases behind the one in use.

Signed-off-by: Vyncint Ng <115854244+vyncint@users.noreply.github.com>
@vyncint
vyncint merged commit 30182c6 into main Sep 6, 2026
8 checks passed
@vyncint
vyncint deleted the chore/mossaic-0.7.0 branch September 6, 2026 06:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant