Skip to content

Dev/0.4 - #4

Open
briandominick wants to merge 31 commits into
mainfrom
dev/0.4
Open

Dev/0.4#4
briandominick wants to merge 31 commits into
mainfrom
dev/0.4

Conversation

@briandominick

Copy link
Copy Markdown
Contributor

No description provided.

This patch is a quick bump to reflect latest asciisourcerer updates.
Includes monorepo-level Gemfile.lock to reflect local and upstream version changes.
Adds labdev:skim:ruby, which skims a gem's lib/ directory for its
Ruby API surface (modules, classes, methods) via Sourcerer::SourceSkim.
Refactors run_with_format's optional flags into **opts to keep
RuboCop's ParameterLists check under six.
States a basic redirect for Claude Code's default.
Change is reflected in default manifest and a .gitignore *.md exception.
The verb form of commit summaries was mis-reported; now standardize on capitalized imperative.

Also adds `edit`, `create`, and `revert` commit types while removing `docs`, which is a scope.
Introduces a git-lint integration so commit subjects and bodies are
checked against shared DocOps Lab commit conventions, both locally
and in CI.

- Add a `commit-conventions` config-pack (types, scopes, subject/body
  rules) that both generates the git-lint config and drives standalone
  subject validation (capitalized imperative verb, allowed
  type/scope, no terminal punctuation, no agent authorship
  signatures).
- Add `labdev:lint:commit[path]` (for the commit-msg hook) and
  `labdev:lint:commits[target]` (for branch/CI linting), plus a
  `labdev:run:git_lint` raw wrapper.
- Distribute a `commit-msg` hook template that runs the new lint task.
- Wire git-lint config generation into `labdev:sync:configs` and add a
  `git-lint` CI job to the QA workflow.
- Document the new config layering and usage in the gem README.
`-it` requires an attached terminal, so any invocation of the
docopslab/dev container from CI or another non-interactive context
would fail outright. Dropping it keeps stdout/stderr passthrough
without assuming a TTY is present.
- Rename "commit summary" to "commit subject" throughout, matching
  the git-lint rule set.
- Require a capitalized imperative verb and show full example
  subjects for every commit type.
- Add "never sign commits as a co-author" to the basics checklist.
- Fix a stray quote in an include directive and other small typos.
- Add `copy_asciisourcerer_doc_partials`, resolving the source
  location from an env var, a sibling checkout, or the installed gem.
- Split `build_site` into a reusable `build_site_html` (HTML only,
  used by both the site build and agent-doc generation) and the
  full `build_site` that also regenerates agent docs.
- Add `gemdo:push:library:docs:local` to build, stage, and load agent
  docs into the local cache for downstream repo testing (documented
  in the README, with the chain-of-truth from `_docs/agent/` down to
  the local cache).
- Adapt `gen_agent_docs.rb` to AsciiSourcerer's renamed
  `MarkDownGrade.convert_html` and its new `convert_dls_to_markdown`
  option.
- Un-publish `_docs/partials/` from the Jekyll site and add a
  permalink for agent docs.
- Depend on `asciisourcerer` directly (via a local sibling-repo path)
  so the Rakefile and script above can load it outside of the
  docopslab-dev gem chain.
Reflects the new git-lint dependency, the local asciisourcerer path
overrides, and the docopslab-dev version bump for this release cycle.
- Add the AsciiDoc FabLab front-end component library under the new
  Frameworks (Front-End / Design) section.
- Record each SGYML spec's owning repo (releasehx, schemagraphy,
  versioneer, openpathyml, issuer) and add the UserStoryML spec.
- Document DocOps Lab's Liquid 4 environment: custom tags, the
  AsciiSourcerer filter compendium, house indentation styles for
  HTML/AsciiDoc/YAML targets, and how to invoke rendering directly.
- Document SchemaGraphy's YAML/SGYML loaders (`load_yaml_with_tags`,
  `load_yaml_with_attributes`) and the `TagUtils.detag` helper.
- Add matching agent-facing skill/topic docs that transclude the new
  reference content for AI agents.
Both Gemfiles and gemspec updated, replacing relative dev refs.
CI's git-lint job failed on the "Merge branch 'main' into dev/0.4"
commit: its git-generated subject can never match our `<type>[scope]:
Subject` pattern, and git-lint itself has no built-in way to skip
merge commits. labdev:lint:commits now filters merge commits (by
parent count) out of the target list before invoking git-lint, and
skips the check entirely if nothing but merges remain.
The labdev:sync:configs task called Library.resolve directly, which
only reads whatever's already in the host cache; it never fetched.
On a runner with no prior cache (any first-time CI run), resolution
silently failed and generate_git_lint_config fell back to git-lint's
raw upstream defaults instead of our commit conventions, with no
visible error.
Other tools' final configs are committed to git directly, so they
degrade gracefully; git-lint.yml is generated-only and has no such
fallback.
The sync_config_files method now calls Library.ensure_available!
first (skipped in offline mode), which fetches from the
labdev-library branch when the cache is missing, or raises a clear,
visible error instead of silently proceeding with wrong defaults.
@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

✅ Build Complete!

Your changes have been built successfully. Download the artifacts to review:

  • Site Build: Available in workflow artifacts as site-04331dbbd4f3f1ab495eb9f8331931ad5cf30603
  • Gem Package: Available in workflow artifacts as gem-04331dbbd4f3f1ab495eb9f8331931ad5cf30603

To preview the site locally (requires GitHub CLI):

SHA=04331dbbd4f3f1ab495eb9f8331931ad5cf30603 bundle exec rake review:serve

This will automatically fetch, extract, and serve the review site at http://localhost:4001

This build will be updated automatically with new commits to this PR.

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