Dev/0.4 - #4
Open
briandominick wants to merge 31 commits into
Open
Conversation
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.
Contributor
✅ Build Complete!Your changes have been built successfully. Download the artifacts to review:
To preview the site locally (requires GitHub CLI): SHA=04331dbbd4f3f1ab495eb9f8331931ad5cf30603 bundle exec rake review:serveThis 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. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.