Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,16 @@ keywords:

# GUIHO XDocs Changelog

## 0.12.0 - 2026-09-12

- **Breaking:** Require explicit `documentation.directories` grants for descriptor maintenance and separate `documentation.frontmatter` grants for ordinary Markdown metadata. Both default to empty; `ai.mode: auto` does not grant permission, and legacy frontmatter denials still win.
- Keep directory context in one named descriptor such as `technologies/technologies.xdocs.md`. Diagnose duplicate, bare, and legacy descriptor names without creating extra overview documents or repairing user files.
- Display every discovered descriptor through the full filesystem tree, including deep, orphaned, duplicate, and invalid entries, with paths, context, and diagnostics. Include the root `XDOCS.md` index; validate semantic relationships separately in doctor.
- **Breaking:** Guard explicit report destinations with validation and atomic replacement. Reject descriptor-shaped destinations, symlinks, excluded paths, malformed frontmatter, and unauthorized companion metadata before changing existing bytes. Report commands otherwise write to stdout.
- Add read-only `meta --existing-frontmatter` and `doctor --existing-frontmatter` audits, including ordinary documents in directories without descriptors; absent headers remain valid without explicit metadata grants.
- Reject invalid YAML scalar types, authorization aliases and merges, ambiguous headers, and whitespace-only required companion fields consistently across metadata, doctor, and report writes.
- Align embedded skills, prompts, managed instructions, and documentation with explicit authorization and complete discovery.

## 0.11.0 - 2026-08-23

- Replace the plain `Hello Windows - xdocs v<version>` greeting with a beautiful borderless hello window that matches the RunX and Genius siblings while using the five-tone earth palette (`#7F5539`, `#A68A64`, `#EDE0D4`, `#656D4A`, `#414833`).
Expand Down
19 changes: 17 additions & 2 deletions DOCS.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,21 @@ The active implementation is a native Go CLI. The historical TypeScript tree
is retained as migration reference only and is not used by the executable,
installers, CI, versioning, or releases.

## Upgrading to 0.12.0

This minor release contains breaking authorization and report-output changes.
Existing configurations remain loadable, but omitted documentation grants now
mean no descriptor maintenance or companion metadata requirement. Explicitly
list permitted subtrees in `documentation.directories`; grant ordinary Markdown
headers separately with `documentation.frontmatter`. Existing legacy denials
still take precedence. Do not add grants merely to make validation pass.

Keep context in one named descriptor per directory. `tree` now uses filesystem
containment and includes all discovered descriptors; use `doctor` for semantic
parent/child validation. Report output cannot target descriptor filenames and
must pass destination and content validation. Use `meta --existing-frontmatter`
or `doctor --existing-frontmatter` to audit historical headers without repairs.

## Runtime architecture

- Go module: `github.com/CGuiho/xdocs`
Expand Down Expand Up @@ -369,9 +384,9 @@ go mod tidy
go test ./...
go vet ./...
go run ./devops/build-binaries.go \
--version 0.11.0 \
--version 0.12.0 \
--commit "$(git rev-parse HEAD)" \
--build-date "2026-08-23T00:00:00Z"
--build-date "2026-09-12T00:00:00Z"
```

Cross-compilation proves buildability, not foreign runtime behavior. Native CI
Expand Down
2 changes: 1 addition & 1 deletion main_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ func TestEmbeddedSkillMatchesCurrentReleaseVersion(t *testing.T) {
if err := yaml.Unmarshal([]byte(strings.TrimPrefix(parts[0], "---\n")), &metadata); err != nil {
t.Fatal(err)
}
if metadata.Version != "0.11.0" || metadata.Metadata.Version != "0.11.0" {
if metadata.Version != "0.12.0" || metadata.Metadata.Version != "0.12.0" {
t.Fatalf("embedded skill version mismatch: %#v", metadata)
}
}
4 changes: 2 additions & 2 deletions skills/guiho-s-xdocs/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@ keywords:
- guiho-s-xdocs
- xdocs metadata
- documentation workflow
version: "0.11.0"
version: "0.12.0"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Update the documented release-matrix version

After this bump, the contributor-validation recipe in DOCS.md still invokes build-binaries.go with --version 0.11.0. The build script compares that argument with both skill version fields, so anyone following the documented validation steps now gets validate skill version failure instead of a release build; update the recipe to use 0.12.0.

AGENTS.md reference: AGENTS.md:L160-L165

Useful? React with 👍 / 👎.

metadata:
version: "0.11.0"
version: "0.12.0"
---

#### &copy; 2026 [GUIHO](https://guiho.co) as represented by [Cristóvão GUIHO](https://guiho.co/cguiho) All Rights Reserved.
Expand Down
Loading