|
|
@@ -1,60 +1,45 @@
|
|
|
import { describe, expect, it } from 'vitest'
|
|
|
-import { findInternalRepositoryReferences } from './verify-public-repository-links.ts'
|
|
|
+import { findUnavailableRepositoryReferences } from './verify-public-repository-links.ts'
|
|
|
|
|
|
-describe('public repository link policy', () => {
|
|
|
- it('rejects encoded and case-varied internal identities without blocking public repositories', () => {
|
|
|
- const internalOwner = ['deepseek', 'harness'].join('-')
|
|
|
- const internalRepository = [internalOwner, internalOwner].join('/')
|
|
|
- const encodedRepository = internalRepository.replaceAll('-', '%2D').replace('/', '%2F')
|
|
|
- const htmlEncodedRepository = internalRepository.replace('/', '/')
|
|
|
- const jsonEscapedRepository = internalRepository.replace('/', '\\/')
|
|
|
- const unicodeEscapedRepository = internalRepository.replace('/', String.raw`\u002f`)
|
|
|
+describe('repository link policy', () => {
|
|
|
+ it('rejects encoded and case-varied references to the unavailable repository', () => {
|
|
|
+ const unavailableOwner = ['deepseek', 'ai'].join('-')
|
|
|
+ const unavailableName = ['deepseek', 'harness', 'sdk'].join('-')
|
|
|
+ const unavailableRepository = `${unavailableOwner}/${unavailableName}`
|
|
|
+ const encodedRepository = unavailableRepository.replaceAll('-', '%2D').replace('/', '%2F')
|
|
|
+ const htmlEncodedRepository = unavailableRepository.replace('/', '/')
|
|
|
+ const jsonEscapedRepository = unavailableRepository.replace('/', '\\/')
|
|
|
+ const unicodeEscapedRepository = unavailableRepository.replace('/', String.raw`\u002f`)
|
|
|
const source = [
|
|
|
- 'https://github.com/deepseek-ai/deepseek-harness-sdk',
|
|
|
- `https://github.com/${internalOwner}/cordis`,
|
|
|
- `https://github.com/${internalRepository.toUpperCase()}/issues/1`,
|
|
|
+ 'https://github.com/deepseek-ai/deepseek-harness',
|
|
|
+ `https://github.com/${unavailableRepository.toUpperCase()}/issues/1`,
|
|
|
`https://github.com/${encodedRepository}/issues/2`,
|
|
|
`https://github.com/${htmlEncodedRepository}/issues/3`,
|
|
|
`"https:\\/\\/github.com\\/${jsonEscapedRepository}\\/issues\\/4"`,
|
|
|
`"https:\\/\\/github.com\\/${unicodeEscapedRepository}\\/issues\\/5"`,
|
|
|
- `${internalOwner.toUpperCase()}#6`,
|
|
|
+ `https://github.com/${unavailableOwner}/cordis`,
|
|
|
+ `https://github.com/example/${unavailableName}`,
|
|
|
].join('\n')
|
|
|
|
|
|
- expect(findInternalRepositoryReferences('subject.md', source)).toEqual([
|
|
|
+ expect(findUnavailableRepositoryReferences('subject.md', source)).toEqual([
|
|
|
+ { file: 'subject.md', line: 2 },
|
|
|
{ file: 'subject.md', line: 3 },
|
|
|
{ file: 'subject.md', line: 4 },
|
|
|
{ file: 'subject.md', line: 5 },
|
|
|
{ file: 'subject.md', line: 6 },
|
|
|
- { file: 'subject.md', line: 7 },
|
|
|
- { file: 'subject.md', line: 8 },
|
|
|
])
|
|
|
})
|
|
|
|
|
|
- it('allows only the exact audited trusted-publishing repository declarations', () => {
|
|
|
- const internalOwner = ['deepseek', 'harness'].join('-')
|
|
|
- const internalRepository = [internalOwner, internalOwner].join('/')
|
|
|
- const repositoryUrl = `git+https://github.com/${internalRepository}.git`
|
|
|
- const manifestLine = ` "url": "${repositoryUrl}",`
|
|
|
- const constraintLine = `const repositoryUrl = '${repositoryUrl}'`
|
|
|
- const allowedDeclarations = [
|
|
|
- ['native/landlock-run/packages/entry/package.json', manifestLine],
|
|
|
- ['native/landlock-run/packages/linux-arm64/package.json', manifestLine],
|
|
|
- ['native/landlock-run/packages/linux-x64/package.json', manifestLine],
|
|
|
- ['scripts/check-workspace-constraints.ts', constraintLine],
|
|
|
- ] as const
|
|
|
+ it('preserves frozen archived Agent Notes', () => {
|
|
|
+ const unavailableRepository = ['deepseek-ai', 'deepseek-harness-sdk'].join('/')
|
|
|
|
|
|
- for (const [file, source] of allowedDeclarations) {
|
|
|
- expect(findInternalRepositoryReferences(file, source)).toEqual([])
|
|
|
- }
|
|
|
-
|
|
|
- const wrongFile = 'native/landlock-run/package.json'
|
|
|
- expect(findInternalRepositoryReferences(wrongFile, manifestLine)).toEqual([{ file: wrongFile, line: 1 }])
|
|
|
-
|
|
|
- const manifestFile = 'native/landlock-run/packages/entry/package.json'
|
|
|
- const wrongField = ` "homepage": "${repositoryUrl}",`
|
|
|
- expect(findInternalRepositoryReferences(manifestFile, wrongField)).toEqual([{ file: manifestFile, line: 1 }])
|
|
|
-
|
|
|
- const encodedLine = manifestLine.replace('github.com/', 'github.com\\/')
|
|
|
- expect(findInternalRepositoryReferences(manifestFile, encodedLine)).toEqual([{ file: manifestFile, line: 1 }])
|
|
|
+ expect(findUnavailableRepositoryReferences(
|
|
|
+ '.agents/notes/archived/process/historical-record.md',
|
|
|
+ `https://github.com/${unavailableRepository}`,
|
|
|
+ )).toEqual([])
|
|
|
+ expect(findUnavailableRepositoryReferences(
|
|
|
+ '.agents/notes/implemented/process/active-record.md',
|
|
|
+ `https://github.com/${unavailableRepository}`,
|
|
|
+ )).toEqual([{ file: '.agents/notes/implemented/process/active-record.md', line: 1 }])
|
|
|
})
|
|
|
})
|