Commit Graph

35 Commits

Author SHA1 Message Date
Marcos Paulo 37a1e480c6 Merge branch 'main' into pages 2026-09-05 00:01:25 +00:00
Marcos Paulo aa85c1d0b7 docs: correct the pages publish procedure
`merge --ff-only main` cannot work: the histories diverged some time ago, so
the step fails with `Not possible to fast-forward` and the publish stalls.
Document the normal merge the branch's own history already uses, the stale
local `pages` fast-forward that has to happen first, the take-main-wholesale
conflict resolution, and the tree-equality check that is the real invariant.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-05 00:00:58 +00:00
Marcos Paulo c1bdd37ac6 Merge branch 'main' into pages
# Conflicts:
#	scripts/verify.mjs
#	skills-review/app.js
#	skills-review/index.html
2026-09-04 23:55:22 +00:00
Marcos Paulo e2bcfff5ab feat: add reader vote widget and vote-service
The skills-review desk is static, so "which draft would you ship?" needs a
stateful counterpart. vote-service is a small Go API on its own pod backed by
a JSON file on a ReadWriteOnce PVC, with one active vote per skill per source
IP as the anti-abuse rule and CORS (ALLOWED_ORIGIN) as the caller boundary.

Deployment notes that differ from the obvious path, all confirmed against the
live cluster: the image is side-loaded with `ctr image import` plus
`imagePullPolicy: Never` because kubelet has no credentials for the Nexus ref;
the pod is pinned to `kubernets` because the hostpath PV takes a nodeAffinity
for whichever node first binds it; and public exposure is Caddy on the VPS,
not the cloudflared tunnel.

The ingress controller runs with `use-forwarded-headers` off, so nginx
overwrites X-Forwarded-For with its own peer — every visitor would collapse
into one voter and each skill would cap at one vote overall. Caddy stamps the
true remote address into X-Client-IP, which nginx forwards untouched, and
clientIP() reads that first. Scoped to this app rather than flipping the
global flag, which would change client-IP handling for every other ingress.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-04 23:49:55 +00:00
Marcos Silva d12d301a1a feat: review semantic diff submission 2026-09-04 14:07:26 -03:00
Marcos Silva ac4683d8df feat: review semantic diff submission 2026-09-04 14:06:50 -03:00
Marcos Silva 73c3062062 feat: expand skills review navigation and catalog 2026-09-04 13:28:15 -03:00
Marcos Silva 9557957698 feat: expand skills review navigation and catalog 2026-09-04 13:28:06 -03:00
Marcos Silva 355a0b5600 feat: add skill preview search and diff 2026-09-04 09:45:14 -03:00
Marcos Silva 96771dfbd6 feat: add skill preview search and diff 2026-09-04 09:45:03 -03:00
Marcos Silva 76d83c9cf9 feat: review Gustavo and Marcos submitted skills 2026-09-04 09:11:53 -03:00
Marcos Silva 5756dceb5a feat: review Gustavo and Marcos submitted skills 2026-09-04 09:07:54 -03:00
Marcos Paulo 6694897ae9 Merge branch 'main' into pages 2026-09-04 04:37:43 +00:00
Marcos Paulo 6ccc692759 fix: redact operational skill review sources 2026-09-04 04:37:04 +00:00
Marcos Paulo c17502318b Merge branch 'main' into pages 2026-09-04 04:18:55 +00:00
Marcos Paulo aa85864868 feat: make route map the interactive landing page 2026-09-04 04:18:15 +00:00
Marcos Paulo ef3c99ee01 fix: preserve multi-file skill review desk 2026-09-04 03:53:23 +00:00
Marcos Paulo 21f04db1cc merge: publish focused guide chapters 2026-09-04 03:53:01 +00:00
Marcos Paulo 94f3491d7a feat: organize guide into focused chapters 2026-09-04 03:52:36 +00:00
Marcos Silva 5046fb580d feat: add submitted skills review desk 2026-09-04 00:36:01 -03:00
Marcos Silva 82fff29571 feat: add submitted skills review desk 2026-09-04 00:34:53 -03:00
Marcos Paulo a7034db94b docs: extract guide design into reusable skills 2026-09-04 02:57:42 +00:00
Marcos Paulo 5ff258ded5 fix: switch hands-on source links to public pages branch 2026-09-02 16:42:28 +00:00
Marcos Paulo 47144e9206 feat(deck): source links for both labs, plus unslop pass and verify tune
- Add 'Source on Gitea' link next to every 'Open the X lab' link,
  pointing to https://git.marcospaulo.dev.br/netcracker/ai-for-dummies/...
- Same download links added to both SilverBullet guides (Preview +
  Source on Gitea) under Path A and Path B.
- Tighten standalone verify rule: only block external <script src> and
  <link rel=stylesheet href>. Plain <a href=https://...> hyperlinks are
  not runtime dependencies.
- Unslop pass across all deck text, SilverBullet EN/PT, hands-on/rules
  header/label/README: kill triplets, dramatic single-word sentences,
  'matrix below / looks good / cuts the opposite failure' rhetoric.
  Header subtitle now reads 'Toggle rules. Same task, different
  coverage.' (was 'different leash').

verify: all six checks pass.
2026-09-02 16:31:54 +00:00
Marcos Paulo 755d61facc feat(deck): add 08 verification chapter with cross-layer evidence matrix
- New section 'Verification' between hands-on and sources.
- Three evidence layers (static / behavior / integration), each with its
  own exit-code-printing gate snippet.
- Four anti-pattern cards (pipe, swallow, cache, skip integration).
- 'Run it yourself' block links to /hands-on/starter and /hands-on/rules.
- Topnav gains 08 verify anchor.
- Companion SilverBullet pages (EN + PT) written under Guides/:
  * 'AI For Dummies Verification and Evidence.md'
  * 'AI For Dummies Verificação e Evidência.md'
- Both pages reference all 7 existing deck sections and the two labs.

Verify pass: content, interaction, and standalone for presentation, plus
the three rules-page checks.
2026-09-02 15:42:36 +00:00
Marcos Paulo f526a42ddd feat(hands-on): add guardrails rules lab and wire into docs
- New hands-on/rules/ interactive page: five toggleable rule sources
  (AGENTS.md, gate-discipline skill, Husky pre-commit, check-ui-contract
  enforcer, commitlint) rebuild a ruled prompt live against a naive prompt.
- Visual system mirrors hands-on/starter (same palette, vanilla JS).
- index.html hands-on section now links both labs.
- docs/operations-guide.md gains a 'Hands-on rules lab' subsection.
- README project structure lists the new lab.
- verify.mjs passes content, interaction, and standalone checks for both labs.
2026-09-02 15:30:45 +00:00
Marcos Paulo 9f879ed276 feat: add model routing and hands-on lab 2026-09-02 14:35:27 +00:00
Marcos Paulo ada9b3aa19 docs: add presentation operations guide 2026-09-02 13:51:08 +00:00
Marcos Paulo 6c591eac07 feat: add skill creation workflow 2026-09-02 02:23:29 +00:00
Marcos Paulo 0a802004af feat: explain common agent skills 2026-09-02 01:49:35 +00:00
Marcos Paulo 273ea5e259 feat: add interactive agent workflow diagrams 2026-09-02 01:30:12 +00:00
Marcos Paulo aa169205d0 feat: add responsive bilingual presentation 2026-09-02 01:05:21 +00:00
Marcos Paulo 9dd185fb0c fix: document correct pages URL 2026-09-02 00:48:32 +00:00
Marcos Paulo cdf889db80 docs: add project README 2026-09-02 00:43:11 +00:00
Marcos Paulo 9557cae6b6 feat: add AI For Dummies presentation 2026-09-02 00:33:49 +00:00