Commit graph

440 commits

Author SHA1 Message Date
Fred Amaral
9cb5a72737
fix(codereview): align reviewer references and harden lib-commons/multi-tenant agents
Propagates the 10-reviewer peer list across agent frontmatter, Position/Critical prose, shared-patterns, skill dispatchers, gate validators, and docs — resolving drift left behind when multi-tenant-reviewer and lib-commons-reviewer were added to the pool. Also fixes broken shared-pattern paths in lib-commons-reviewer and adds substantive blocker criteria to multi-tenant-reviewer plus codebase-context severity heuristic (Lerian third-rail vs external recommendation) to lib-commons-reviewer.

X-Lerian-Ref: 0x1
2026-04-18 20:18:16 -03:00
lerian-studio
d9afa9eb02
chore(release): Update CHANGELOGs for ring-default:v1.25.0,ring-pm-team:v0.25.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-18 22:35:54 +00:00
Fred Amaral
14d84dbaa0
feat(review): add multi-tenant and lib-commons agents to review cycle
docs: align all documentation with the new 10-reviewer workflow
docs(lib-commons): update skill to reflect major v5.0.2 release
chore(hooks): tune context reminder hook to reduce token consumption
2026-04-18 19:32:16 -03:00
lerian-studio
5fb1da2ef2
chore(release): Update CHANGELOGs for ring-default:v1.24.0,ring-pm-team:v0.25.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-18 13:46:34 +00:00
Fred Amaral
33c9e97d03
fix(codereview): complete cache-first standards injection end-to-end
The cache-first feature injected <standards> blocks into 5 reviewer dispatch prompts, but only performance-reviewer parsed them — code, business-logic, security, and test reviewers ignored the injection and re-fetched standards on every run. The orchestrator-side half shipped without the consumer-side half.

Each of the 4 default reviewer agents now has a Standards Loading (Cache-First) section implementing the canonical three-tier resolution: cache hit from state.cached_standards, cache miss via WebFetch with warning, standalone fallback to hardcoded URLs. The per-reviewer fallback URL lists are unique and derived from each reviewer's standards_slice.

The 5-way verbatim duplication of the dispatch block in codereview/SKILL.md is collapsed to per-reviewer URL-slice markers that reference shared-patterns/standards-cache-protocol.md as the single source of truth. The shared pattern now carries the canonical <standards> template, orchestrator pseudocode, three-tier protocol, rolling-standards policy, and an anti-rationalization table defending cache-first behavior. Net 117-line reduction in codereview/SKILL.md.

X-Lerian-Ref: 0x1
2026-04-18 10:44:17 -03:00
Fred Amaral
a074c2c614
feat(codereview): cache-first standards injection for 5 reviewers
Orchestrator resolves standards content from state.cached_standards at dispatch time and injects <standards> block with per-reviewer URL slices into code-reviewer, business-logic-reviewer, security-reviewer, test-reviewer, performance-reviewer. Each <standard> carries its URL + <content>; reviewer reads content if present, WebFetches URL if content empty. Preserves rolling-standards architecture — URLs still point to main branch, WebFetch remains the source of truth for standalone dispatch and cache misses.

Expands standards coverage to business-logic-reviewer (domain + domain-modeling + api-patterns) and test-reviewer (quality + testing-*.md) which previously received none — explicit rules beat implicit. performance-reviewer agent neutralizes its hardcoded <fetch_required> block in favor of three-tier resolution (injected block → per-standard WebFetch → standalone fallback URL list). dev-cycle Step 1.5 pre-cache extended with golang/architecture.md and golang/domain-modeling.md so all reviewer slice URLs are cacheable.

X-Lerian-Ref: 0x1
2026-04-17 22:26:06 -03:00
Fred Amaral
f862c50a56
feat(dev-cycle): reclassify gate cadence for ~40-50% speedup
Reclassify gates 1,2,4,5,6w,7w,8 (backend) and 1,2,4,5,6,7 (frontend) from subtask to task cadence. Gates 0, 3, 9 remain subtask-level. All 8 reviewers still run, all quality thresholds preserved.

Additional changes: standards pre-cache at Step 1.5 (cached_standards in state); Gate 0.5 merged into Gate 0 exit criteria via ring:dev-implementation Step 7; dev-report aggregates cycle-wide via accumulated_metrics (single cycle-end dispatch); dev-refactor clusters findings by (file, pattern_category) with findings:[] traceability array; read-after-write state verification removed; per-subtask visual reports opt-in only. State schema v1.1.0 (additive - backward compatible).

New shared patterns: standards-cache-protocol.md, gate-cadence-classification.md.

X-Lerian-Ref: 0x1
2026-04-17 21:25:17 -03:00
lerian-studio
2da03580ca
chore(release): Update CHANGELOGs for ring-default:v1.23.0,ring-pm-team:v0.25.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-17 14:56:49 +00:00
lerian-studio
af4be6e33f
chore(release): Update CHANGELOGs for ring-default:v1.23.0,ring-pm-team:v0.25.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-17 14:22:26 +00:00
lerian-studio
f3e1b5e10b
chore(release): Update CHANGELOGs for ring-default:v1.23.0,ring-pm-team:v0.25.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-17 00:07:17 +00:00
Fred Amaral
b457d3a3d3
feat(hooks): context-aware drift refresh with PROJECT_RULES support
Upgrade claude-md-reminder.sh with four related improvements:

- Hybrid trigger cascade: temporal floor (every 3 prompts) OR
  context-window saturation (>= 15% via harness JSON) OR transcript
  byte delta (fallback). Cooldown of 2 prompts on non-temporal
  triggers prevents re-injection loops as context fills up.
- PROJECT_RULES.md replaces RULES.md per Lerian 2026-04 standard.
- Symlink-aware dedup via canonicalize_path (realpath -> python3
  fallback) — avoids double-injecting when AGENTS.md is a symlink
  to CLAUDE.md.
- RFC 8259-compliant JSON escape via jq -Rs cascade (jq -> python3
  json.dumps -> awk fallback). Old awk escape missed control chars
  outside the tab/CR/FF set, which produced invalid JSON on files
  with VT/ESC/NUL bytes.

X-Lerian-Ref: 0x1
2026-04-16 21:06:00 -03:00
lerian-studio
3770231e50
chore(release): Update CHANGELOGs for ring-default:v1.22.1,ring-pm-team:v0.25.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-16 22:54:26 +00:00
lerian-studio
4ee8706d05
chore(release): Update CHANGELOGs for ring-default:v1.22.1,ring-pm-team:v0.25.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-16 18:11:36 +00:00
Fred Amaral
5a7d9e517f
fix(codereview): restore complete 8-reviewer verdict table in escalation output
Step 9 (Escalate - Max Iterations Reached) was listing only 3 of 8 reviewers in the Reviewer Verdicts table, while the Step 8 success path and the final execution report template already listed all 8. Users hitting max-iteration escalation now see the complete verdict report including test, nil-safety, consequences, dead-code, and performance-reviewer.

X-Lerian-Ref: 0x1
Generated-by: Claude
AI-Model: claude-opus-4-7
2026-04-16 15:09:28 -03:00
lerian-studio
a334a36843
chore(release): Update CHANGELOGs for ring-default:v1.22.0,ring-pm-team:v0.25.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-16 09:19:46 +00:00
lerian-studio
4d3323cb63
chore(release): Update CHANGELOGs for ring-default:v1.22.0,ring-pm-team:v0.25.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-16 03:32:59 +00:00
lerian-studio
a52db767dc
chore(release): Update CHANGELOGs for ring-default:v1.22.0,ring-pm-team:v0.25.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-16 02:41:15 +00:00
lerian-studio
5092e6b443
chore(release): Update CHANGELOGs for ring-default:v1.22.0,ring-pm-team:v0.25.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-16 02:01:24 +00:00
lerian-studio
2c7be20cba
chore(release): Update CHANGELOGs for ring-default:v1.22.0,ring-pm-team:v0.25.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-15 05:02:14 +00:00
lerian-studio
3b122636b2
chore(release): Update CHANGELOGs for ring-default:v1.22.0,ring-pm-team:v0.25.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-15 04:59:24 +00:00
lerian-studio
bf4e3a3297
chore(release): Update CHANGELOGs for ring-default:v1.22.0,ring-pm-team:v0.25.0,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-14 18:55:24 +00:00
Fred Amaral
600a505c9a
docs: propagate performance-reviewer as 8th codereview agent across all downstream references
Update all skills, agents, shared patterns, docs, and platform configs that still referenced 7 code review agents to reflect the 8th reviewer (ring:performance-reviewer). Includes agent self-descriptions, dispatch instructions, anti-rationalization tables, slicing math, gate tables, and opencode schema definitions.

X-Lerian-Ref: 0x1
2026-04-14 15:53:45 -03:00
lerian-studio
328ebf66b4
chore(release): Update CHANGELOGs for ring-default:v1.22.0,ring-pm-team:v0.25.0,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-14 16:32:59 +00:00
Fred Amaral
2712c23e2d
docs: sync plugin counts and add performance-reviewer as 8th codereview reviewer
Sweep all documentation to match filesystem ground truth:
- ring-default: 22→23 skills (added pr-review-multi-source)
- ring-dev-team: 31→33 skills (added dev-licensing, dev-verify-code), 12→13 agents (added performance-reviewer)
- ring-pm-team: 15→16 skills (added deep-doc-review)
- Total: 90→94 skills, 38→39 agents

Add ring:performance-reviewer as 8th parallel codereview reviewer across
codereview SKILL.md (dispatch block, state, metrics, verdicts, anti-rationalization)
and all documentation (CLAUDE.md, README.md, MANUAL.md, ARCHITECTURE.md).

Fix ARCHITECTURE.md finops/tw-team skill count swap in ASCII diagram.
Fix codereview metrics bug (X/6→X/8).
Remove phantom skill references (verification-before-completion, root-cause-tracing) from MANUAL.md.

X-Lerian-Ref: 0x1
2026-04-14 13:31:29 -03:00
lerian-studio
e2fbd47588
chore(release): Update CHANGELOGs for ring-default:v1.22.0,ring-pm-team:v0.25.0,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-14 16:02:21 +00:00
lerian-studio
a9cb1b83a1
chore(release): Update CHANGELOGs for ring-default:v1.22.0,ring-pm-team:v0.25.0,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-14 15:57:57 +00:00
Jefferson Rodrigues
0345d1f540
Merge pull request #331 from LerianStudio/feat/pr-review-multi-source
feat(default): add pr-review-multi-source skill (adapted from optimus)
2026-04-14 12:56:43 -03:00
Jefferson Rodrigues
11c129133a
fix(pr-review): add node_id to Phase 0 extraction and paginate GraphQL
- Phase 0 (Step 0.3): Add comment_id and node_id as required extraction
  fields so Phase 9 thread resolution can match REST comments to GraphQL
  thread IDs
- Phase 9 (Step 9.2): Replace single-page GraphQL query (first:100) with
  cursor-based pagination loop on reviewThreads to handle PRs with >100
  threads

Generated-by: Claude
AI-Model: claude-opus-4-6
2026-04-14 12:56:04 -03:00
lerian-studio
ed617dcb85
chore(release): Update CHANGELOGs for ring-default:v1.21.0,ring-pm-team:v0.25.0,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-14 15:54:50 +00:00
lerian-studio
06a153e7b2
chore(release): Update CHANGELOGs for ring-default:v1.21.0,ring-pm-team:v0.24.0,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-14 15:53:16 +00:00
lerian-studio
204cbffa97
chore(release): Update CHANGELOGs for ring-default:v1.21.0,ring-pm-team:v0.23.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-14 15:49:21 +00:00
Jefferson Rodrigues
9f7b5b1c6f
Merge pull request #328 from LerianStudio/feat/production-readiness-full-multi-tenant-coverage
feat(audit): expand multi-tenant dimension to 100% standard coverage
2026-04-14 12:48:15 -03:00
Jefferson Rodrigues
20e0d655c3
fix(audit): move WARNING out of HARD GATES and make env vars conditional
- Move item 5 (non-canonical files) from HARD GATES block into a
  separate WARNINGS section to keep gate semantics unambiguous
- Make MULTI_TENANT_* env vars conditional on MULTI_TENANT_ENABLED=true;
  APPLICATION_NAME is always required; single-tenant mode must work
  without any MULTI_TENANT_* vars set
- Update output format to reflect conditional env var reporting

Generated-by: Claude
AI-Model: claude-opus-4-6
2026-04-14 12:47:09 -03:00
Jefferson Rodrigues
c55a62d101
fix(audit): correct canonical env var count from 14 to 15
The header claimed "14 MANDATORY — APPLICATION_NAME + 13 MULTI_TENANT_*"
but the enumerated list has 14 MULTI_TENANT_* vars + APPLICATION_NAME = 15.
Updated all 3 occurrences (GOOD reference comment, check #6, output format).

Generated-by: Claude
AI-Model: claude-opus-4-6
2026-04-14 12:42:59 -03:00
Jefferson Rodrigues
368b8fdb0b
fix(audit): correct M2M activation logic to require both conditions
The skip condition said "if neither condition is met" which incorrectly
activates M2M checks when only one condition is present. Changed to
"if either condition is missing" to correctly require BOTH targetServices
AND outbound credential provider usage before activating M2M checks.

Generated-by: Claude
AI-Model: claude-opus-4-6
2026-04-14 12:41:23 -03:00
Jefferson Rodrigues
aca4fd623a
fix(audit): align Agent 33 multi-tenant checks with canonical standard
Resolve merge conflicts with main and address all review findings
from gap analysis against multi-tenant.md:

- Fix env var count: 9 → 14 (add REDIS_HOST/PORT/PASSWORD/TLS, TIMEOUT,
  CACHE_TTL_SEC, CONNECTIONS_CHECK_INTERVAL_SEC)
- Remove invented MULTI_TENANT_ENVIRONMENT (not in standard)
- Fix API names: valkey.GetKeyFromContext → valkey.GetKeyContext,
  s3.GetObjectStorageKeyForTenant → s3.GetS3KeyStorageContext
- Fix metrics: remove invented tenant_connection_pool_size and
  tenant_config_cache_hits, add tenant_connection_errors_total (4 total)
- Add *TenantSuspendedError → 403 to sentinel error mapping
- Add event wiring checks: NewTenantPubSubRedisClient,
  NewTenantEventListener, TenantLoader.SetOnTenantLoaded
- Add WithConnectionsCheckInterval check for pgManager
- Add middleware=nil when MT disabled check
- Remove organization_id/ledger_id entity scoping (domain concern,
  not multi-tenant isolation)
- Downgrade non-canonical file detection from HARD GATE to WARNING
- Total checks: 34 → 44

Generated-by: Claude
AI-Model: claude-opus-4-6
2026-04-14 12:38:26 -03:00
Jefferson Rodrigues
124a3499a6
feat(audit): expand multi-tenant dimension to 100% standard coverage
Agent 33 (Multi-Tenant Patterns Auditor) was only covering ~60% of the
canonical multi-tenant model defined in multi-tenant.md. This expands
coverage from 9 checks to 34 checks, aligned with every requirement
in the standard.

New HARD GATES: non-canonical file detection, lib-commons v4 version
verification. New CRITICAL checks: auth-before-tenant route ordering,
global middleware detection. New HIGH checks: canonical env var names,
circuit breaker, service API key, backward compatibility test,
RabbitMQ vhost isolation, M2M credential security. New conditional
M2M section (checks 30-34) for services with targetServices.

Generated-by: Claude
AI-Model: claude-opus-4-6
2026-04-14 12:38:25 -03:00
lerian-studio
37442c3a60
chore(release): Update CHANGELOGs for ring-default:v1.20.2,ring-pm-team:v0.23.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-13 22:50:39 +00:00
Gandalf
f12561412b
fix(pr-review-multi-source): add pagination and use node_id instead of deprecated databaseId
- Add --paginate flag to gh api REST calls for reviews and comments to
  avoid truncation at 30 items per page on larger PRs
- Replace deprecated databaseId with global node_id for thread matching
- Fetch all comments per thread (first: 100) instead of only the first
  to handle multi-comment threads reliably

Addresses CodeRabbit review comments on PR #331.
2026-04-13 12:13:18 -03:00
lerian-studio
beecfa4046
chore(release): Update CHANGELOGs for ring-default:v1.20.2,ring-pm-team:v0.23.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.3 [skip ci] 2026-04-12 13:15:40 +00:00
Fred Amaral
c142c3d720
refactor(skills): remove commands layer and rename skills to match command names
Skills are now the sole invocation mechanism — commands have been eliminated
as an architectural layer. All 33 commands removed, 22 skills renamed to
match the command names teams already knew, and 1 new skill (portfolio-review)
created to replace the last orchestrator command.

Renames: brainstorming→brainstorm, requesting-code-review→codereview,
git-commit→commit, session-handoff→create-handoff, drawing-diagrams→diagram,
executing-plans→execute-plan, exploring-codebase→explore-codebase,
interviewing-user→interview-me, linting-codebase→lint,
release-guide-info→release-guide, visual-explainer→visualize,
using-git-worktrees→worktree, writing-plans→write-plan,
dev-feedback-loop→dev-report, delivery-status-tracking→delivery-status,
delivery-reporting→delivery-report, executive-reporting→executive-summary,
dependency-mapping→dependency-analysis, documentation-review→review-docs,
writing-functional-docs→write-guide, writing-api-docs→write-api

Generated-by: Claude
AI-Model: claude-opus-4-6
2026-04-12 10:14:20 -03:00
lerian-studio
fce4881506
chore(release): Update CHANGELOGs for ring-default:v1.20.1,ring-pm-team:v0.23.0,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.2 [skip ci] 2026-04-11 22:42:11 +00:00
lerian-studio
1bd9a14336
chore(release): Update CHANGELOGs for ring-default:v1.20.1,ring-pm-team:v0.23.0,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.2 [skip ci] 2026-04-11 16:19:05 +00:00
Gandalf
7e681c5f11
feat(default): add pr-review-multi-source skill (adapted from optimus) 2026-04-09 09:39:47 -03:00
lerian-studio
1ebb8178a8
chore(release): Update CHANGELOGs for ring-default:v1.20.1,ring-pm-team:v0.23.0,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.2 [skip ci] 2026-04-06 23:04:37 +00:00
lerian-studio
8d9ad913b0
chore(release): Update CHANGELOGs for ring-default:v1.20.1,ring-pm-team:v0.22.0,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.2 [skip ci] 2026-04-06 16:53:28 +00:00
Fred Amaral
fa6c4c87e8
docs(frontmatter): create canonical schema to standardize component metadata
feat(hooks): add schema validator and enhance skill generation
refactor(*): align all components with the new frontmatter schema
refactor(commands): replace arguments object with simple argument-hint
refactor(agents): remove invalid version field from agent frontmatter
test(hooks): add unit tests for frontmatter validation and generation
2026-04-06 09:52:28 -07:00
lerian-studio
89c2ad9bb3
chore(release): Update CHANGELOGs for ring-default:v1.20.1,ring-pm-team:v0.21.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.2 [skip ci] 2026-04-01 18:43:22 +00:00
lerian-studio
d615b8802b
chore(release): Update CHANGELOGs for ring-default:v1.20.1,ring-pm-team:v0.21.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.2 [skip ci] 2026-03-31 22:52:18 +00:00
lerian-studio
fd4491361e
chore(release): Update CHANGELOGs for ring-default:v1.20.1,ring-pm-team:v0.21.1,ring-pmo-team:v1.1.3,ring-finops-team:v0.11.0,ring-tw-team:v0.4.2 [skip ci] 2026-03-28 21:57:58 +00:00