Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
3094 commits
Select commit Hold shift + click to select a range
bc9f74d
fix(review): print a typed envelope when acknowledge-approved burns a…
Alan-TheGentleman Aug 31, 2026
4467673
fix(sdd): name the runnable exit for every compact settle refusal and…
Alan-TheGentleman Aug 31, 2026
1dc4feb
fix(sdd): align the settle contract, verify-report fence, and state.y…
Alan-TheGentleman Aug 31, 2026
529842b
fix(sdd): write new capability specs under the change and name the la…
Alan-TheGentleman Aug 31, 2026
589c545
fix(sdd): tolerate additive ledger fields, bound inventories by path …
Alan-TheGentleman Aug 31, 2026
7271ff2
fix(sdd): honor read-only task inputs, name non-Git edit targets, gua…
Alan-TheGentleman Aug 31, 2026
ddbc381
fix(sdd): let the automatic gate accept paths a design plans to creat…
Alan-TheGentleman Aug 31, 2026
7b75af1
fix(sdd): name the exit for a vanished worktree, ignore fenced checkb…
Alan-TheGentleman Aug 31, 2026
9e1ec40
fix(review): drop committed paths from an inherited untracked declara…
Alan-TheGentleman Aug 31, 2026
85991dc
fix(review): keep the frozen exclude declaration on re-entry and name…
Alan-TheGentleman Aug 31, 2026
7c036a1
fix(review): route v1 to the acknowledgement, carry cwd in the start …
Alan-TheGentleman Aug 31, 2026
6ebcfa7
fix(review): admit the pending acknowledgement without a selector, re…
Alan-TheGentleman Aug 31, 2026
bdea045
fix(review): keep the scrubbed cause on read-only failures, answer rd…
Alan-TheGentleman Aug 31, 2026
1fc30f4
fix(review): classify a committed correction with an admitted compani…
Alan-TheGentleman Aug 31, 2026
86a3a6e
fix(claude): rename the SDD commands to the gentle-sdd prefix and ret…
Alan-TheGentleman Aug 31, 2026
9d5b91d
fix(install): resolve OpenCode plugin paths through the adapter, keep…
Alan-TheGentleman Aug 31, 2026
3ef1e66
fix(sdd): refuse zero attempt budgets and name the base-merge cause i…
Alan-TheGentleman Aug 31, 2026
387eb0b
docs(readme): name the Claude Code SDD command prefix beside the bare…
Alan-TheGentleman Aug 31, 2026
da35916
fix(review): say that a clone-local enable cannot turn review on, and…
Alan-TheGentleman Aug 31, 2026
285289f
fix(skills): stop subagents from minifying code to chase the 400-line…
Alan-TheGentleman Aug 31, 2026
1863432
fix(install): require only SDD paths OpenCode writes (#3977)
Alan-TheGentleman Aug 31, 2026
7a5b914
fix(bench): kill a TTY exchange on inactivity instead of total time
Denver2828 Aug 31, 2026
b7b6177
feat(review): extend the concurrent reviewer group contract to every …
Alan-TheGentleman Aug 31, 2026
cd4ab33
fix(review): resolve OpenCode targets across worktrees (#3992)
Alan-TheGentleman Aug 31, 2026
662aaf8
fix(bench): seed the update cooldown in j121's sandbox so the Update …
Denver2828 Aug 31, 2026
e1de3c2
feat(sdd): project a positive archived terminal status (#4009)
Alan-TheGentleman Sep 1, 2026
bb43f9a
fix(review): execute intended untracked selection handoff (#3998)
Alan-TheGentleman Sep 1, 2026
f5dd1a6
test(review): read the held LOCK through the holder's handle and cano…
Alan-TheGentleman Sep 1, 2026
72e0ccc
fix(release): expect the provenance archive in post-publication verif…
Alan-TheGentleman Sep 1, 2026
7d1c58f
docs(readme): restructure onboarding and update to v2.5.0 stable (#3890)
ElCaaarnal Sep 2, 2026
55293ca
fix(review): name when the orchestrator enters the lifecycle so an en…
Alan-TheGentleman Sep 2, 2026
c919f78
fix(review): harden targeted validator admission (#4058)
Alan-TheGentleman Sep 2, 2026
a7ce09c
fix(orchestrator): apply model assignments to organic delegation (#4062)
Alan-TheGentleman Sep 2, 2026
ff518ba
fix(install): strip the managed blocks an older build left in the Pi …
Alan-TheGentleman Sep 2, 2026
2f7cb23
fix(review): ship the Pi-bound review execution contract as orchestra…
Alan-TheGentleman Sep 2, 2026
38103b5
fix(sdd-attempt): let the ledger own finish/settle untracked-freshnes…
JulianGarcia04 Sep 2, 2026
ab4b8bb
fix(review): publish the eligible untracked inventory on every status…
JulianGarcia04 Sep 2, 2026
149b118
fix(review): advertise status schema v7 through capabilities v2.5
JulianGarcia04 Sep 2, 2026
6a8cab5
fix(install): skip routing guidance for agents without a system promp…
Alan-TheGentleman Sep 2, 2026
e54fade
test(bench): drive #4040's refusals before reading the recovery route
JulianGarcia04 Sep 2, 2026
14a31d4
docs(readme): add a star history chart to the header (#4069)
Alan-TheGentleman Sep 2, 2026
1fedfdb
feat(review): add the review stop-hook subcommand that hands Claude C…
Alan-TheGentleman Sep 2, 2026
119ee28
feat(claude): install the review stop-hook as managed Stop and Sessio…
Alan-TheGentleman Sep 2, 2026
39f0eea
docs(readme): link the site and wiki from the header (#4073)
Alan-TheGentleman Sep 2, 2026
6e32183
chore(merge): integrate upstream main into the #4040 untracked-invent…
JulianGarcia04 Sep 2, 2026
b57a77b
fix(review): retry a malformed targeted validator result once with ad…
Alan-TheGentleman Sep 2, 2026
59a742a
fix(update): serialize cooldown state persistence (#4083)
decode2 Sep 2, 2026
a036c0c
docs(readme): restructure visually around the brand rose motif
ElCaaarnal Sep 3, 2026
0f1c8ee
docs(readme): address review findings
ElCaaarnal Sep 3, 2026
78b8deb
docs(readme): suppress intentional top-anchor lint
ElCaaarnal Sep 3, 2026
effb45a
fix(review): preserve intended untracked terminal scope (#4108)
Alan-TheGentleman Sep 3, 2026
166f424
fix(review): route Pi lifecycle through facade tools (#4099)
decode2 Sep 3, 2026
267568a
fix(sync): scope community tool injectors to selected agents
viniciosrab Sep 3, 2026
6719348
test(bench): cover #4040 deletion recovery
Alan-TheGentleman Sep 3, 2026
50cc3ae
merge: sync main into #4040 recovery fix
Alan-TheGentleman Sep 3, 2026
b952f19
fix(opencode): honor effective model selector config (#3988)
pablon Sep 3, 2026
0a5246d
style: format Pi review contract test
Alan-TheGentleman Sep 3, 2026
1f9d794
Merge pull request #4066 from JulianGarcia04/fix/untracked-inventory-…
Alan-TheGentleman Sep 3, 2026
2530496
merge: sync main into backup path-type preservation
Alan-TheGentleman Sep 3, 2026
5e6f90e
test(backup): reject existing outside-root symlinks
Alan-TheGentleman Sep 3, 2026
adf47da
Merge pull request #2021 from ardelperal/fix/backup-preserve-dir-syml…
Alan-TheGentleman Sep 3, 2026
58ccc4c
docs(readme): preserve complete rose artwork
ElCaaarnal Sep 3, 2026
313b120
docs(readme): remove first-project section
ElCaaarnal Sep 3, 2026
c553112
docs(readme): point the website link at gentlemanprogramming.com
Alan-TheGentleman Sep 4, 2026
41b1819
docs(readme): add an about-the-author section with consulting and con…
Alan-TheGentleman Sep 4, 2026
f3e2ebf
chore(review): track issue 4006 chain
Alan-TheGentleman Sep 4, 2026
5a081a0
fix(review): preserve Pi authentication locator
Alan-TheGentleman Sep 4, 2026
5124920
test(update): build the cooldown candidate binary with the .exe suffi…
Alan-TheGentleman Sep 4, 2026
c24a724
Merge pull request #4169 from Gentleman-Programming/fix/windows-coold…
Alan-TheGentleman Sep 4, 2026
3ad2fa0
test(review): prove Pi targeted validation recovery
Alan-TheGentleman Sep 4, 2026
1aed491
merge: sync main into readme restructure
ElCaaarnal Sep 4, 2026
036a765
docs(readme): index the about-the-author section
ElCaaarnal Sep 4, 2026
4f53472
Merge pull request #4166 from Gentleman-Programming/fix/4006-pi-auth-…
Alan-TheGentleman Sep 4, 2026
948cb65
Merge pull request #4174 from Gentleman-Programming/test/4006-pi-vali…
Alan-TheGentleman Sep 4, 2026
806d576
Merge pull request #4165 from Gentleman-Programming/feat/4006-pi-vali…
Alan-TheGentleman Sep 4, 2026
71cf25f
Merge pull request #4102 from ElCaaarnal/docs/readme-structure
ElCaaarnal Sep 4, 2026
e12c407
docs(readme): update release facts for v2.6.0
ElCaaarnal Sep 4, 2026
67f3dba
docs(guides): point the version advisory at stable v2.6.0
ElCaaarnal Sep 4, 2026
20d7574
Merge pull request #3997 from Denver2828/fix/3971-pty-axis-deadline
Alan-TheGentleman Sep 5, 2026
8a43f24
chore(pi): retire rpiv-todo now that gentle-pi ships Gentle Todo
Alan-TheGentleman Sep 5, 2026
d4518aa
Merge pull request #4191 from Gentleman-Programming/chore/drop-rpiv-todo
Alan-TheGentleman Sep 5, 2026
3596f5e
Merge pull request #4184 from ElCaaarnal/docs/readme-v2.6.0
ElCaaarnal Sep 5, 2026
4b473cb
chore(pi): retire pi-subagents-j0k3r now that gentle-pi ships Gentle …
Alan-TheGentleman Sep 5, 2026
9c73c73
Merge pull request #4194 from Gentleman-Programming/chore/drop-pi-sub…
Alan-TheGentleman Sep 5, 2026
e9143c7
fix(review): name the mandated transition in the v2 status root action
Alan-TheGentleman Sep 5, 2026
56a3bfd
fix(review): keep the product's public identifiers out of defect-repo…
Alan-TheGentleman Sep 5, 2026
637e32b
test(review): pin the spelled-out pi handshake in the end-to-end refu…
Alan-TheGentleman Sep 5, 2026
9cd76b7
Merge pull request #4205 from Gentleman-Programming/fix/review-status…
Alan-TheGentleman Sep 5, 2026
b6eed18
Merge pull request #4206 from Gentleman-Programming/fix/review-scrub-…
Alan-TheGentleman Sep 5, 2026
fc4da17
fix(review): keep binary image assets passive in risk classification
Alan-TheGentleman Sep 5, 2026
25385ee
Merge pull request #4207 from Gentleman-Programming/fix/4185-image-as…
Alan-TheGentleman Sep 5, 2026
feec84c
fix(review): stop counting member calls named exec as process boundaries
Alan-TheGentleman Sep 5, 2026
aa96e98
fix(review): resume a committed-only lineage from its frozen selector…
Alan-TheGentleman Sep 5, 2026
a35837d
fix(sdd): drop discarded intended-untracked paths when reconciling a …
Alan-TheGentleman Sep 5, 2026
e2f23b7
Merge pull request #4211 from Gentleman-Programming/fix/2542-process-…
Alan-TheGentleman Sep 5, 2026
0d38b4f
Merge pull request #4213 from Gentleman-Programming/fix/committed-onl…
Alan-TheGentleman Sep 5, 2026
4a62890
Merge pull request #4215 from Gentleman-Programming/fix/4055-absent-i…
Alan-TheGentleman Sep 5, 2026
3a825d9
fix(review): fail closed when a bound STATUS re-enters a lineage from…
Alan-TheGentleman Sep 5, 2026
eba751a
fix(review): bind manifest-less capture inputs through the frozen man…
Alan-TheGentleman Sep 5, 2026
76f66c0
fix(review): harden the Windows git process tree launch and gate it i…
Alan-TheGentleman Sep 5, 2026
138e6e3
Merge pull request #4218 from Gentleman-Programming/fix/windows-git-p…
Alan-TheGentleman Sep 5, 2026
e5ddebc
Merge pull request #4216 from Gentleman-Programming/fix/4023-shared-c…
Alan-TheGentleman Sep 5, 2026
2c043d2
fix(review): declare the frozen manifest binding refusals by design
Alan-TheGentleman Sep 5, 2026
338db62
Merge remote-tracking branch 'origin/main' into fix/review-collect-ma…
Alan-TheGentleman Sep 5, 2026
42ee70b
fix(tui): coordinate install state persistence (#4158)
decode2 Sep 5, 2026
84b0498
fix(review): require a named regression before a failed regression ve…
Alan-TheGentleman Sep 5, 2026
7deabef
fix(review): bind the correction-plan descriptor self-check to the fr…
Alan-TheGentleman Sep 5, 2026
f52233d
test(bench): derive reviewer inspection paths from the published proj…
Alan-TheGentleman Sep 5, 2026
ca98797
feat(sdd): let a maintainer-authorized rescope declare a fresh intend…
Alan-TheGentleman Sep 5, 2026
1f9cbff
test(sdd): list the rescope untracked selection flags in the help con…
Alan-TheGentleman Sep 5, 2026
df1625e
Merge pull request #4220 from Gentleman-Programming/fix/4214-regressi…
Alan-TheGentleman Sep 5, 2026
5ecbfcd
Merge pull request #4221 from Gentleman-Programming/fix/4094-correcti…
Alan-TheGentleman Sep 5, 2026
6677c21
fix(review): name the findings surface after collection and preflight…
Alan-TheGentleman Sep 5, 2026
38030fa
Merge remote-tracking branch 'origin/main' into pr-2930
Alan-TheGentleman Sep 5, 2026
6c3e560
Merge pull request #4217 from Gentleman-Programming/fix/review-collec…
Alan-TheGentleman Sep 5, 2026
90e05f7
fix(review): name the shrink-and-retry route in the validator budget …
Alan-TheGentleman Sep 5, 2026
11f9b29
fixup merge: resolve stray duplicate test declaration
Alan-TheGentleman Sep 5, 2026
d0f8410
Merge remote-tracking branch 'origin/main' into fix/4195-rescope-untr…
Alan-TheGentleman Sep 5, 2026
b517311
fix(sdd): accept --expected-revision on acquire and refund invalidate…
Alan-TheGentleman Sep 5, 2026
8afb99a
Merge remote-tracking branch 'origin/main' into pr-3268
Alan-TheGentleman Sep 5, 2026
4612c30
fix(install): keep shared GGA config while another installed agent st…
Alan-TheGentleman Sep 5, 2026
40bb387
Merge pull request #4222 from Gentleman-Programming/fix/4195-rescope-…
Alan-TheGentleman Sep 5, 2026
6efd851
fix(review): allow same-target recovery of an invalidated current-cha…
Alan-TheGentleman Sep 5, 2026
ce5c4bf
fix(install): keep the apply error when rollback also fails and stop …
Alan-TheGentleman Sep 5, 2026
ca035a4
feat(sdd): compose the canonical OpenSpec spec from a delta natively
Alan-TheGentleman Sep 5, 2026
3d176f1
Merge pull request #4224 from Gentleman-Programming/fix/correction-ph…
Alan-TheGentleman Sep 5, 2026
bcfd59e
feat(sdd): archive composes the canonical spec through gentle-ai sdd-…
Alan-TheGentleman Sep 5, 2026
18953a7
fix(sdd): keep rules.apply and rules.verify across model tiers and na…
Alan-TheGentleman Sep 5, 2026
4338695
Merge pull request #4228 from Gentleman-Programming/fix/3534-uninstal…
Alan-TheGentleman Sep 5, 2026
73915ff
fix(review): scope contracted status by the selected lineage
Alan-TheGentleman Sep 5, 2026
c8719c7
Merge remote-tracking branch 'origin/main' into fix/sdd-attempt-acqui…
Alan-TheGentleman Sep 5, 2026
9a27cd5
fix(review): launch Windows batch shims with a rebuilt command line a…
Alan-TheGentleman Sep 5, 2026
0b82632
fix(sdd): raise the intended-untracked selection cap and name a compl…
Alan-TheGentleman Sep 5, 2026
03505c2
Merge pull request #4233 from Gentleman-Programming/fix/sdd-skill-rul…
Alan-TheGentleman Sep 5, 2026
1960089
test(e2e): assert the skills component no longer pulls SDD
Alan-TheGentleman Sep 5, 2026
bec8c76
Merge pull request #4225 from Gentleman-Programming/fix/sdd-attempt-a…
Alan-TheGentleman Sep 5, 2026
ac780d0
fix(sdd): name the rerun in sdd-archive-compose argument refusals
Alan-TheGentleman Sep 5, 2026
8afa14c
chore(deadcode): baseline the Windows batch command-line helpers
Alan-TheGentleman Sep 5, 2026
7d7f74c
fix(review): decide contracted lineage existence from the authority i…
Alan-TheGentleman Sep 5, 2026
9daa53a
Merge pull request #4236 from Gentleman-Programming/fix/1984-invalida…
Alan-TheGentleman Sep 5, 2026
569e159
Merge pull request #4230 from Gentleman-Programming/fix/install-rollb…
Alan-TheGentleman Sep 5, 2026
8bbe417
Merge pull request #4237 from Gentleman-Programming/fix/4029-untracke…
Alan-TheGentleman Sep 5, 2026
b4d0a6b
Merge pull request #4239 from Gentleman-Programming/fix/1997-status-s…
Alan-TheGentleman Sep 5, 2026
7c3ccca
Merge pull request #4235 from Gentleman-Programming/fix/claude-review…
Alan-TheGentleman Sep 5, 2026
5b30224
fix(sdd): name the gentle-ai sdd-archive-compose rerun in its argumen…
Alan-TheGentleman Sep 5, 2026
b0b4077
Merge pull request #4232 from Gentleman-Programming/fix/4119-archive-…
Alan-TheGentleman Sep 5, 2026
8b421c9
fix(review): report stale managed assets at STATUS time with a typed …
Alan-TheGentleman Sep 6, 2026
5deff16
fix(review): sync published directories, report trace persistence, an…
Alan-TheGentleman Sep 6, 2026
2c25e87
Merge pull request #4244 from Gentleman-Programming/fix/review-author…
Alan-TheGentleman Sep 6, 2026
e7df94b
fix(sdd): report whether max_changed_lines came from the default
Alan-TheGentleman Sep 6, 2026
e9e6be4
Merge pull request #4247 from Gentleman-Programming/fix/sdd-attempt-m…
Alan-TheGentleman Sep 6, 2026
cc7aa46
fix(sdd): key the settle obligation on recorded objective identity an…
Alan-TheGentleman Sep 6, 2026
2283151
fix(review): account for renames when charging changed lines and sizi…
Alan-TheGentleman Sep 6, 2026
bd4601e
Merge pull request #4249 from Gentleman-Programming/fix/sdd-attempt-l…
Alan-TheGentleman Sep 6, 2026
c51ee35
fix(review): ship the Claude refuter agent tool-free
Alan-TheGentleman Sep 6, 2026
38e5a24
fix(review): check git ownership refusal before status contract selec…
Alan-TheGentleman Sep 6, 2026
016ac07
fix(reviewtransaction): classify Windows RAR filesystems and repair p…
Alan-TheGentleman Sep 6, 2026
5179be5
fix(review): name --consent relay in the negotiated start guidance
Alan-TheGentleman Sep 6, 2026
ce7594c
fix(sddstatus): extract edit-authority paths by affirmative inclusion…
Alan-TheGentleman Sep 6, 2026
de2b524
Merge pull request #4251 from Gentleman-Programming/fix/claude-lens-i…
Alan-TheGentleman Sep 6, 2026
147cf34
chore: merge origin/main into fix/managed-assets-outdated-status-stop
Alan-TheGentleman Sep 6, 2026
a02948b
Merge pull request #4252 from Gentleman-Programming/fix/3497-status-o…
Alan-TheGentleman Sep 6, 2026
bdc43bc
Merge pull request #4254 from Gentleman-Programming/fix/review-consen…
Alan-TheGentleman Sep 6, 2026
7aa359b
chore: merge origin/main into fix/sdd-objective-identity
Alan-TheGentleman Sep 6, 2026
3a764dd
chore(deadcode): baseline classifyWindowsAuthorityFilesystem
Alan-TheGentleman Sep 6, 2026
4708549
Merge pull request #4255 from Gentleman-Programming/fix/sdd-status-ed…
Alan-TheGentleman Sep 6, 2026
9accdc5
test(components): regenerate goldens after merging main
Alan-TheGentleman Sep 6, 2026
2eee97c
Merge pull request #4248 from Gentleman-Programming/fix/sdd-attempt-o…
Alan-TheGentleman Sep 6, 2026
d36e0f6
Merge pull request #4253 from Gentleman-Programming/fix/rar-windows-c…
Alan-TheGentleman Sep 6, 2026
3bb526d
fix(reviewtransaction): tolerate git before 2.38 and bound staging ou…
Alan-TheGentleman Sep 6, 2026
d12be2e
fix(review): memoize candidate inspection across the lens-context probe
Alan-TheGentleman Sep 6, 2026
e44c28f
fix(sdd-attempt): accept every sdd-status change name and derive sett…
Alan-TheGentleman Sep 6, 2026
7228883
fix(review): keep the untracked binding through correction and name a…
Alan-TheGentleman Sep 6, 2026
92bec6a
Merge pull request #4257 from Gentleman-Programming/fix/sdd-attempt-c…
Alan-TheGentleman Sep 6, 2026
8b5a1e0
Merge pull request #4258 from Gentleman-Programming/fix/review-status…
Alan-TheGentleman Sep 6, 2026
e63ddd9
Merge pull request #4260 from Gentleman-Programming/fix/review-correc…
Alan-TheGentleman Sep 6, 2026
8b2e140
test(bench): move the stale managed-assets journey to the STATUS-time…
Alan-TheGentleman Sep 6, 2026
638076a
Merge pull request #4259 from Gentleman-Programming/fix/sdd-attempt-c…
Alan-TheGentleman Sep 6, 2026
4ae775c
Merge pull request #4242 from Gentleman-Programming/fix/managed-asset…
Alan-TheGentleman Sep 6, 2026
1820a0c
fix(review): downgrade unverified causal findings per finding and fai…
Alan-TheGentleman Sep 6, 2026
469c2df
chore: merge origin/main into fix/review-admission-per-finding-causality
Alan-TheGentleman Sep 6, 2026
a4a8dba
fix(reviewtransaction): refuse immutable snapshots while a local graf…
Alan-TheGentleman Sep 6, 2026
17038d2
Merge pull request #4261 from Gentleman-Programming/fix/review-admiss…
Alan-TheGentleman Sep 6, 2026
9bbeebb
fix(review): resume committed-range acknowledgement and bind correcti…
Alan-TheGentleman Sep 6, 2026
6cc42b7
Merge pull request #4264 from Gentleman-Programming/fix/review-snapsh…
Alan-TheGentleman Sep 6, 2026
016fa53
Merge pull request #4265 from Gentleman-Programming/fix/review-status…
Alan-TheGentleman Sep 6, 2026
fde7819
fix(providercontractbundle): verify accepts bundles published before …
Alan-TheGentleman Sep 6, 2026
6aaf06a
Merge pull request #4268 from Gentleman-Programming/fix/review-admiss…
Alan-TheGentleman Sep 6, 2026
ccfd0c8
fix(tui): persist OpenCode SDD profiles and isolate default model ass…
Alan-TheGentleman Sep 6, 2026
99cd0a3
fix(review): type the unavailable inspection and unbind materialize f…
Alan-TheGentleman Sep 6, 2026
509c4f1
chore: merge origin/main into fix/review-gate-stash-and-admission
Alan-TheGentleman Sep 6, 2026
4a2c495
Merge pull request #4269 from Gentleman-Programming/fix/tui-opencode-…
Alan-TheGentleman Sep 6, 2026
c13195a
Merge pull request #4270 from Gentleman-Programming/fix/review-gate-s…
Alan-TheGentleman Sep 6, 2026
eca76a2
fix(review): decide validator inconclusiveness from a typed inspectio…
Alan-TheGentleman Sep 6, 2026
80ed7e2
Merge pull request #4273 from Gentleman-Programming/fix/4266-typed-va…
Alan-TheGentleman Sep 6, 2026
8d3ca23
feat(review): let a host declare a lens slot unachievable instead of …
Alan-TheGentleman Sep 6, 2026
8424afb
chore: merge origin/main into fix/3442-lens-slot-unachievable
Alan-TheGentleman Sep 6, 2026
09c2595
test(app): include capture-unachievable in the review facade usage line
Alan-TheGentleman Sep 6, 2026
84d36d4
Merge pull request #4274 from Gentleman-Programming/fix/3442-lens-slo…
Alan-TheGentleman Sep 6, 2026
8d45521
fix(engram): skip direct Claude MCP when plugin is enabled (#4278)
Alan-TheGentleman Sep 6, 2026
1004bdc
fix(review): retry transient Darwin lock creation (#4277)
Alan-TheGentleman Sep 6, 2026
02902e8
test(review): stabilize refuter deadline fixture (#4279)
Alan-TheGentleman Sep 6, 2026
1d660cc
fix(sdd): canonicalize OpenCode session preflight (#3676)
decode2 Sep 6, 2026
0aa545a
fix(installer): make Engram rollback path-independent (#4281)
Alan-TheGentleman Sep 6, 2026
9e96a57
fix(sdd): migrate preserved OpenCode preflight (#4294)
Alan-TheGentleman Sep 7, 2026
74115fd
feat(review): expose the candidate risk assessment as a read-only com…
Alan-TheGentleman Sep 7, 2026
ec8610f
docs(review): document the assess continuation without a literal elli…
Alan-TheGentleman Sep 7, 2026
8ef692e
Merge pull request #4297 from Gentleman-Programming/feat/4295-review-…
Alan-TheGentleman Sep 7, 2026
0040b53
feat(orchestrator): project the RDD-aware, risk-gated verification ga…
Alan-TheGentleman Sep 7, 2026
1d568d9
chore: merge origin/main to pick up review assess
Alan-TheGentleman Sep 7, 2026
2f9e7e8
Merge pull request #4298 from Gentleman-Programming/feat/4296-risk-ga…
Alan-TheGentleman Sep 7, 2026
d543908
fix(sdd): project canonical preflight into Claude workflow (#4299)
Alan-TheGentleman Sep 7, 2026
ef6eef6
fix(sdd): project canonical fallback preflight for first runtime coho…
Alan-TheGentleman Sep 7, 2026
d0e357b
fix(sdd): complete canonical fallback runtime projections (#4303)
Alan-TheGentleman Sep 7, 2026
132d7ca
fix(orchestrator): fall back to the risk tier when the native review …
Alan-TheGentleman Sep 7, 2026
5280a60
Merge pull request #4305 from Gentleman-Programming/fix/verification-…
Alan-TheGentleman Sep 7, 2026
4370a4a
fix(sdd): validate session carriers before owned writes (#4307)
Alan-TheGentleman Sep 7, 2026
a609f88
feat(telemetry): add the gentle-telemetry collector and deploy kit (#…
Alan-TheGentleman Sep 7, 2026
51dcedb
fix(opencode): select managed config authority
pablon Sep 7, 2026
ab89a4a
fix(opencode): add Gentle AI ownership marker to prevent JSON/JSONC d…
pablon Sep 7, 2026
87f910e
feat(telemetry): add opt-out usage telemetry client (#4317)
Alan-TheGentleman Sep 7, 2026
cb76444
fix(telemetry): make the collector installer's Grafana step work on a…
Alan-TheGentleman Sep 7, 2026
81cc8f3
fix(test): regenerate golden file with Gentle AI ownership marker
pablon Sep 7, 2026
3b3ca3d
fix(sdd): avoid unscoped task failure continuations (#4322)
Alan-TheGentleman Sep 7, 2026
7f5676a
fix(opencode): separate managed writes from layered runtime reads
Alan-TheGentleman Sep 7, 2026
bf1249a
Merge main preserving OpenCode ownership and task-result baselines
Alan-TheGentleman Sep 7, 2026
6b70061
Merge contributor golden update preserving author history
Alan-TheGentleman Sep 7, 2026
4e4470b
Merge pull request #4315 from pablon/fix/opencode-effective-config-se…
Alan-TheGentleman Sep 7, 2026
ecf6a56
fix(security): require explicit remote authorization in primary guidance
Alan-TheGentleman Sep 7, 2026
100b125
Merge main before remote authorization verification
Alan-TheGentleman Sep 7, 2026
3c48747
docs: refresh contributors from merged pull request history
ElCaaarnal Sep 7, 2026
6af4087
fix(security): preserve permission order and ask before remote commands
Alan-TheGentleman Sep 7, 2026
074c78f
test(security): require unconditional guidance in theme-only installs
Alan-TheGentleman Sep 7, 2026
33a4e5e
docs: state the full contributor ordering rule
ElCaaarnal Sep 7, 2026
0cbe89a
docs: mark contributor avatars as decorative images
ElCaaarnal Sep 7, 2026
57efc6b
Merge pull request #4328 from ElCaaarnal/docs/contributors-update
ElCaaarnal Sep 7, 2026
e465989
Merge pull request #4327 from Gentleman-Programming/fix/4324-remote-e…
Alan-TheGentleman Sep 8, 2026
ee857b0
fix(security): project remote authorization into managed executors
Alan-TheGentleman Sep 8, 2026
76026d9
Merge remote-tracking branch 'origin/main' into fix/4324-executor-rem…
Alan-TheGentleman Sep 8, 2026
f197fc6
Merge pull request #4344 from Gentleman-Programming/fix/4324-executor…
Alan-TheGentleman Sep 8, 2026
7ef6f50
docs(readme): update release facts for v2.7.0 (#4349)
Alan-TheGentleman Sep 8, 2026
ee24cc1
fix(ci): make the Windows Full Suite green again (#4351)
Alan-TheGentleman Sep 8, 2026
a12e132
fix(ci): run promotion GoReleaser steps with the promoted source iden…
Alan-TheGentleman Sep 8, 2026
76ce25b
test(telemetry): use the test binary as the sender recorder on every …
Alan-TheGentleman Sep 8, 2026
3415adf
fix(telemetry): bind the Apache vhost blocks to the address the host …
Alan-TheGentleman Sep 8, 2026
4816fcc
fix(telemetry): never count CI runs or dev builds (#4362)
Alan-TheGentleman Sep 8, 2026
c86693e
fix(telemetry): run the collector as a static system user (#4368)
Alan-TheGentleman Sep 8, 2026
d2e3443
fix(telemetry): make the Grafana dashboard live and render every pane…
Alan-TheGentleman Sep 8, 2026
c53dce2
feat(pi): add subscription model presets and configuration writers
j0k3r-dev-rgl Sep 9, 2026
1e83c2b
fix(pi): clarify Anthropic preset uses API key
j0k3r-dev-rgl Sep 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .claude/scheduled_tasks.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"sessionId":"19f52d59-7d48-41cc-91fb-c81af53d251a","pid":89965,"acquiredAt":1776005010875}
260 changes: 260 additions & 0 deletions .deadcode-baseline.txt

Large diffs are not rendered by default.

Binary file added .engram/chunks/1ad74530.jsonl.gz
Binary file not shown.
Binary file added .engram/chunks/aaf7a13f.jsonl.gz
Binary file not shown.
Binary file added .engram/chunks/be4ddc87.jsonl.gz
Binary file not shown.
Binary file added .engram/chunks/d21f9e56.jsonl.gz
Binary file not shown.
Binary file added .engram/chunks/fd2ecf8b.jsonl.gz
Binary file not shown.
3 changes: 3 additions & 0 deletions .engram/config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"project_name": "gentle-ai"
}
45 changes: 45 additions & 0 deletions .engram/manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
{
"version": 1,
"chunks": [
{
"id": "1ad74530",
"created_by": "alanbuscaglia",
"created_at": "2026-03-27T11:12:50Z",
"sessions": 165,
"memories": 408,
"prompts": 33
},
{
"id": "fd2ecf8b",
"created_by": "alanbuscaglia",
"created_at": "2026-03-27T22:09:55Z",
"sessions": 0,
"memories": 8,
"prompts": 1
},
{
"id": "be4ddc87",
"created_by": "alanbuscaglia",
"created_at": "2026-03-28T22:27:54Z",
"sessions": 1,
"memories": 14,
"prompts": 1
},
{
"id": "aaf7a13f",
"created_by": "alanbuscaglia",
"created_at": "2026-04-01T22:19:17Z",
"sessions": 7,
"memories": 54,
"prompts": 151
},
{
"id": "d21f9e56",
"created_by": "alanbuscaglia",
"created_at": "2026-05-04T21:43:16Z",
"sessions": 74,
"memories": 278,
"prompts": 395
}
]
}
11 changes: 11 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Normalize line endings to LF for all text files
* text=auto eol=lf

# Explicit overrides for binary files
*.png binary
*.jpg binary
*.jpeg binary
*.gif binary
*.ico binary
*.zip binary
*.tar.gz binary
40 changes: 40 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,19 +39,46 @@ What kind of change does this PR introduce?

---

## πŸ€– AI Assistance

Select exactly one option. Do not check both options.

- [ ] **None** β€” No material AI assistance was used.
- [ ] **Material assistance used** β€” Complete all applicable declaration fields below.

**Tool/model (if known):**

**Material scope:**

**Verification performed:**

Trivial formatting, spelling, minor autocomplete, search/navigation, and trivial, non-substantive mechanical transformations do not need to be itemized. See [AI_POLICY.md](../AI_POLICY.md) for the canonical policy.

---

## πŸ§ͺ Test Plan

**Unit Tests**
```bash
go test ./...
```

**Go Format**
```bash
go run ./internal/gofmtcheck
```

**E2E Tests** (Docker required)
```bash
cd e2e && ./docker-test.sh
```

**Benchmark Validation**

See the [benchmark guide](../bench/README.md). Benchmark validation applies to review-lifecycle, gates, recovery, delivery, benchmark implementation/corpus/classifier, and benchmark-claim changes. For unrelated changes, explain `N/A` in the Test Plan.

- [ ] Unit tests pass (`go test ./...`)
- [ ] Go format passes (`go run ./internal/gofmtcheck`)
- [ ] E2E tests pass (`cd e2e && ./docker-test.sh`)
- [ ] Manually tested locally

Expand All @@ -65,26 +92,39 @@ The following checks run automatically on this PR:

| Check | Status | Description |
|-------|--------|-------------|
| Check PR Cognitive Load | ⏳ | PR should stay within 400 changed lines (`additions + deletions`) or use `size:exception` |
| Check Issue Reference | ⏳ | PR body must contain `Closes/Fixes/Resolves #N` |
| Check Issue Has `status:approved` | ⏳ | Linked issue must have been approved before work began |
| Check PR Has `type:*` Label | ⏳ | Exactly one `type:*` label must be applied |
| Unit Tests | ⏳ | `go test ./...` must pass |
| Go Format | ⏳ | `go run ./internal/gofmtcheck` must pass |
| E2E Tests | ⏳ | `cd e2e && ./docker-test.sh` must pass |

---

## βœ… Contributor Checklist

- [ ] PR is linked to an issue with `status:approved`
- [ ] PR stays within 400 changed lines, or I have requested/obtained maintainer-applied `size:exception` with rationale documented
- [ ] I have added the appropriate `type:*` label to this PR
- [ ] Unit tests pass (`go test ./...`)
- [ ] Go format passes (`go run ./internal/gofmtcheck`)
- [ ] E2E tests pass (`cd e2e && ./docker-test.sh`)
- [ ] Benchmark validation completed, or this change is not applicable to the benchmark (explain why in the Test Plan).
- [ ] I have updated documentation if necessary
- [ ] My commits follow [Conventional Commits](https://www.conventionalcommits.org/) format
- [ ] I understand, reviewed, and take responsibility for the complete submission
- [ ] I selected exactly one AI-assistance option and, if material assistance was used, completed all applicable declaration fields
- [ ] My commits do not include `Co-Authored-By` trailers

---

## πŸ’¬ Notes for Reviewers

<!-- Optional: anything you want reviewers to pay special attention to. -->

For production Go changes in `internal/cli`, `internal/reviewtransaction`, or `internal/sddstatus`:

- [ ] Identify any qualifying security, integrity, admission, repair, or governance guard and challenge its legitimate input population against real-world evidence.
- [ ] Confirm its `guard:population` direction and claim are adjacent and accurate, and that `.guard-population-baseline.txt` changed only when the guard contract intentionally changed.
- [ ] Do not treat a passing declaration/registry check as proof that no qualifying guard was omitted or that the population claim is semantically complete.
28 changes: 28 additions & 0 deletions .github/scripts/parse-linked-issues.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
'use strict';

// Shared parser for closing issue references in PR bodies.
// Single seam used by every pr-check.yml gate that reads linked issues:
// both check-issue-reference and check-issue-approved consume this parse.

const CLOSING_REFERENCE_PATTERN = /(?:closes|fixes|resolves)\s+#(\d+)/gi;

// An HTML comment runs from `<!--` to the next `-->`, or to the end of the
// body when unclosed. The unclosed case matches how GitHub renders Markdown
// (the HTML spec closes an open comment at end of input), so everything after
// an unclosed `<!--` is invisible to reviewers and must not count.
const HTML_COMMENT_PATTERN = /<!--[\s\S]*?(?:-->|$)/g;

// Removes HTML comments so only reviewer-visible text remains.
function stripHtmlComments(body) {
return (body || '').replace(HTML_COMMENT_PATTERN, '');
}

// Returns the linked issue numbers referenced by closing keywords in the
// visible (non-comment) PR body, in order of first appearance.
function parseLinkedIssues(body) {
const visible = stripHtmlComments(body);
const matches = [...visible.matchAll(CLOSING_REFERENCE_PATTERN)];
return matches.map((m) => parseInt(m[1], 10));
}

module.exports = { parseLinkedIssues, stripHtmlComments };
61 changes: 61 additions & 0 deletions .github/scripts/parse-linked-issues.test.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
'use strict';

const { test } = require('node:test');
const assert = require('node:assert/strict');

const { parseLinkedIssues } = require('./parse-linked-issues.cjs');

test('a closing reference that only appears inside an HTML comment is not a linked issue', () => {
const body = [
'## Summary',
'',
'<!--',
'Link the approved issue this PR resolves, e.g.:',
'Closes #42',
'-->',
'',
'Some visible description without any reference.',
].join('\n');

assert.deepEqual(parseLinkedIssues(body), []);
});

test('a real reference outside a comment plus the template example inside one finds exactly the real one', () => {
const body = [
'Closes #1770',
'',
'<!--',
'Example: Closes #42',
'-->',
].join('\n');

assert.deepEqual(parseLinkedIssues(body), [1770]);
});

test('a single-line HTML comment is also ignored', () => {
const body = 'Fixes #7\n<!-- Closes #42 --> trailing visible text';

assert.deepEqual(parseLinkedIssues(body), [7]);
});

test('multiple visible closing references are all preserved, in order', () => {
const body = 'Closes #10\nFixes #11\nResolves #12';

assert.deepEqual(parseLinkedIssues(body), [10, 11, 12]);
});

// Documented behavior: an unclosed `<!--` hides everything through the end of
// the body. This matches how GitHub renders Markdown (the HTML spec closes an
// open comment at end of input), so a reference after an unclosed `<!--` is
// invisible to reviewers and must not count as a linked issue.
test('an unclosed HTML comment hides the rest of the body, matching rendered output', () => {
const body = 'Closes #1770\n<!-- forgot to close this comment\nCloses #42';

assert.deepEqual(parseLinkedIssues(body), [1770]);
});

test('an empty or missing body yields no linked issues', () => {
assert.deepEqual(parseLinkedIssues(''), []);
assert.deepEqual(parseLinkedIssues(null), []);
assert.deepEqual(parseLinkedIssues(undefined), []);
});
Loading